Last updated

Local-first trust

Local-first means the workspace is a folder you own, and it stays that way.

Your files live on your disk as plain Markdown. Undra adds structure, search, and AI on top. Your folder stays the source of truth.

Most apps keep your work in a format only they can read, in a place only they control. Undra goes the other way: your workspace is an ordinary folder of ordinary files. The app makes that folder more capable without making it mysterious, and without trapping anything inside.

What that gets you

This is not really about storage, it is about confidence:

  • you can back up the folder, sync it, or move it to a new machine
  • you can open and edit the files in any other tool
  • you can recover from a mistake, because the files are right there
  • you can keep using the editors and scripts you already rely on
  • you can see what AI or automation changed, because the change lands in a file you can read

Plain files all the way down

  • your workspace lives on disk, as a folder you chose
  • notes are Markdown files, with natural filenames
  • folders are real folders, not a database with folders painted on
  • the app’s search and graph indexes are caches: if one is ever lost, Undra rebuilds it, and none of your work is at stake
  • optional local indexes (for example .undra/embeddings.sqlite for semantic search) are rebuildable caches too, not your source of truth

More than one workspace

A workspace is one folder, and you can have more than one. Undra Home is the launcher for registering, creating, linking, and switching between workspace folders. Inside a workspace, the sidebar switcher moves you to another registered folder. Each is an independent folder you own, so the same local-first guarantees apply to every workspace, and removing one from the list never touches the files on disk.

See what changed

When something edits your workspace, it should be clear what changed and why. AI and automation are meant to be inspectable: you can see what landed, and you can undo a whole AI run in one click. Riskier portal actions (like deletes) still ask before they remove anything. And because every note is a plain file, an earlier version is always recoverable through whatever backup, sync, or version control you already use.

What to try

  1. Reveal any item on disk and look at the actual file.
  2. Import an existing Markdown file and open it straight away.
  3. Restart the app and reopen the same workspace from its folder.
  4. Make an edit, then check that you could find and undo it outside the app if you had to.

The one rule

If something changes your workspace, you should be able to tell what it changed and why. Everything else in local-first follows from that.

Where to go next

  • Notes: the plain Markdown files at the center of it all.
  • Bringing Markdown into Undra: adopt Undra without a migration.
  • Folder Portals: point Undra at a real folder and let AI edit it with backups and one-click undo.
  • Mira: the assistant who edits with inspectable, undoable changes.