project: MoodleNet
summary: Users should be able to upload images as avatars, profile headers, and to represent communities/collections
description: See story:

1.summary: Explore ways to store resized images (rather than display them directly from remote sites)
description: Theres a few ways to do this, we should explore what they are, list them out, and then choose the best option. Some libs to check out :
2.summary: Design UI components for choosing image via upload
description: Design UI components for choosing image via upload (as well as via URL) See
3.summary: Create endpoints for user image uploads
description: Create endpoints for user image uploads, including: Avatar Profile header Community header Collection header Resource description
4.summary: Allow admins to connect various storage options to their MoodleNet instance
description: Allow admins to connect various storage options for files uploaded or stored on to their MoodleNet instance. The obvious choice is Amazon, but they should also be able to choose pretty much anything else, too, for example: Local Filesystem Storage AWS S3 (and other providers with a compatible API, such as Scaleway| Rackspace OVH Google Cloud Storage Microsoft Azure Storage
5.summary: External images should be proxied
description: This applies for e.g. to avatars, profile background pictures, and all community/collection/resource images. See this code for examples:
6.summary: Design image upload modals
description: Wireframe image uploading using Balsamiq (or similar)
7.summary: External images should be thumbnail-resized by the MN server
description: This applies for e.g. to avatars, profile background pictures, and all community/collection/resource images. For the resizing, the client should be able to specify the size as part of the GraphQL request parameters. And this tutorial about making thumbnails:

Below is an instruction that describes a task, paired with an input that provides an epic with this format: 
"project": "Name of the project" 
"summary": "Summary of the epic user story" 
"description": "Description of the epic user story". Write a response that appropriately completes the request.### Instruction:
Break this epic user story into smaller tasks to help the developers understand the epic better, you can divide this epic into as much as you want depending on the complexity of the epic.
### Input:
project: MoodleNet
summary: Users should be able to upload images as avatars, profile headers, and to represent communities/collections
description: See story:

### Response:
1.summary: Explore ways to store resized images (rather than display them directly from remote sites)
description: Theres a few ways to do this, we should explore what they are, list them out, and then choose the best option. Some libs to check out :
2.summary: Design UI components for choosing image via upload
description: Design UI components for choosing image via upload (as well as via URL) See
3.summary: Create endpoints for user image uploads
description: Create endpoints for user image uploads, including: Avatar Profile header Community header Collection header Resource description
4.summary: Allow admins to connect various storage options to their MoodleNet instance
description: Allow admins to connect various storage options for files uploaded or stored on to their MoodleNet instance. The obvious choice is Amazon, but they should also be able to choose pretty much anything else, too, for example: Local Filesystem Storage AWS S3 (and other providers with a compatible API, such as Scaleway| Rackspace OVH Google Cloud Storage Microsoft Azure Storage
5.summary: External images should be proxied
description: This applies for e.g. to avatars, profile background pictures, and all community/collection/resource images. See this code for examples:
6.summary: Design image upload modals
description: Wireframe image uploading using Balsamiq (or similar)
7.summary: External images should be thumbnail-resized by the MN server
description: This applies for e.g. to avatars, profile background pictures, and all community/collection/resource images. For the resizing, the client should be able to specify the size as part of the GraphQL request parameters. And this tutorial about making thumbnails:
