It started, as side projects do, with another side project.
I'd been playing with Hermes Agent and watching it produce things — reports, generated images, scraped CSVs, scratch notes.
Useful stuff. And every time, the same nagging question: where does this go?
The desktop wasn't going to cut it. Neither was a folder I'd forget about by Tuesday. I wanted somewhere I could throw anything at and trust would still be there in a month — organized, addressable, mine. What I actually wanted was an S3 bucket on my own hardware.
Finding Garage
A bit of searching led me to Garage — a self-hosted, S3-compatible object store from Deuxfleurs. Lightweight, replicated, runs happily on a couple of cheap boxes. Exactly the shape I wanted.
I got it running. It worked. And then I hit the part nobody talks about: how do you actually look at your stuff?
The official path is the garage CLI plus something like mc or aws s3. Fine — but a small wall of friction every time I just wanted to glance at what the agent dumped overnight.
I didn't want to aws s3 ls my way to an answer. I wanted to open a tab.
Door
So I built one. A web UI in front of Garage with a low, specific bar:
- Open a tab, see my buckets.
- Browse files like folders.
- Drag-and-drop upload.
- Click an image, see the image.
- Click a report, read it.
- Manage keys, permissions, and the cluster from the same place.
I called it Door. Your garage door.
Still very early and actively in development — this started as tooling for my own side projects and agent workflows. But it's already become one of those tabs I keep open all day.
Garage Admin UI
A web-based administration interface for Garage — a self-hosted S3-compatible distributed object store.
Built with React 19, Vite 6, shadcn/ui, TanStack Query, and the Garage v2 admin API.
Features
Cluster
- Live node status, health tiles, per-node storage bars
- Aggregate storage summary (total / used / free with color-coded progress bar)
Layout
- View current node roles and staged changes
- Apply, revert, or preview layout changes; full layout history
Buckets
- List, create, and delete buckets
- Manage key permissions per bucket (grant/revoke read, write, owner per key)
- Configure S3 CORS rules with one click
Bucket Browser
- Folder navigation with breadcrumb trail
- Drag-and-drop file upload with per-file progress bars (multipart for files > 5 MB)
- Paginated object listing (100 items per page, continuation token navigation)
- Multi-select files with bulk delete
- Create folders
- Download and delete individual files
- In-browser file preview — images, PDF, text, JSON, and code files without downloading
Top comments (0)