One Docker Command, 200+ File Tools, Zero Cloud Uploads
You've probably got a folder somewhere full of files that need work. A PDF that needs merging, a video that needs trimming, an image that needs compressing, an audio clip that needs transcribing. And right now, doing all of that means bouncing between five different web services, uploading your files to servers you don't control, and hoping nobody's looking at your data. SnapOtter is a self-hosted answer to that problem: a single Docker stack that bundles over 200 file-processing tools across images, video, audio, PDFs, and documents, and keeps every file on hardware you own.
What It Does
SnapOtter is an open-source, self-hosted file-processing suite. You run it as a container, open it in a browser, and get access to a large catalog of tools for five file types. It's not just a UI, either — the README describes three ways to use it: a web interface, a REST API, and pipelines for chaining operations together.
The tool breakdown is specific. There are 112 image tools (resize, crop, compress, watermark, vectorize, GIF utilities, duplicate detection, passport photos, and format converters like HEIC to JPG), 57 video tools (convert, trim, merge, stabilize, burn subtitles, video-to-GIF), 27 audio tools (normalize, pitch shift, silence removal, noise reduction), 35 PDF tools (merge, split, redact, sign, OCR), and 23 file tools for formats like CSV, JSON, XML, and YAML. The image side alone claims support for 55+ input formats, including 23 camera RAW formats.
The pitch is straightforward: it's positioned as a replacement for CloudConvert, Smallpdf, TinyPNG, TinyWow, and Otter.ai, all rolled into one stack you host yourself. The README also notes local AI capabilities for things like OCR and transcription, which is where the Otter.ai comparison comes in. The project is AGPLv3 licensed and has an OpenSSF Best Practices badge.
Why It's Cool
-
The consolidation is the real feature. If you've ever maintained separate services for PDFs and conversions, you know the pain. The README makes a pointed comparison: Stirling-PDF stops at PDFs, ConvertX stops at conversions, SnapOtter covers all five modalities. One stack, one port, one data volume.
-
The install is genuinely one command. No Compose file required to get started, no dependency wrangling. You run a single
docker run, open a browser, and log in with the default credentials. That's a low enough barrier that you can try it in the time it takes to make coffee. -
Three interfaces for three kinds of users. A UI is fine for one-off jobs, but if you're processing files programmatically, the REST API matters more. And pipelines — chaining operations together — suggests you can build repeatable workflows rather than clicking through tools one at a time.
-
The breadth is unusual. Dedicated format converters (MOV to MP4, M4A to MP3, PDF to TIFF) sit alongside the general-purpose tools, which means you're not hunting for the right generic tool and configuring it yourself. There's also a multi-tool PDF page editor and CSV merge/split, which are the kind of small utilities you don't think about until you need them.
-
Your files stay put. For anyone handling sensitive documents — legal, medical, internal business files — the "never leaves your network" promise is the whole point. No upload wait times, no third-party retention policies to read.
How to Try It
The quickest path is a single Docker command:
docker run -d --name SnapOtter -p 1349:1349 -v SnapOtter-data:/data snapotter/snapotter:latest
Then open http://localhost:1349 and log in with admin / admin.
A few practical notes before you dive in. Change those default credentials — the README doesn't say it explicitly, but running anything on your network with admin/admin is asking for trouble. The volume mount (-v SnapOtter-data:/data) is what persists your data, so keep it. And if you want the production Compose stack or NVIDIA GPU acceleration, the README points to a Deployment section with configuration details.
There's also a live demo at demo.snapotter.com if you'd rather kick the tires before installing anything. The images are on Docker Hub and GHCR, and the source lives at github.com/snapotter-hq/snapotter.
Final Thoughts
SnapOtter is aimed at people who process files regularly and would rather not route them through someone else's servers — homelabbers, small teams, anyone with compliance constraints or just a healthy suspicion of upload buttons. The scope is ambitious, and whether all 200+ tools hold up equally well is something you'll only know by testing the ones you care about. But the design decisions — one container, three interfaces, local-only processing — are sensible, and the install is about as frictionless as self-hosting gets. If you've been meaning to consolidate your file tools, this is a reasonable place to start.
Follow @githubprojects for more developer tools and open source projects.