deniz.in

Markets

Weather

Loading weather

· via dev.to (home feed)

Papyra 1.0: self-hosted Keep-style notes where every note is a plain Markdown file

Papyra 1.0 is a self-hosted, Google Keep-style notes app that stores every note as a plain Markdown file, with collaborative editing, backlinks, search and an encrypted vault on top.

Papyra 1.0: self-hosted Keep-style notes where every note is a plain Markdown file

A Keep-style board where files are the database

Papyra 1.0 has been released. According to the announcement on dev.to by the app's developer, Rahul, it is a notes application you run on your own server, with a card-based workspace reminiscent of Google Keep: notes can be pinned, colour-coded, tagged and dragged around a desk-style board.

The distinguishing design decision is storage. Every note is an ordinary .md file with a small YAML header, saved in a users/1/notes/ directory, while the application's own bookkeeping lives in a hidden .papyra/ folder. A SQLite database and a search index do exist, but only as caches — delete them and Papyra rebuilds both from the Markdown files on disk.

Other tools can edit your notes directly

Because the storage layer is plain files, external programs can read and write notes, and Papyra notices the changes and catches up without a reload. In the release post, the developer demonstrates appending a line to a to-do list from a shell and watching the open app update itself. Pointing Obsidian at the data folder works too, and a note written in Obsidian shows up in Papyra. Since there is no proprietary database blob and no export step, grep, Syncthing and Git all work as you would expect.

What version 1.0 includes

The feature list goes well beyond a file viewer:

  • Real-time collaborative editing: share a note and two people can type in it simultaneously, with named cursors, while it remains a .md file on disk.
  • Fast full-text search triggered with Ctrl+K.
  • Links between notes typed with double brackets, with each note listing what links to it.
  • Version history that lets you step back through earlier revisions and see what changed.
  • A vault for private notes: locked notes are blurred, open with a PIN or fingerprint, and are encrypted on disk.
  • Comments: select text, leave a comment and resolve it later.
  • Images and PDFs dropped into notes, with PDFs previewing in place.
  • Offline support, so you can keep typing with no signal and sync once reconnected.

Around the core, the release also bundles two-step sign-in with an authenticator app, passkeys, single sign-on via OIDC, sharing by link, import from Obsidian and Google Keep, export to a zip file, sealed backup files and backup to a private GitHub repository. The interface works on phones.

Deployment, license and caveats

Installation is one Docker container and one volume. The compose file is fetched from the project's GitHub repository, the stack is brought up with docker compose, and the app is then reachable at localhost:8080, where you create the first account. Images are published for both amd64 and arm64, so a Raspberry Pi 4 or 5 can act as the host. The project is licensed under the GPLv3.

The release note is candid about maturity: version 1.0 means the developer uses it every day and is comfortable recommending it, not that the software is finished or bug-free, and users are told to keep the backups it makes for them. There is no hosted version and no native mobile app. An AI assistant is present in the codebase but is currently switched off. The developer also says the app was largely built with AI assistance: work he estimates would have taken a year or more by hand took a few months.

Why it matters

Papyra's core pitch is exit-proofing. If the app disappears or you simply stop liking it, you still have a folder of Markdown files — which is, in the developer's framing, the whole point. Plain-text, file-based storage removes vendor lock-in and interoperates naturally with editors, version control and sync tools, the ecosystem that has grown around tools like Obsidian.

What Papyra adds to that model is the convenience layer people associate with hosted SaaS notes apps — collaboration, search, sharing, version history and mobile access — delivered self-hosted from a single container. For anyone wary of one-click exports and proprietary databases, that combination of a familiar Keep-style interface with files as the source of truth is the story here.

  • #self-hosting
  • #markdown
  • #open-source
  • #docker
  • #notes-apps

Related posts