stash
An organizer for your porn, written in Go. Documentation: https://docs.stashapp.cc
A self-hosted web app for organizing a local video and image collection, scan folders, tag content, and browse everything through a web browser on your own server.
Stash is a self-hosted web application written in Go that helps you organize and browse a local video and image collection. You run it on your own computer or server, and then access it through a web browser at a local address. The project describes itself as a media organizer for adult content, though the underlying software works with any video or image files.
The core workflow starts with pointing Stash at your media folders. It scans those directories and builds a searchable database of everything it finds. From there you can tag content, browse by performer, studio, or tag, and see statistics about your collection. The interface runs in the browser and does not require any external accounts or cloud services.
To enrich your library with metadata such as performer names, descriptions, and cover images, Stash connects to several community-run databases. The main one is StashDB, a crowd-sourced repository of scene and studio information maintained by the Stash team. Community-contributed scrapers can also pull data from a wide range of other websites. These scrapers are installable directly from within the app.
Stash is available as pre-built downloads for Windows, macOS, and Linux, and as a Docker image. It requires FFmpeg for video processing, which it can download automatically if you do not already have it. The app is available in 32 languages through a community translation effort.
The project is open-source and funded through GitHub Sponsors and Open Collective. Documentation lives at a separate site and covers installation, setup, and the scraping workflow in more detail than the README alone.
Where it fits
- Scan a large local video folder and build a searchable, tagged library you can browse in any browser.
- Automatically pull performer names, descriptions, and cover images from StashDB and community scrapers.
- Run Stash in Docker on a home server so multiple devices can access the library over your local network.
- Install community-contributed scrapers from within the app to pull metadata from additional websites.