Knot is a local-first note app built with Tauri.
The main focus is writing in markdown without a lot of UI noise. The editor hides markdown syntax on inactive lines, and the project also includes a local MCP server and daemon tooling for AI workflows around a vault.
If you want to run it from source:
npm install
npm run tauri-devIf you want local release artifacts (tarball + self-extracting installer + deb + deb-src):
npm run release:local -- --version 0.1.0Knot is split into a web frontend and a Rust backend.
- Frontend: React, TypeScript, and ProseMirror in
src/ - Backend: Tauri and Rust in
src-tauri/ - Shared app shape: desktop-first, with Android support planned through Tauri's mobile stack
The Linux desktop build has a launcher layer and daemon-based flows, so the UI, knotd, and MCP commands can be run from the same artifact.
- Distraction-first markdown editing with hidden syntax on inactive lines
- Local note storage and search
- Embedded media support, including image and PDF handling in the app
- Local MCP access to vault data and operations
- Linux launcher commands for UI, daemon, MCP, and service management
Example MCP usage from the launcher:
knot mcp bridge
knot mcp codex install- Tauri 2
- Rust
- React
- TypeScript
- ProseMirror
- SQLite via
rusqlite - Tantivy
- Tokio
This project is available under either MIT or Apache-2.0.
See LICENSING.md, LICENSE-MIT, and LICENSE-APACHE.