User Guide¶
The user guide covers every feature of filestore in depth. If you haven't already, start with the Quick Start.
Topics¶
| Guide | Description |
|---|---|
| Storage Backends | Local, memory, S3, GCS, and Azure — configuration and behavior |
| Validation | File size limits, extension filters, content-type checks |
| Callbacks | Dynamic filenames, destinations, filters, and metadata |
| Multi-Field Uploads | Handling multiple upload fields per request |
| Reading Results | Working with Store and FileData objects |
| Error Handling | Exception hierarchy and graceful failure patterns |
Architecture Overview¶
graph TD
A["HTTP Request"] --> B["FastAPI Dependency"]
B --> C["FileStore.__call__()"]
C --> D["Parse Form Data"]
D --> E["For each FileField"]
E --> F["Validate Types & Size"]
F --> G["Run Filters"]
G --> H["Resolve Filename"]
H --> I["Resolve Metadata"]
I --> J["StorageEngine.upload()"]
J --> K["FileData Result"]
K --> L["Build Store"]
L --> M["Return to Endpoint"]
Every step in the pipeline is configurable through the Config dictionary or callbacks.