Linux

Where Does Self-Hosted Flatnotes Store Notes?

Flatnotes stores notes as plain Markdown in /data, typically a ./data folder mounted into Docker.

Last updated

Flatnotes has no database. Every note is a Markdown file in /data inside the container, usually mounted from ./data beside your compose file. Copy that folder and you own every note in editable form.

The app only caches a search index, rebuilt on start and every search, optionally separable to /data/.flatnotes. You can add, edit, and delete the Markdown files outside Flatnotes while it runs. Change the notes path with FLATNOTES_PATH when running outside Docker.

Where Flatnotes stores this, by platform

Linux
./data/ (mounted as /data)

Host folder from -v ./data:/data holding every .md note. Search index lives at /data/.flatnotes, optionally mounted separately. Back up by zipping the folder with the stack stopped. PUID and PGID env vars dodge permission mismatches.

Frequently asked questions

How do I back up Flatnotes?

Stop the stack and zip the ./data folder next to docker-compose.yml. That is the whole app state. Restore by unzipping into place and starting the stack. Notes are plain Markdown, so even a partial copy stays readable.

Can I edit Flatnotes notes outside the app?

Yes, that is the design. Add, rename, or delete .md files in the data folder while Flatnotes runs and search reindexes on the next query. Keep filenames note shaped since titles derive from them.

Notice an outdated path? Let us know.