Introduction
hoardodile is a privacy-first, self-hosted archiving app for your personal media and documents. It is single-user by design, stores everything on your own machine, and keeps immutable, versioned snapshots of your archive so you can sync and migrate hosts with any file-sync tool.
Features
- Versioned archiving — each released version freezes its files and a DB snapshot under
versions/<v>/; old versions stay read-only and are never deleted - Pluggable content types — gallery, manga, and novel plugins ship built-in; unknown file types fall back to a generic file plugin
- Organization — resources, characters, documents, tags, messages, danmaku, search, and usage stats
- Single-user authentication — argon2-hashed password with session cookies; your data never leaves your host
- Manual backup & host-switching — sync the
versions/directory with any tool you like, back up the DB in-app, and restore on the new host
How it works
The app is a pnpm monorepo: a Fastify + tRPC server, a React single-page app, and iframe-based content plugins. Everything — database, originals, thumbnails, logs — lives under a single storage root on your machine:
{storage}/app.sqlite— the live runtime database (not synced){storage}/versions/<version>/— frozen, syncable version partitions (DB snapshot, resources, characters, documents); old versions are read-only{storage}/local/— host-only state (logs, thumbnails, trash, staging, session key, extracted caches)
Because a released version’s partition never changes, any file-sync tool (Syncthing, rsync, cloud drives) can replicate your archive safely.
Next steps
Head to Getting Started to run your own instance.
Last updated on