This repo showcases a simple, concrete example of how to upload files to Amazon S3 using Laravel.
Using S3 offers the advantage of offloading file storage to a dedicated service, which can be more cost-effective and scalable than storing files on your own server.
This project utilises Uppy, a JavaScript file uploader that easily integrates into your frontend application. For handling file uploads on the backend, this project emulates the Uppy Companion server in Laravel.
Credit goes to TappNetwork for providing the original example of this implementation.
The project uses React for the frontend and Laravel for the backend. Laravel Sanctum is used for authentication.
To showcase file uploads in this project, we have created two examples:
- Photo Album - Upload photos to an album.
- Playground.
Both are accessible from the main page of application when logged in.
To get started, follow the guides below:
- Add drivers for different upload types
- Add unit tests
- Add docker support
- Enable direct uploads
Contributions are welcome! Please feel free to submit a Pull Request.
This project is open-sourced software licensed under the MIT license.