- Efficient upload / download
- Very low RAM usage
- Great for providing large files without storing them in the filesystem
- Can be used to efficiently stream video files (skipping in the timeline will result in a partial download)
- Accepts
range
header to support partial downloads
Fastify Adapter
for performanceMongoose
to connect to MongoDBMongoDB GridFS
for streaming chunked files to and from Mongo DBfastify-multipart
to parse Multipart forms
docker-compose up -d
- Swagger documentation can be found at
http://localhost:3101/api/
- Start a MongoDB instance with default configuration
- Use
npm start
to compile and start the server - Swagger documentation can be found at
http://localhost:3101/api/
- Upload a file:
POST
tohttp://localhost:3101/
as multipart/form-data withfile
field - Download an uploaded file:
GET
tohttp://localhost:3101/<id>
GET
tohttp://localhost:3101
for list of uploaded videos- More information can be found in the Swagger Documentation