Just Save a File, It's Easy, Right?!
summary
Builds a Vapor API deployed to Heroku with Postgres and tries to add user photos but runs into concrete failures: Heroku has an ephemeral filesystem so saving to disk is unreliable, so files go to S3 via the Bucketeer add-on (Bucketeer adds S3 creds to the app). Uses pre-signed URLs and the Soto Swift AWS SDK but hits issues: S3 blocks public objects by default, CloudFront gets involved, and many Soto examples use old non-async patterns. The photo feature remains unfinished in beta.
AI-written summary · about
chapters (10)
- 0:00Introduction and speaker background
- 1:05App idea and domain purchase
- 3:10Photo feature and initial assumptions
- 4:36Saving photos and Heroku limitations
- 6:21Using Bucketeer and S3 for storage
- 7:24Pre-signed URLs for uploads
- 8:25Downloading photos and security concerns
- 9:53Challenges with AWS and CloudFront
- 10:34Finding tutorials and resources
- 12:47Community growth and contribution
related talks
39mWhy storing files for the web is not as straightforward as you might think.
46mHighly Scalable Image Storage with AWS Serverless
26mLessons learned from Re-architecting an API platform
30mYour own 'Images as a Service'
10mTwo Years Later, Loving and Hati
30mMultimedia file management in web applications
32mLightning Fast Deployment of Your Rails-backed JavaScript app
44mMillions of Apps: What we've learned
