Allow users to upload and remove their profile pictures.
A couple steps to fulfill this feature requirement here. And I'd like this done in separate PRs.
- Setup S3 storage: create a bucket in AWS & connect it in our codebase(We'll ultimately be using a bucket setup from the club, but I think there's merit in going through the flow of AWS and navigating how to setup a bucket on the platform yourself, so we'll swap this out with the club's bucket after this ticket). This includes the upload & delete funcs.
- create endpoints for uploading & removing profile photos to the user object
- create a basic frontend at the route: /flows/pfp to display and allow for pfp upload & removal of a hard coded user for now
Suggestions:
- Look into the flow of how presigned URLs work
- Ensure that uploads/retrieval are scalable (aka don't just tailor this to pfp), consider that other places in our app will need image uploads/retrieval as well
- consider existing patterns for how storage is setup - trace through the flow of how the server initialize our storage / services
- you should probably update env.sample if you've updated your .env
- Testing is optional here, but I highly encourage using a mock to test at the very least
Allow users to upload and remove their profile pictures.
A couple steps to fulfill this feature requirement here. And I'd like this done in separate PRs.
Suggestions: