A quiet notes app for people who build things. Markdown files you own, one column to write in, and every key where your hands already are.
Free. macOS 12+ on Apple silicon.
No plugins to hunt for. Everything below ships in the app, works offline and is on by default.
No account needed, no spinner, no waiting on a server. Works on a plane, in a submarine, or on an island in the middle of nowhere.
No analytics, no telemetry, no machine-learning training data. What you write never leaves your machine unless you send it.
Type [[ to link any note. Each note shows the sentence that links to it, not just a title.
See how your notes connect. Clusters show up on their own; follow any line to the note behind it.
Every word, every note, as you type. Press ⌘K and it’s there.
Any checkbox in any note is a task. Mark it done, or cancel it with [-] so you remember you decided not to. Every open one shows up in a single list.
Write #lisbon in the sentence, or file it in a folder. Use both, either, or neither — nothing to keep tidy.
Write @elizabeth and every line about her is one keystroke away, right before the meeting.
Type : and name what you want. Everything the app can do is in there, so there’s no menu to learn.
Modal editing, motions, text objects and registers, all there if you want them. And yes, you can quit: :q. We checked.
Your vault is a folder. Keep it in git — commit it, push it, diff it — or anything else that syncs a folder. With Pro, keep it in iCloud Drive and it’s on every Mac you own.
Lock a single note behind its own password. It’s encrypted on disk, so the file is unreadable without it. Everything else stays one keystroke away.
Light, dark, and a few in between. Pick one, or write your own in a single CSS file.
Most of what you write down is small. A lens is soft wide open. Alan wants the dashboard on Thursday. Type it in the box and press ⌘↩ — that’s the whole ceremony. When a line turns out to matter, ⌘E opens it as a full note, with nothing lost.
Every note is a markdown file in a folder you choose. Grep it, keep it in git, open it in vim. paperkites is one way to read those files, not where they live.
Tags live in the sentence, not a sidebar. A link shows you the sentence that points back, not just a title. And @elizabeth brings up everything you’ve written about the people you work with — right before the meeting.
Vim bindings throughout. j and k through your notes, gd to follow a link, ⌃o to come back, ⌘K to go anywhere. The mouse is welcome, never required.
A small CLI, kite, writes to the same folder. Pipe into it, alias it, bind it to a key.
Every note is a .md file in a folder you choose. Open it in vim, grep it, back it up, walk away with it. paperkites is how you read them, not where they’re kept.
Open your Obsidian vault as it is. paperkites reads the same markdown files, with the same wiki links, embeds, callouts and properties. Nothing needs converting, and you can use both apps on the same folder.
| obsidian feature | example | in paperkites |
|---|---|---|
| Wiki links | [[Note]][[Note|alias]] | Supported |
| Links to headings and blocks | [[Note#Heading]][[Note#^block]] | Supported |
| Links by file name, path or alias | [[Folder/Note]]aliases: | Supported |
| Block ids | ^block-id | Supported |
| Image embeds | ![[photo.png|300]] | Found anywhere in the vault |
| Note embeds | ![[Note#Heading]] | Supported |
| Audio, video and PDF embeds | ![[talk.mp4]] | Supported |
| Callouts, foldable | > [!tip]- | Supported |
| Highlights | ==text== | Supported |
| Strikethrough | ~~text~~ | Supported |
| Comments | %%hidden%% | Supported |
| Footnotes | [^1]^[inline] | Supported |
| Math | $e^{iπ}$$$…$$ | Supported |
| Tags and nested tags | #tag/subtags: | Supported |
| Tasks, custom statuses too | - [ ]- [x]- [?] | Supported |
| Properties | aliasestagscssclasses | Kept as written |
| Syntax-highlighted code | ```ts | Supported |
| Mermaid diagrams | ```mermaid | Supported |
| Tables | | a | b | | Supported |
| HTML | <kbd><details><br> | iframes shown as a link, never loaded |
| Search blocks | ```query | Supported |
| Dataview | ```dataview | LIST, TABLE and TASK. DataviewJS is never run |
| Bases | ```base | Table and list views |
paperkites never rewrites your notes into its own format. The first time it sees a note, it adds an id: to the note’s properties so links survive renames.
Every [[link]], #tag and @person becomes a line. Clusters show up on their own. Follow any line to the note behind it.


Everything has a shortcut. Vim is there if you want it, and invisible if you don’t.
After trying a lot of note apps, it always felt like something was always missing, or there was far too much.
Close to ten years of switching apps, plus a few honest attempts at journaling with a real pen and paper. Each one got something right. None of them got all of it.
And I write a lot. Not just quick notes, but long pieces too: chapters for projectlighthouse and essays on my Substack. I wanted one place that handles both, a two-line thought and a ten-thousand-word draft, without getting in the way.
paperkites is my take; a simple place to write, the right tools close by, and privacy as the starting point rather than a setting.
I’m a software engineer by day. By night I’m an adventurer, a photographer, and someone who can’t stop building things.
It’ll miss a few features, I’m sure. That’s fine — I’d rather it did the important things well.



Don’t forget about the planet. 1% of every purchase goes to carbon removal through Stripe Climate.
Download it, open a folder, start writing. Your notes stay plain files on your Mac.
Download for MacmacOS 12+ · Apple silicon · Free, or buy Pro once
Linux is coming soon.