Penombre is a file storage and synchronisation platform for people who want
their files back. Drop it on a box, point it at your disks, and you get a modern
web drive — without renting the disk from anyone.
It runs on SQLite out of the box: one container, one volume, no database
server to run alongside it. PostgreSQL stays supported the day you outgrow that.
Uploads that survive a reload — files and whole folders, queued in the
browser and resumed after a closed tab.
Uploads
Everything you expect from a drive — folders, search, starred, recent,
automatic categories (images, music, video, documents…), zip downloads, and a
trash that gives things back.
Storage
Copy and move anywhere — between folders, shared drives and mounted
volumes, in one dialog.
Big folders stay fast — listings page from the database and render only
what is on screen, so a 20,000-file sample library scrolls like ten files.
A real music player — the waveform is the progress bar, redrawn in your
accent colour; skip, restart, change the speed without changing the pitch, or
transpose without changing the tempo.
Media
Notes pinned to a moment — timestamped comments drawn on the waveform, for
"the kick is too loud at 1:12".
Media
Previews for almost everything — images, video, PDFs, code, 3D models,
with a full-screen viewer that keeps the playhead when you go in and out.
No more final-final-really.wav — upload a file with the same name and
the old one becomes a version you can play, preview or restore. Switch takes
mid-playback and compare two mixes at the same bar.
Versioning
Merge old takes into one file — select Song-001.mp3 … Song-014.mp3,
order them by date or by name, preview the result, merge.
Merging
Mount what you already have — declare a directory as a volume and its
files show up, rescanned every minute, read-only if you like.
Volumes
WebDAV and sync — mount any drive in Finder, Explorer or GNOME Files, or
keep a folder in two-way sync with rclone; a save over a file becomes a
version, a delete lands in the trash.
WebDAV and sync
A desktop sync app — a tray app for macOS, Linux and Windows that keeps
several local folders in two-way sync with your drive, shared drives or
volumes; brew install zedensix/tap/penombre-sync.
Desktop sync
Syncthing-friendly — what Penombre writes to a volume keeps its real name
and its modification date, so the folder reads the same on every peer.
Syncing with Syncthing
Simple mode — no per-user drives, just one shared library everybody
browses. Simple mode
Encryption at rest — file bytes sealed with a key you hold, rotatable,
recoverable without Penombre.
Encryption
Every way in — password, passkeys, magic links, emailed codes, two-factor
and any OpenID Connect provider (Pocket ID, Google…), each switchable live
from the admin panel.
Authentication
Invitations, users, SMTP, storage and an activity log in one admin panel.
Admin
A documented REST API — every /api/v1 endpoint is in the OpenAPI spec,
with API keys for scripts.
Either way it comes up on http://localhost:3000, on a setup screen that
creates the first administrator. One volume holds the lot: the SQLite database
under /data/db, your files under /data/storage. Those two variables are the
only ones required.
The getting started guide walks through
it properly, and the env reference
covers everything else: OAuth providers, SMTP, Redis, Postgres, volumes, simple
mode.