MinIO's community edition has been trimming features and its licensing direction has grown less predictable. Garage (AGPL, purpose-built for self-hosting) is a drop-in S3-compatible replacement — no changes needed to backend/app/minio_client.py, which talks to the S3 API generically. Deployed independently from the app stack (storage/docker-compose.yml), same separation MinIO had. Single-node config (replication_factor = 1) matching this project's learning/small-team scope. init-garage.sh handles the one-time layout assignment + bucket creation Garage requires that MinIO didn't (MinIO auto-creates buckets via API; Garage needs an explicit `garage bucket create` step). |
||
|---|---|---|
| backend | ||
| frontend | ||
| storage | ||
| .gitignore | ||
| docker-compose.yml | ||