Filestash
Web-based file manager and document gateway
Filestash is an open-source web file manager that connects to many storage backends such as S3, SFTP, FTP, and WebDAV. It provides document viewing, organization, and editing through a single interface.
Key features
- Connects to many storage backends
- Document and media viewers
- Office document editing
- Lightweight single binary
Pros & cons
Strengths
- Unifies access to many backends
- Easy deployment
Trade-offs
- Not a full archival DMS
- Some features require a license key
Filestash replaces
Last reviewed Aug 26, 2026 · 766 words
Filestash stores nothing. It is a single Go binary that puts a fast web file manager, previewers, and an office editor in front of storage you already run: an S3 bucket, an SFTP server, a WebDAV share, an FTP host, a Git repository, a Samba share. That distinction is why it exists alongside Nextcloud rather than competing with it. Nextcloud wants to own your files and sync them; Filestash wants to open the files where they already sit and get out of the way. With 14,549 stars, an AGPL-3.0 license, and a 256 MB footprint, it is the tool I reach for whenever the question is "how do I give someone a browser window into that bucket".
One container, one admin page
services:
filestash:
image: machines/filestash
ports:
- "8334:8334"
volumes:
- ./filestash-state:/app/data/state
restart: unless-stopped
Open http://host:8334/admin, set an admin password, and the rest is clicking. The admin console is where you enable backends, set the site name, wire up an identity provider, and toggle plugins; everything it writes goes into state/config/config.json in that volume, which is the only thing you need to back up. Without further configuration, the login page shows a backend picker where each user types their own credentials for S3, SFTP, and so on. That mode is fine for a personal gateway. For a shared deployment, the admin console lets you pre-fill a backend's connection details and hide the picker, so users see a login and a file tree and nothing else.
The backends that make it useful
The S3 connector is the one I use most: point it at MinIO or a cloud bucket, and you get drag-and-drop uploads, folder creation, and previews on an object store that otherwise only speaks API. SFTP turns any Linux box with an SSH daemon into a shareable web drive with zero server-side install. WebDAV connects to Nextcloud or Seafile shares, which sounds circular until you want one login page across three storage systems. The Git backend is a nice oddity: it checks out a repository, lets you edit files in the browser, and commits on save. Access to backends can be gated per user through OpenID Connect or a simple htpasswd-style list, and the /api endpoints let scripts do what the UI does.
Viewers and the office editor
Filestash previews images, video, audio, PDFs, Markdown, and code (with syntax highlighting and an editor) natively. Office formats are handled by pairing it with an ONLYOFFICE Docs container; the official compose example includes one, and once connected, opening a .docx or .xlsx gives you the full editor inside Filestash's window with saves going back to the original backend. Budget another 2 GB of RAM for ONLYOFFICE if you go that route; Filestash itself stays tiny. There is also Chromecast support for media, which is more useful than it sounds on a NAS full of family video.
What it is not
It is not a sync client: nothing syncs to your laptop, and there is no desktop or mobile app. It is not a document management system: no OCR, no tagging, no retention rules, none of what Paperless-ngx does, despite living in the document management category. And it is not entirely free of commercial gating: a handful of plugins and some enterprise features (branding, certain auth integrations) require a license key from the project, so check the current plugin list before promising a feature. For a plain local-disk manager with fewer moving parts, File Browser is lighter still; for sync, look at the file sync category instead.
Two gotchas
First, if you run Filestash behind a reverse proxy with a path prefix, set the base URL in the admin console or asset links break. Second, browser uploads of multi-gigabyte files go through the container, so put it on the same network segment as the backend and raise the proxy's request body limit; Caddy and Traefik both default to values that will cut a large upload short.
What I'd do
Filestash in front of MinIO for the object store and SFTP for the two Linux boxes, OIDC login through my existing identity provider, backend picker hidden, ONLYOFFICE attached only if someone genuinely edits spreadsheets in the browser. Back up the one config file. Keep Nextcloud for sync if you need sync; keep Filestash for the window. Together they cost less than either does trying to be both.
Compare Filestash
5 head-to-head comparisons.
Similar document management apps
Stirling PDF
Document ManagementPowerful locally hosted web-based PDF toolkit
Replaces Adobe Acrobat, Smallpdf
Paperless-ngx
Document ManagementDocument management for scanning, indexing and archiving
Replaces Evernote, DEVONthink
OCRmyPDF
Document ManagementAdd a searchable OCR text layer to scanned PDFs
Replaces Adobe Acrobat
DocuSeal
Document ManagementOpen-source document signing and e-signature platform
Replaces DocuSign, HelloSign
BentoPDF
Document ManagementPowerful, privacy-first, client-side PDF toolkit that allows you
Replaces Adobe Acrobat
Documenso
Document ManagementThe open-source DocuSign alternative
Replaces DocuSign, Adobe Sign