Znote — Markdown notes that run.
Write a note. Press play. The AI reads your files, runs your code, and writes the result inline.
Plain .md files on your disk — yours forever.
Download
·
Docs
·
Recipes
·
Znote + Obsidian
·
Blog
·
FAQ
What is Znote?
Znote is a clean, local-first Markdown editor for your .md files — minimalist by default, powerful when you need it. On top of a calm, beautiful editor sit two superpowers, and only two:
- 🧠 AI inside the editor. Type
@ to bring any note, folder, or code block in as grounded context — the AI reads your files and writes the result inline, right where you're writing. No second app, no chat window, no copy-paste.
- ▶️ Code blocks that run. JavaScript / Node.js executes locally in the note. Query a database, fetch an API, shape the rows — the chart or table renders inline, right under the code that produced it. Save the note and you've built a tool.
Everything else is a gorgeous Markdown editor: WYSIWYG, built-in themes (Dark, Nord, Orange, Terminal…), focus mode, tabs, tags, full-text search — and a treeview that composes folders from anywhere on your disk into one workspace. Your files stay put, nothing to migrate.
Everything your notes can do
| Feature | |
|---|
| 📝 | WYSIWYG Markdown | Write clean Markdown, rendered as you type. No mode-switching, no clutter. |
| 🔗 | AI @references | Point the AI at notes, folders, files, or code blocks. Answers stay grounded in your material — no generic guesses. |
| ⚡ | Run JS & Node.js inline | await fetch(...), db.query(...), per-file NPM, charts and tables rendered next to the code. |
| 🎙️ | Voice recording & transcription | Hit record, get a clean, structured note back — typed up for you, inline. |
| 🌐 | Web search from AI blocks | The AI browses the web and writes current results back as context you can keep. |
| 🧩 | Tool calls & plugins | The AI calls your JS functions; Gmail, Jira, Slack and database plugins available when you want them. |
| 🔌 | MCP servers | Plug GitHub, Postgres, Slack, Linear… into your AI blocks via the Model Context Protocol — any server, one config file. |
| 🗂️ | Composable treeview | Aggregate folders from anywhere on your disk into one unified tree — files stay where they are. |
| 🎨 | Beautiful themes | Dark, Nord, Orange, Terminal and more. An editor you'll actually want to open. |
| 📤 | Exports | HTML, PDF, or runnable script — from the same .md file. |
| 🔒 | 100% local-first | Plain .md files on your disk. Offline, no cloud, no account, no telemetry by default. |
What lives in a .md file?
Your notes, your AI's context, and your code — all in one plain Markdown file:
# Weekly report — week 18
Reviewed onboarding metrics with the team. ← Markdown prose, like always.
@analytics/onboarding-funnel.md ← @references — the AI reads files & blocks as context.
```ai
Write a 3-bullet summary of @onboarding-funnel. ← AI block — calls your model with the @context above.
```
```js
const data = await db.query(...) ← JS / Node block — runs locally, output renders inline.
barChart(data)
```
Want ready-to-run examples? Check the examples/ folder in this repo, or install working workflows in one click from the Recipe Library — Gmail auto-reply, Jira from specs, API tester, SQL explorer, standup digest, and more.
Plug any tool with MCP
Znote speaks the Model Context Protocol — the open standard that connects AI to real tools. Declare servers in your vault's .znote/mcp.json (the same format as Claude Desktop, so any server's README config pastes as-is), and your ```ai blocks can use their tools:
```ai tools=github
List the open PRs on acme/webapp and draft my standup brief.
```
```ai tools=postgres
How many orders this month, broken down by channel?
```
tools= gives the model all the server's tools; tools=. just one. Mix freely with your own JS functions.
- Settings → MCP lists your servers, tests the connection, and shows every tool they expose.
- Servers run locally, as processes Znote starts and stops — consistent with everything else in the app.
Get started with the 22 ready-to-run examples — Filesystem, Postgres, GitHub, Playwright, Linear, Notion, Slack, Stripe, Grafana, Zapier and more — each with the exact config and prompts to run as-is.
Works with your Obsidian vault
Znote is not an Obsidian replacement — it's a companion. Since it's all plain .md, your vault opens as-is: wikilinks, embeds, attachments, your settings. Znote adds executable code blocks and inline AI, and saves results back as Markdown Obsidian can read. A one-click companion plugin even adds "▶ Run in Znote" buttons inside Obsidian.
Stop using Znote tomorrow — your vault won't notice. Learn more →
Bring Your Own AI (BYOK)
Your AI key. Your models. Your rules. No vendor lock-in.
- OpenAI — direct API key, the most-used path.
- Ollama (local) — run models like LLaMA or Mistral on your own machine, fully offline. Nothing ever leaves your computer.
- OpenRouter — one API, hundreds of models from many providers.
New to API keys? Znote walks you through it in 2 minutes on first launch. ~5€ of API credit ≈ months of daily use.
Installation
Znote is free with every feature included, for Windows (x64 & arm64), macOS (Intel & Apple Silicon), and Linux (x64 & arm64).
- Download from znote.io.
- Windows: run the
.exe installer · macOS: open the .dmg and drag Znote to Applications · Linux: run the .AppImage.
- That's it — no account, works offline.
The AI comes with free requests to try, and you can bring your own key to keep going on your own terms — see znote.io for details.
A word from the maker
> I built Znote because I believe your notes shouldn't be a dead archive — they should work with you. Being able to converse with your own notes changes everything for productivity: the AI answers from what you wrote — your specs, your meetings, your research — not generic guesses. And runnable code blocks turn a simple note into a little tool: query a database, call an API, render a chart, save the file — next week you just open it and press play. Once your notes can think and run, you stop copy-pasting between five apps and start getting things done in one place.
>
> — Anthony, maker of Znote
Community & support
Znote is built by one indie dev who reads every email. 🚀
Credits
Znote is built with love using Electron and React.
Turn your first note into action.
Download free →