Moonkale (Under Development)
Introduction
Currently, tooling for editing both code and knowledge is fragmented:
- Code editors: VSCode, JetBrains, Zed, etc.
- Knowledge editors: Obsidian, Logseq, Notion, … as well as Wikis
- Most editors open folders in the file system, but it would often be more beneficial to work directly with structured data, such as from (graph) databases.
- No-code/low-code/diagrams are rarely a natural extension of such editors.
- Not built with Retrieval Augmented Generation (RAG) or Unison-like compilers in mind.
Moonkale is an attempt to unify code + knowledge editing in a lightweight, extensible, and performant system.
Architecture
Frontend
- Deno + Vite powers the frontend, keeping the stack lightweight and TypeScript-native.
- Lumino owns the DOM for flexible, IDE-like layouts.
- Planned components:
- Cytoscape – Graph visualization and interaction.
- Milkdown – Markdown editing for knowledge management.
- CodeMirror – Code editing.
- and many more …
Backend
-
Tauri + Rust provides a performant backend while keeping the frontend decoupled.
-
Backend responsibilities:
- File management – Local folder support (discouraged but implemented for completeness).
- Database backend – Starting with embedded databases:
- DuckDB / SQLite
- Kuzu / Ladybug
- Later support for Postgres, Neo4j, Helix, Redis/Falkor, TypeDB, etc.
- Later: Parsing tools like treesitter (for code) or cocoindex (for documents)
-
Keep the frontend simple, fast, and extensible. No heavy frameworks; Lumino manages layout.
-
Discourage very large files; prefer small, structured artifacts.
-
Cross Platform Compatibility Minus certain extensions it should run on Desktop, Mobile and Web