Knovum 0.0.2:以 Tauri 2、Vue 3 和 Rust 建構開源、本地優先的 AI 畫布
Knovum 0.0.2: Building an Open-Source Local-First AI Canvas with Tauri 2, Vue 3, and Rust
Knovum 推出開源、本地優先的桌面 AI 知識工作區 Knovum 0.0.2,以無限 2D 畫布整理知識,採用 Tauri 2、Vue 3 和 Rust,閒置時約佔用 45MB RAM。新版本加入差異化空間索引、串流對話區塊邊界、互動語音預覽,以及會在來源筆記變更後標示的引用功能。Knovum 以 Apache-2.0 授權免費開源,支援 macOS 和 Windows。
Like many developers and researchers, I've spent the past two years experimenting with local LLMs (via Ollama) and local RAG. But existing desktop frontends repeatedly hit two frustrating walls:
- The 1D Chat Trap: Linear chat streams work well for simple Q&A, but break down during deep research synthesis. Earlier reasoning turns scroll off the top, and you cannot visually compare multiple document excerpts side-by-side.
- The Electron Memory Tax: Most desktop AI wrappers idle at 700MB–1GB RAM before you even load model weights into VRAM.
To solve this, we built Knovum — an open-source, local-first desktop AI knowledge workspace built on an infinite 2D canvas with Tauri 2, Rust, and Vue 3.
Today we just shipped v0.0.2, so I wanted to share the engineering decisions behind the architecture, what we learned building it, and what's new.
Core Architecture: 45MB Idle RAM & Local-First Storage
┌────────────────────────────────────────────────────────┐
│ Vue 3 Spatial Frontend │
│ (Konva Infinite 2D Canvas + JSON Canvas Specification) │
└───────────────────────────┬────────────────────────────┘
│ Tauri 2 IPC (Channels)
┌───────────────────────────▼────────────────────────────┐
│ Rust Backend Core │
│ ┌────────────────────┐ ┌────────────────────┐ │
│ │ SQLite Storage │ │ Embedded LanceDB │ │
│ │ (Notes, Boards, │ │ (In-Process Vector │ │
│ │ Numbered Migr.) │ │ Search Engine) │ │
│ └────────────────────┘ └────────────────────┘ │
│ ┌────────────────────┐ ┌────────────────────┐ │
│ │ Ollama API │ │ Embedded Whisper │ │
│ │ (Local LLM Router) │ │ (Speech-to-Text) │ │
│ └────────────────────┘ └────────────────────┘ │
└────────────────────────────────────────────────────────┘
1. Why Tauri 2 + Vue 3?
By leveraging native OS WebViews (WKWebView on macOS, WebView2 on Windows) orchestrated by a compiled Rust backend, Knovum cold-boots in sub-second time and idles around 45MB of RAM. This leaves virtually all of your machine's physical memory dedicated to loading model weights.
2. Dual-Engine Embedded Storage
- SQLite: The canonical single source of truth for notes, cards, and relations, guarded by strict numbered migrations.
- Embedded LanceDB: Runs in-process on disk for fast vector similarity search without requiring Docker, external daemons, or Python runtimes.
3. Zero Lock-In with JSON Canvas
Every visual workspace is stored directly on your local filesystem using the open JSON Canvas (.canvas) specification. You can open, edit, and inspect any Knovum board directly in Obsidian Canvas or parse it with custom scripts.
What's New in Knovum 0.0.2
Here are the key improvements shipped in our 0.0.2 release:
1. Differential Space Indexing (Gap Indexing)
In traditional vector RAG setups, updating a document collection often triggers expensive full re-indexes. In 0.0.2:
- Rebuilding a space indexes only the gap (delta) instead of re-processing the entire space.
- The live index stays fully readable and searchable while the background rebuild runs.
- Indexing is managed as a first-class, cancellable job in the unified Task Center.
2. Streaming Conversation Boundaries
Streaming LLM answers now respect clear block boundaries instead of erasing or slicing through previous turns. Concurrency is strictly owned by a single writer per execution run.
3. Interactive Voice Preview
Knovum includes an on-device Whisper transcription engine. In 0.0.2, the voice library can be audited and heard before selection, and visualizes the active speaker in real time.
4. Hardened Windows Desktop
- Ships an opaque window with the WebView2 bootstrapper directly embedded.
- Startup failures fail visibly instead of leaving hidden zombie windows.
- The main window is revealed safely from the async runtime, eliminating white flashes on launch.
- Local model memory verification admits memory the OS can dynamically allocate rather than hard-failing.
5. Mutation-Aware Citation Integrity
When an LLM synthesizes an insight from your notes, the citation anchors to exact sentence-level character spans in the source note. If you edit or mutate the source note later, the citation badge automatically flags that the source has evolved—preventing silent hallucination decay.
Download & Open Source
Knovum is 100% free and open-source under the Apache-2.0 license.
- GitHub Repository: https://github.com/madebyzan/knovum
-
v0.0.2 Release Downloads: https://github.com/madebyzan/knovum/releases/tag/v0.0.2
- macOS (Apple Silicon
.dmg& Intel.dmg) - Windows (
x64-setup.exe)
- macOS (Apple Silicon
If you're interested in local-first software, spatial computing, or running LLMs on your own hardware, give the repository a ⭐ on GitHub and let us know your feedback!
來源:DEV Community · dev.to