A personal desktop note-taking app inspired by Obsidian.md, built with Svelte 5 and Tauri 2.
Your notes are plain Markdown files stored locally — no cloud, no lock-in, privacy first. Built 100% with Claude Code with human review.
macOS only — built exclusively for macOS with no plans to support other platforms.
Features
- Markdown editor with source mode and live preview (CodeMirror)
- Wikilinks (
[[note]]) with autocomplete, block references, and embeds - Full-text search powered by SQLite FTS5 with BM25 ranking
- Semantic search using a local AI model (BGE-M3 via ONNX Runtime) — no data leaves your machine
- Graph view — interactive force-directed visualization of note connections
- Canvas — infinite visual board with text, file, link, and image nodes (JSON Canvas 1.0)
- Collection — database/table views of notes queried by frontmatter properties
- QueryJS — JavaScript API for programmatic vault queries
- Tasks — aggregated task view with extended statuses and Todoist sync
- Periodic notes — daily, weekly, monthly, and quarterly notes with templates and calendar
- File history — automatic snapshots with diff viewer and restore
- Encrypted notes — AES-256-GCM encryption with macOS Keychain and Touch ID
- Integrated terminal — real PTY sessions with xterm.js and WebGL rendering
- Custom file icons — 11 icon packs + emoji with color picker
- Bookmarks, tags, backlinks, outgoing links, properties panel
- Templates and quick note capture
Stack
| Layer | Technology |
|---|---|
| Frontend | Svelte 5 (runes), SvelteKit, TypeScript |
| UI | shadcn-svelte (Tailwind CSS v4 + bits-ui) |
| Editor | CodeMirror 6 with custom extensions |
| Backend | Tauri 2 (Rust) |
| Database | SQLite (rusqlite) with WAL mode |
| Search | FTS5 + ONNX Runtime (semantic embeddings) |
| Encryption | AES-256-GCM, macOS Keychain, Touch ID |
| Terminal | portable-pty + xterm.js |
Privacy
Privacy is a core value of this project. Kokobrain is designed to work entirely offline — your notes never leave your machine.
- All data is stored locally as plain Markdown files
- Search indexing (FTS5 + semantic embeddings) runs locally via SQLite and ONNX Runtime
- Encryption uses AES-256-GCM with macOS Keychain and Touch ID — no external key servers
- The semantic search model runs locally — no API calls, no telemetry, no cloud processing
- No analytics, no tracking, no accounts, no sign-up