Notabula

Your notes.
On your server.

Notabula is a self-hosted, multi-user notes app modeled on iOS Notes — live editing, folders, and checklists, installable as an app on any device. Your notes live on your own server, and they're never locked in.

Get it on GitHub Explore features
Self-hosted Open source Offline-first PWA Encrypted locked notes
Why Notabula

Your notes, and only yours

Most notes apps hold your writing hostage in someone else's cloud. Notabula keeps every note on infrastructure you run — and makes leaving as easy as staying.

Lives on your server

Every note is stored in your own PostgreSQL database, on hardware you control. No cloud account, no data mining, no one reading over your shoulder.

Never locked in

Export everything as a zip — plain text, images, and lossless JSON — and import it back anytime. Nightly server-side backups and a one-click admin restore.

Offline-first

Read everywhere offline. Edits and new notes queue on your device and sync the moment the connection returns — no lost thoughts.

Locked notes stay secret

Lock any note with a passphrase. It's encrypted on your device (PBKDF2 → AES-GCM) so the server only ever stores ciphertext — unreadable even to you without the key.

Everything inside

A notes app that feels familiar

Modeled on iOS Notes, with the polish you expect — and a few things it never had.

Live WYSIWYG editor

Bold, headings, lists, checklists, quotes, and inline images render live — raw markup is never shown.

Folders & tags

Nested folders, #hashtag tags with autocomplete, pinning, and full-text search across everything.

Smart views

Media, Links, Open Tasks, Locked, and Last 7 Days surface the right notes automatically.

Rich link previews

Any URL in any note unfurls into a title, description, and image card.

Sharing & roles

Share notes or folders as viewer or editor, or mint a secret "anyone with the link" link.

Edit history

A word-level redline of every change, with one-click restore to any earlier version.

Locked notes

Client-side AES-GCM encryption — the server stores only ciphertext it can't read.

Own your data

Full zip export and import, nightly backups, and an admin one-click restore.

Accounts & 2FA

Username and password with long-lived sessions and optional TOTP two-factor.

Private by default, encrypted when it matters

Notes are private to you unless you deliberately share them. Lock the sensitive ones and even the server can't read them. Add TOTP two-factor to your account, and everything runs behind your own login, on your own machine.

No third-party analytics, no ads, no tracking — just your notes, where you put them.

Run it yourself

Self-host in three steps

You need Docker with Compose. The database schema is created and upgraded automatically on startup.

1

Configure

Copy the env files and set a database password and secret key.

2

Build the PWA

Install dependencies and build the front end once.

3

Launch

One compose command and you're live on port 8200.

# 1 · configure
cp .env.example .env
cp backend/.env.example backend/.env
# set POSTGRES_PASSWORD and SECRET_KEY

# 2 · build the PWA
cd pwa && npm install && npm run build && cd ..

# 3 · launch
docker compose up -d --build

Open http://<host>:8200 — the first account you register becomes the admin. Deploy to a NAS with prebuilt images via DEPLOY.md.

FastAPIPostgreSQLReactTipTapDockerPWA
FAQ

Questions, answered

Do I need my own server to use Notabula?
Yes. Notabula is self-hosted — you run it on your own machine, NAS, or server with Docker. Your notes never touch anyone else's cloud.
Can I install it like an app?
Yes. Notabula is an offline-first PWA — add it to your home screen or dock on any device and it works offline, queuing your edits and syncing when you reconnect.
What if I want to leave or move my notes?
You can export everything as a zip — plain text, images, and lossless JSON — at any time, and import it right back. There's no lock-in, plus nightly backups and a one-click admin restore.
How private are locked notes?
Locked notes are encrypted on your device with your passphrase (PBKDF2 → AES-GCM). The server only ever stores ciphertext; without your passphrase, no one — including the server operator — can read them.
Can my whole family or team use it?
Yes. Notabula is multi-user: the first account becomes the admin, who can add everyone else. Notes are private by default, with optional sharing and viewer/editor roles.