Description
Currently, Serinus provides a great built-in way to handle multipart/form-data requests and access files via UploadedFile. However, the built-in convenience methods (like toFile(path)) are limited to saving the file to the local filesystem.
Modern applications almost exclusively rely on cloud storage (AWS S3, Cloudflare R2, MinIO, Google Cloud Storage, etc.) for handling user-uploaded assets. While developers can currently manually read the stream from UploadedFile and pipe it to an external S3 SDK, this adds boilerplate and friction to a common use case.
I propose adding an official way to stream uploaded files directly to S3-compatible storage, either by extending the core with extensible interface.
Description
Currently, Serinus provides a great built-in way to handle multipart/form-data requests and access files via UploadedFile. However, the built-in convenience methods (like toFile(path)) are limited to saving the file to the local filesystem.
Modern applications almost exclusively rely on cloud storage (AWS S3, Cloudflare R2, MinIO, Google Cloud Storage, etc.) for handling user-uploaded assets. While developers can currently manually read the stream from UploadedFile and pipe it to an external S3 SDK, this adds boilerplate and friction to a common use case.
I propose adding an official way to stream uploaded files directly to S3-compatible storage, either by extending the core with extensible interface.