devnote is the open-source, local-first Markdown notebook for developers. GFM editor, instant offline search, keyboard-first — with no subscription, ever.
Built for developers who live in Markdown and the keyboard. Local-first by construction — sync is an adapter, not a requirement.
Qualifier grammar (book: tag: status: title: body:, phrases, -exclusions) over 5k notes in ~1–3ms. Search reference →
⌘K jumps to commands, notebooks, tags, headings, themes. Prefixes > b t # h.
CodeMirror 6 + sanitized preview, syntax highlight, copy-code buttons, slash menu, table assist, side-by-side & distraction-free.
~/devnote is plain Markdown with frontmatter. Point at a private repo and sync: export → commit → pull → push. Newer updatedAt wins; losers preserved as .conflict-<device>.md. Airplane-mode fully usable. Setup in 3 steps →
~/devnote/engineering/sync-engine-a1b2c3d4.md
~/devnote/personal/reading-list-9f8e7d6c.md
~/devnote/.attachments/diagram.pngAuto-snapshots on idle + note-switch with undoable restore. 6 built-in templates with date/UUID placeholders on ⌘T.
Nord, Dracula, Solarized, Catppuccin + system-follow. Code colors ride the same variables in editor and preview.
Every action is a core:* command with a remappable shortcut. Full map on the shortcuts page →
No account, no telemetry, zero required network calls. SQLite is an index — Markdown files are the truth.
One query language across the whole library. Terms combine with AND; rank is title ×3, tags ×2, body ×1.
typescript tag:Work status:Completed
book:Engineering "conflict drill" -draft
title:deploy body:TODO tag:rust$ pnpm bench
✓ search 5k notes — mean 1.8ms, p99 3.5ms
gate: <50ms … PASSPinned notes first, then score, then most recently updated. Matching lines shown as snippets; list renders 200 rows, virtualized beyond.
"exact phrase" matches verbatim. -term excludes. One honest limitation: no partial-match stemming — trin won't find string. Full grammar →
Switch from Telescope (⌘K then h) or Preferences → Appearance. Light + dark from day one.
devnote exists so a ~$5/mo hosted-sync fee isn't the price of a good Markdown notebook.
| devnote | Inkdrop | Notion | Obsidian | |
|---|---|---|---|---|
| Price | $0 · MIT | ~$5/mo | freemium | freemium |
| Works fully offline | ✓ | ✓ | limited | ✓ |
| Notes as plain Markdown | ✓ ~/devnote | DB + export | blocks | ✓ |
| Git sync, no vendor cloud | ✓ | hosted | — | paid/add-on |
| Qualifier search | ✓ | ✓ | filters | plugins |
| Open source | ✓ MIT | proprietary | — | — |
xattr -cr /Applications/DevNote.app.~/devnote. Optional: add a private repo in Preferences → Git sync. Full guide →git clone https://github.com/shubhscode/devnote.git
cd devnote
pnpm install
pnpm dev # web on :5173
pnpm lint && pnpm test && pnpm buildMIT-licensed, no telemetry, no lock-in. If local-first software should win, give it a ★.