A local-first knowledge management studio for structured data and synthesis. Built with React, SQLite WASM, and Orama search.
- ✍️ Structured Editor: Tiptap-based editor with claims and entity mentions. (
src/features/editor/) - 🕸️ Knowledge Graph: Interactive visualization of entities and links using Sigma.js. (
src/features/graph/) - 🗺️ Mind Maps: Hierarchical organization via Mind Elixir. (
src/features/mindmap/) - 🔍 Local RAG: Semantic search and chat powered by Orama. (
src/features/chat/,src/features/search/) - 💾 Local-first Storage: SQLite WASM + OPFS for high-performance persistence. (
src/db/) - 📦 Static Export: Export your knowledge base to a portable static site. (
src/features/export/,cli/) - 🤖 Agent Harness: Integrated support for AI coding agents with structured skill system. (
.agents/)
- Build: Vite 8 (Rolldown + Oxc Minifier)
- Language: TypeScript 5 + ESLint v9 flat config
- Runtime: React 18 + SQLite WASM + OPFS
- Search: Orama (Local RAG)
- Visuals: Sigma.js, Mind Elixir, Tiptap
- Testing: Vitest (jsdom) + Playwright
- Node.js 20+
- npm 10+
npm installnpm run devThe application will be available at http://localhost:5173.
# Sync markdown files to the database
npm run cli -- sync ./my-notes
# Export to static site
npm run cli -- export --format site --output ./dist-siteThe application follows a decoupled architecture where the UI layer communicates with a central SQLite repository via a worker-managed connection pool.
UI (React) <-> Connection Pool <-> SQLite Worker <-> OPFS
| |
v v
Chat/Search <---> Orama Index
src/db/: Core storage logic, SQLite WASM initialization, and repository pattern.src/features/: Feature-specific UI and logic islands.src/lib/: Shared utilities for search, jobs, and validation.cli/: Automation layer for sync and export..agents/: AI agent skills and configuration.
npm run typecheck && npm run lint && npm test && npm run test:e2eMIT