Stratum¶
A privacy-first, offline-capable personal knowledge management system.
Notes are plain Markdown files on disk — zero vendor lock-in. Every paragraph is an addressable block. Wiki-links, graph visualization, Datalog queries, Git sync, and AI-augmented search — all powered by a Rust core.
-
Plain Markdown
Your notes are
.mdfiles readable by any editor. No proprietary format. -
Fully Offline
No cloud dependency. All features work without internet.
-
Knowledge Graph
Interactive force-directed graph of
[[wiki-links]]with connected components. -
Full-Text Search
Tantivy-powered search, sub-100ms at 10,000+ notes.
-
Datalog Queries
Query your knowledge graph with Datalog — EDN or JSON syntax.
-
AI-Powered
Pluggable LLM providers. Rewrite, summarize, link, research with RAG.
-
Git Sync
Auto-commit, push, pull. Your version history is built-in.
-
Extensible
WASM plugin runtime. Customize without forking.
Quick Start¶
# Nix (recommended)
nix develop ./nix
# Or build manually
cargo build --workspace
npm install
cargo tauri dev
See the Installation Guide for detailed setup.
Features at a Glance¶
| Feature | Description |
|---|---|
| Block Outliner | Every paragraph is a UUID-addressed block. Indent, outdent, drag, collapse. |
| Wiki-Links | [[Page Name]], [[Target\|Display]], ((block-ref)), {{embed}} |
| Tags | #tag inline and YAML frontmatter tags |
| Tasks | TODO, DOING, DONE markers with priorities |
| Graph View | Force-directed graph, connected components, orphan detection |
| Search | Full-text block search via Tantivy. Tag search with #tag |
| Datalog | Query blocks with Datalog: :find, :where, :pull |
| Journal | Daily notes, auto-created |
| Templates | Reusable templates with variable substitution |
| Flashcards | Spaced repetition (SRS) with question::/answer:: syntax |
| Whiteboards | Excalidraw spatial canvas |
| Math | KaTeX inline and display equations with symbol palette |
| Mermaid | Flowcharts, sequence diagrams, Gantt charts inline |
| AI | Rewrite, structure, summarize, connect with AI. RAG chat |
| Web Research | SearXNG-powered multi-depth research |
| Git Sync | Auto-commit, remote push/pull, conflict detection |
| Export | HTML and JSON export |
| CLI | Full CLI: init, list, search, stats, graph, sync, export |
| Plugins | WASM plugin runtime |
Why Stratum?¶
No vendor lock-in. Your knowledge is stored as plain Markdown files. If Stratum disappears tomorrow, you still have all your notes — readable by any text editor.
Privacy by design. Everything runs locally. AI providers are optional and self-hosted (Ollama) or configured to your own API keys.
Performance. Rust backend means sub-100ms search, instant graph rendering, and minimal memory usage (<80MB idle).
Block-based. Like Logseq, every paragraph is a first-class entity with a UUID. Link to specific blocks, embed them in other pages, query them with Datalog.
Project Status¶
Stratum is in active development. Version 0.5.0. All core features are implemented and working.
- License: AGPL-3.0-only
- Repository: github.com/short-circuit/stratum