Introduction
Shotstash is a self-hosted media cloud for creators. Your footage, your hardware, your cloud.
Shotstash turns the PC, NAS or spare drive you already own into a media cloud built for work: projects and sections instead of a flat photo stream, a viewer that respects portrait video, resumable chunked uploads straight from the browser, share links you can hand to a client, and roles for the people you work with.
It is MIT licensed. There is no paid tier and nothing is held back: every feature described here is in the repository.
Want the 30-second version first? Watch the trailer.
What you get
- Projects, sections and files, with grid and list views, sort and search.
- Uploads that survive bad Wi-Fi: parallel parts with retries, resumable after a reload, checksum-verified, with duplicate detection per project.
- Storage on your terms: a local disk, a NAS mount or any S3-compatible bucket.
- A viewer for photos and video that follows the file's real aspect ratio.
- Share links per file, section or project, public or protected by an access code, with a clean client page and ZIP download.
- Roles: super admin, admin, crew, editor and viewer, with account approval.
- An API: GraphQL over HTTP and WebSocket, plus REST routes for uploads, downloads, sharing, the worker pipeline and health.
- Bring your own AI: a small job contract so any program that speaks HTTP can make proxies, transcripts or anything else.
Where to go next
Quick start
Install with Docker Compose and upload your first file in about ten minutes.
Configuration
Every setting, generated from the code.
Networking
Reverse proxies, Tailscale and Cloudflare Tunnel.
Backup and restore
The procedure CI rehearses on every change.
API reference
GraphQL and REST, generated from the committed schema files.
User guide
For the people who upload, review and share.
Status
Shotstash is pre-release. Databases created before version 1.0.0 may have to be started over on an upgrade; the upgrade guide says when. Follow the changelog for releases.