Open-source, improved Notion. Native iOS 26 + macOS 26. Your notes live as plain .md files in a folder you own β open them in any editor, sync them with iCloud, hand them to an agent.
- β‘ Native Swift, no Electron β fast cold start, fast typing, fast scroll
- ποΈ Voice dictation built in, with a Siri shortcut
- π± native iOS gestures for delete line, pinch to open, drag to reorder
- π Plain markdown files on disk β no database, no lock-in
- βοΈ iCloud-sync friendly; some hidden files enable robust recovery, version history, and conflict-free multi-device editing
- π Every block you've ever typed, recoverable across all devices β and automatic recovery if a block goes missing
- π€ Open source
- βοΈ Block editor β paragraph, H1/H2/H3, bullet/numbered/todo lists, toggles, quote, code, divider, image, subpage row, template button.
- β‘ Markdown autotransforms β
#,##,###,-,*,1.,[]/[ ],>,```,---,". - π¨ Inline marks β bold, italic, code, strike, link, with the obvious Cmd-shortcuts (Cmd-B / I / E / Shift-S, Cmd-K for link).
- π½ Toggles β
βΈ Titlecollapsible blocks with nested children. - π Subpages β open inside a stack, navigate back with the system back gesture.
- @ @-mentions β type
@to link to another page. βοΈ Indent / outdent / reorder β Tab, Shift-Tab, Option+β/β, drag.- π Search β Cmd+P opens a fuzzy page picker; the magnifying glass on iOS does the same.
- π Recover β one sheet over trash, lost blocks, and explicitly-purged blocks, scoped to the current page or workspace-wide. Cmd+Shift+\ on macOS; long-press / context-menu on the undo button on iOS.
- πΌοΈ Image paste β paste an image from the clipboard, drag one in from Finder; bytes land in
Assets/and the row becomes an image block.
Cold start, scroll, keyboard latency, and memory footprint are all measurably better than the Notion app on the same hardware. iOS 26 + macOS 26, single multiplatform target, no web view.
Hunch's storage format ("Clamshell") is a folder of plain markdown plus a small amount of sidecar state (recovery log, trash, assets). The folder is durable, portable, readable, iCloud-friendly. Drop it into Obsidian, hand it to an LLM agent, grep it, version-control it, import it into a Notion vault.
Paste from the clipboard, drop one in from Finder, drag a screenshot off the desktop β the bytes get persisted into Assets/ as a regular .png / .jpg / .heic and the row becomes a standard markdown image reference. No proprietary blob format, no CDN, no "image broke because the host expired". Open the folder and the images are just files β diffable, backup-able, AirDrop-able, hand-able to a model.
Mic button in the page toolbar on both macOS and iOS β press to speak, get text inserted at the cursor (or appended as a paragraph when nothing's focused). On iOS, a Siri intent (VoiceRecordingIntents) means you can wire dictation into the Action Button or a Shortcut and capture into the current page hands-free.
Notion has version history; Hunch has a per-device append-only recovery log. Every atomic block (paragraph, list item, heading, code block) ever saved on any device stays recoverable until you explicitly purge it, and recovery survives the live .md getting deleted, corrupted, or overwritten. Per-device JSONL files mean iCloud just appends.
Opening the Recover sheet (Cmd+Shift+\) gives you one unified view over trash (soft-deleted pages), lost blocks (orphans whose surrounding tree changed), and purged blocks (explicit deletes you can still pull back) β filterable by current page or the whole workspace.
And recovery isn't only manual. If a block vanishes from the .md because of an external edit, a corrupted file, or a sync conflict dropping content, opening the page automatically re-splices the missing subtree from the journal and surfaces a banner so you know it happened.
The data layer is built for iCloud from the floor up. The recovery log is one JSONL file per device, so two devices appending to the same page never write to the same file β iCloud just syncs them, no merge step required. When the .md itself collides (same page edited on Mac and iPad before either synced), Hunch reads iCloud's version history via NSFileVersion, runs a structural merge, and writes the union back instead of letting one device's edits win. Worst case is a duplicated paragraph you can delete; the common case is both edits land.
Slide a heading in nav mode and everything nested under it comes along. Notion makes you collapse the section first, then drag β Hunch tracks structure and moves the whole subtree.
Cmd+Shift+M opens a single picker with two grouped sections: destinations on this page (every heading and toggle, indented to show outline) and other pages in the workspace. One search field filters both. Arrow keys traverse both groups. Return commits the top match.
Cmd+P opens a fuzzy picker over every page in the workspace, indexed in memory from the workspace folder. No network round-trip, no remote ranking model, no spinner β keystroke to result is one frame. Arrow keys + Return; the magnifying-glass toolbar item does the same on iOS. (Full-text search across page bodies is on the roadmap; for now, search is title-only.)
Notion's block UI hangs off hover. That doesn't translate to touch and makes the eye chase a moving target on desktop. Hunch has two distinct modes:
- Edit mode: one block at a time, full-fidelity text editing.
- Nav mode: arrow keys move between blocks, Shift-arrow extends multi-block selection, Option+β/β slides selected blocks, Tab/Shift-Tab indents, Delete removes, Return enters edit.
Each workspace points at one home page. Subpages branch from there. There's no permanent sidebar tax β open by typing or by following a subpage row, not by scanning a tree.
Edge-swipe pops navigation. Pinch on a heading or toggle opens its nested view as its own page. Drag-to-reorder works without a hover state.
Page mention, page link, subpage row, database relation β Notion has four overlapping things. Hunch has one: [Title](pages/foo.md). A paragraph that contains nothing but a link of that form renders as a subpage row; the same link inline renders as text. Done.
Internal [β¦](pages/foo.md) links render the live target title, not the file path β rename a page and links to it update on next render. Paste a bare external URL and it picks up a favicon + page title chip, fetched via LinkPresentation and cached on disk at ~/Library/Application Support/Hunch/LinkPreviews/. No iframe, no preview card, just inline text that doesn't look like a raw URL.
Cmd+N opens another window onto the same workspace; each window keeps its own navigation stack. Open a subpage from one window and another window that already has it open splices its stack to match β no duplicate editors fighting over the same file.
We chase the typography Notion had before the 2026 redesign β the weights, sizes, and rhythm Notion users grew to like.
You can read the code, fork it, audit your own data layer, and ship patches. Licensed under MIT.
Navigation
Cmd+Pβ search pagesCmd+[β backCmd+Rβ reload pagesCmd+Shift+Oβ switch workspaceCmd+Shift+\\β open Recover sheet
Editing
Cmd+B/Cmd+I/Cmd+Eβ bold / italic / inline codeCmd+Shift+Sβ strikethroughCmd+Kβ link selection / promote to subpageCmd+/β Turn Intoβ¦Cmd+Z/Cmd+Shift+Zβ undo / redo
Nav mode (no edit cursor)
β/ββ move between blocksShift+β/Shift+ββ extend selectionOption+β/Option+ββ move selected block(s)Tab/Shift+Tabβ indent / outdentReturnβ enter edit mode (or open the selected subpage)Deleteβ remove selectionCmd+Shift+Mβ move selection to another pageβ¦Escβ leave edit mode
- β Real-time multiplayer collaboration
- β Full databases (relations, formulas, rollups, views)
- β Tables
- β Embeds besides just fancy external link mentions
- β AI features
Hunch is built on two reusable pieces, both documented in this repo:
- Editor β a SwiftUI block editor (paragraphs, headings, lists, toggles, code, inline marks, autotransforms, drag-reorder, @-mentions) with no opinion on storage, navigation, or serialization. Drop it into any iOS 26 / macOS 26 app and wire up an
EditorHost. - Clamshell β Hunch's on-disk format and storage engine: a folder of
.md, a per-device append-only recovery log, trash, and assets. Durable, portable, iCloud-friendly, recoverable.
Want to build, hack on, or send a patch? See CONTRIBUTING.md.