Skip to content

Operations

Where notes live

Every note is a plain markdown file in DATA_DIR (/data in the container), named <id>.md. With the quick start's compose.yaml that's the data folder next to it. You can read, grep or copy the files directly.

notefeed writes them as the owner of that folder: create it yourself (mkdir data) and the notes are yours. To choose a different owner, set PUID and PGID. If Docker created the folder (owned by root), notefeed falls back to uid/gid 1000.

Keeping notes in git

Since the notes are your files, data can be a git repository:

cd data
git init
git add -A && git commit -m "notes"

notefeed only reads files named like notes, so .git and any other files in the folder are ignored.

Backups

Back up the data folder. There's no database: restoring the files restores the notes.

tar czf notefeed-notes.tgz -C data .

Deleting a note

Delete its file. It disappears from the web UI and the feed straight away.

rm data/20260929T140512Z-backup-finished.md

Upgrading

With the published image:

docker compose pull && docker compose up -d

Image tags on ghcr.io/marceltov/notefeed:

Tag Moves on
:latest every release and every change on main
:main every change on main
:X.Y.Z, :X.Y, :X releases (:0.1 follows the newest 0.1.x)

To upgrade only on purpose, pin a version, e.g. image: ghcr.io/marceltov/notefeed:0.1. Each release is listed on GitHub Releases with its notes.

Built from source:

git pull && docker compose up -d --build

Notes are untouched by upgrades.

Running from source

For development:

npm ci
NOTEFEED_TOKEN=dev DATA_DIR=./data npm run dev
npm test && npm run lint && npm run typecheck