Bring your Takeout, your 20 years of email and your unsorted photos. With undo.
NoCloud is the local-first layer between your archive and the services you already use. It brings folders and supported exports into your files, your SQLite database and your private portal, then connects dashboards, automations and optional Store apps without turning your life into another hosted account.
Run them — NoCloud does, where they're best-of-breed (Immich for photos, Home Assistant for the home). The gap sits underneath: those apps host the present, starting from zero, while your past — Takeouts, mailboxes, chat archives, bank statements — stays scattered across single-purpose importers that don't talk to each other. NoCloud is the layer that digests twenty years of exports into one normalized, searchable database, reversibly: every curation decision is journaled with its inverse, uncertain ones wait for your review, and supported operations can be undone. That migration-and-memory layer — with undo — is the product.
Leaving a cloud is a one-way door for most people: you export, you import, and whatever got mangled on the way is gone. Here the pipeline that got your data in can always be run backward.
Every database write goes through an append-only ledger that snapshots before it touches anything. Any change can be restored.
Nothing is permanently deleted without confirmation. Uninstalling an app quarantines its tables — it doesn't drop them.
Curation runs on an explicit vocabulary of reversible operations, not an opaque classifier. You can see why a file ended up where it did.
Everything in the engine reduces to a small, closed vocabulary: six
algebra primitives for what an op does
(COPY MOVE ANNOTATE RECORD LINK
DELETE, each with an exact inverse), and five Python constructs for what
decides it — wired end to end. One tab each:
Not a slogan — the mechanism. Your data lives on hardware you own (a workstation and an always-on home server — a Raspberry Pi is a common choice, but any Linux machine or WSL instance works) and is reachable only over your own VPN. There is no account, no tenant, and nothing of yours leaves the house.
Two native companions let you skip the browser entirely.
Your self-hosted dashboard as a standalone window — no browser, no extra tabs, no hunting through history. It discovers local instances, guides first-time setup, and keeps the Sink import queue visible. Download →
A persistent icon in your menu bar, not the Dock. One glance to see whether your server is reachable and your services are healthy. One click to connect, disconnect, deploy new code, or open your dashboard — no terminal needed. Starts automatically at login. Docs →
NoCloud is actively developed as a complete local-first platform: core runtime, Store contracts, desktop wrapper, menu-bar companion and product manual. The current desktop release lists the installers available for each platform; builds remain unsigned while release-signing credentials are being added.
In the store:
Import your photo archive from Google. Dates, descriptions, and metadata — everything intact, nothing lost.
Years of conversations and attachments in one local, searchable archive — organized by chat room.
Read and write email from your own mailbox — no third-party app, no subscription, no scanning.
Route incoming email by sender or subject. Applied locally, before you open anything.
Inspect every curation decision the engine wasn't confident enough to apply on its own. You approve, it writes.
Describe a curation rule in plain language. Review the typed expression before it touches anything.
Browse folders synced between your Mac and home server — one view, both sides.
A live map of every table in your unified database — row counts, ownership, nothing hidden.