Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/exanubes/file-handling-using-s3
This example project serves as an exploration of Amazon Simple Storage Service (S3) capabilities, showcasing an implementation of some key features for developers. The project focuses on various aspects, including upload and download functionalities using signed URLs, bucket versioning, archiving, retrieval, and multipart uploads.
https://github.com/exanubes/file-handling-using-s3
aws aws-s3 s3-archive s3-download s3-glacier s3-lifecycle-policy s3-multipart-upload s3-uploads s3-versioning serverless signed-urls sst sveltekit turso
Last synced: about 22 hours ago
JSON representation
This example project serves as an exploration of Amazon Simple Storage Service (S3) capabilities, showcasing an implementation of some key features for developers. The project focuses on various aspects, including upload and download functionalities using signed URLs, bucket versioning, archiving, retrieval, and multipart uploads.
- Host: GitHub
- URL: https://github.com/exanubes/file-handling-using-s3
- Owner: exanubes
- Created: 2023-08-23T14:38:20.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-02-08T19:55:51.000Z (11 months ago)
- Last Synced: 2024-04-17T02:33:09.115Z (9 months ago)
- Topics: aws, aws-s3, s3-archive, s3-download, s3-glacier, s3-lifecycle-policy, s3-multipart-upload, s3-uploads, s3-versioning, serverless, signed-urls, sst, sveltekit, turso
- Language: TypeScript
- Homepage: https://exanubes.com/blog/upload-and-download-files-using-signed-urls
- Size: 897 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# File handling with s3
This example project serves as an exploration of Amazon Simple Storage Service (S3) capabilities, showcasing an implementation of some key features for developers. The project focuses on various aspects, including upload and download functionalities using signed URLs, bucket versioning, archiving, retrieval, and multipart uploads.
The project uses [SST](https://sst.dev) for deploying AWS Resources and [Turso](https://turso.tech) for storing data in a SQLite Database.
UI is built with [SvelteKit](https://kit.svelte.dev/) but can be easily replaced with a technology of your choosing. [React Form](https://react.email/) is used for
composing a HTML Email.**TOC:**
1. [Signed URLs for Secure Uploads and Downloads](#signed-urls-for-secure-uploads-and-downloads)
2. [Bucket Versioning](#bucket-versioning)
3. [Archiving and Retrieval](#archiving-and-retrieval)
4. [Multipart Uploads](#multipart-uploads)## Signed URLs for Secure Uploads and Downloads
Demonstrates the implementation of AWS S3 signed URLs to securely upload and download files. This ensures that only authorized users with the correct credentials can perform these actions.
[🎥 Video](https://youtu.be/1nmJldXxgGY)
[✍️ Article](https://exanubes.com/blog/upload-and-download-files-using-signed-urls)## Bucket Versioning
Illustrates the benefits of enabling bucket versioning in AWS S3, allowing for the management of different versions of objects within a bucket. This feature enhances data protection and provides a mechanism for easy rollback in case of unintended modifications.
[🎥 Video](https://youtu.be/pS3OD_G7LxQ)
[✍️ Article](https://exanubes.com/blog/versioning-documents-in-amazon-s3)## Archiving and Retrieval
Explores the archival capabilities of AWS S3, demonstrating how to seamlessly transition objects between storage classes to optimize costs while ensuring efficient data retrieval when needed.
[🎥 Video](https://youtu.be/Bqegwv7DDas)
[✍️ Article](https://exanubes.com/blog/s3-lifecycle-rules-archiving-and-retrieval)## Multipart Uploads
Provides a detailed guide on leveraging multipart uploads for large file transfers to AWS S3. This feature enhances upload reliability and performance by breaking files into smaller parts, especially useful for handling large datasets.
[🎥 Video](https://youtu.be/U2SVFyU_7Co)
[✍️ Article](https://exanubes.com/blog/s3-multipart-upload-with-signed-urls)## Getting Started
- Configure AWS credentials using the AWS CLI
- Install dependencies with `npm install` (assuming Node.js is installed).
- Deploy infrastructure to aws with `npx sst dev`
- Launch app with `npm run dev`Feel free to use and extend this project as a foundation for integrating AWS S3 features into your applications. If you encounter any issues or have suggestions for improvements, please open an issue or submit a pull request. Happy coding!