Skip to content
A dithered painting of a philosopher in a laurel wreath resting on temple steps at dusk, looking out over a bay towards a distant city
v1.1.0free and open source

If Cursor and Obsidian had a baby

nuza is a fast, open-source Obsidian alternative: plain local markdown files, Vim keybindings, no bloat. Its optional AI panel is Cursor for writers, suggesting edits you accept one by one.

View on GitHub57
nuza - A simple, lightweight home for your markdown notes | Product Huntnuza on dotstore

A note from the nuza team

Why we built it

Honestly? We started building nuza just for fun, to see if we could completely replace our daily note-taking apps with something substantially lighter and faster. We wanted a tool that does exactly what you need it to do: nothing extra, no bloated plugins, and no sluggish startup times. It is brutally simple and just works right out of the box.

Under the hood

nuza is a native desktop application powered by Rust via Tauri. The frontend is extremely minimal, written in React and TypeScript, while the writing experience is driven by CodeMirror to provide flawless, native-feeling Vim keybindings.

Fully open source

nuza is entirely open source and community-driven. If you want to help us make the ultimate minimalist editor, pull requests are always welcome. Whether it's fixing a bug, tweaking the UI, or just starring the repository, jump into the GitHub and come build with us!

AI panel

Cursor for writers

Press ⌘L and ask an AI agent about the note you are writing. It is optional, and nuza keeps it on a short lead: edits come back as suggestions, and nothing is written to your notes until you accept it.

Edits you accept one by one

Ask it to rewrite a line and the answer comes back as proposed edits, drawn as a diff in the panel and in the note itself. Nothing changes until you say so.

  • Each edit has its own Accept and Reject
  • Accepting is an ordinary edit, so ⌘Z undoes it
  • The agent reads your note, but never writes to it
The nuza AI panel after asking Claude Code to rewrite two selected bullets: it explains what it changed, and two proposed edits appear in the panel and as red and green diffs in the note, each with Accept and Reject buttons

The usual jobs, one click away

Select some text and press ⌘L. Rephrase, Synonym, Explain this, Proofread and Improve writing work on exactly what you selected, and typing / lists every other action.

  • The panel shows which file and lines it is about to send
  • Pick the model and see how much context is used
  • Or just ask anything about the note you are in
A new nuza AI conversation with a paragraph selected in Vim visual mode: the panel offers Rephrase, Synonym, Explain this, Proofread and Improve writing, shows the selected file and lines being sent, and has a message box with a model picker

Bring the agent you already use

nuza runs no model and holds no key. It finds Claude Code, Codex or OpenCode on your computer and hands your question to it, on your own plan. Nothing to sign up for.

  • Claude Code, Codex and OpenCode, with a Use button on each
  • Any program that speaks the Agent Client Protocol also works
  • Off until you turn it on in Settings
The nuza AI settings: an AI switch turned on, and Claude Code, Codex and OpenCode each listed as found on the computer, with Claude Code marked in use and a Use button beside the others

Set it up once, per folder

Choose the model for each vault, tell it how you like replies written, and give it a memory of things to keep in mind. Your instructions and memory go with every question.

  • How it replies: your own standing instructions
  • Memory for the folder, or type /remember in the panel
  • Web lookups are off unless you allow them
The nuza AI settings further down: a switch for looking things up on the web, a model picker set to Sonnet 5.5, a How it replies box holding writing-style instructions, and a Memory section

Off until you ask

Until you turn AI on there is no panel, and nuza never looks for or starts an agent.

Fenced in

On macOS and Linux the agent runs inside an operating system sandbox, out of your home folder and unable to write to your notes. On Windows there is no fence, and nuza says so.

Every action refused

Requests to run a command, change a file or delete one are turned down, and the panel tells you. It can only read your vault, through nuza.

The agent still passes your question to its own provider, under that provider's terms.

How the AI works, and what it is sent

Gallery

Previews

The editor, the sidebar, search, settings and both themes, exactly as they look on a desktop.

Benchmarks

Light on your machine

nuza and Obsidian, side by side on the same 10,000-note vault. Medians of repeated runs, not the best one.

Memory

4x less

264 MB

Idle memory

nuza
264 MB
Obsidian
1.05 GB

Twenty seconds after opening the vault, counting every process each app owns.

Startup

2.2x faster

0.43 s

Launch to editor

nuza
0.43 s
Obsidian
0.95 s

From starting the app to the note being on screen, ready to type in.

Size

29x smaller

9.3 MB

App on disk

nuza
9.3 MB
Obsidian
270 MB

The installed application, as it sits in Applications.

Measured on an M4 MacBook with nuza 1.1.0 and Obsidian 1.14.4, each on its own fresh profile and a copy of the same vault. Warm file cache. Startup was timed through the accessibility API, memory is the physical footprint reported by macOS. Obsidian also spends its first minutes indexing a large vault, which nuza does not need to. Your numbers will vary with your machine and your notes.

Releases

Changelog

Every release of nuza and the commits that went into it, straight from the repository.