Database definitions stored as .db.json (structure only, no row data)
File tree integration: database icons, click to open views
Fully Git-friendly and plaintext-friendly
🚀 Getting Started
Prerequisites
Node.js ≥ 18
Rust ≥ 1.70
npm or pnpm
Install & Run
Clone the repo
git clone https://github.com/blueberrycongee/Lumina-Note.git
cd Lumina-Note
Install dependencies
npm install
# or# pnpm install
Run in dev mode
npm run tauri dev
Build production app
npm run tauri build
Optional: PDF element recognition backend
To enable advanced interactive PDF element selection:
Install Python deps (first time only):
cd scripts
pip install flask flask-cors pymupdf
Start the server:
python simple_pdf_server.py
The server runs at http://localhost:8080.
Note: In the long term this Python service will be migrated to a Rust Tauri command so no extra runtime is required.
📖 Usage Guide
1. Choosing a Vault (Workspace)
On first launch you will be asked to select a folder as your vault.
⚠️ Important: do not choose huge directories (like your entire Documents or home folder).
Too many files will slow down indexing and RAG semantic search.
Recommended: create a dedicated folder like ~/LuminaVault or ~/Notes.
2. Basic Editing
Create a note: sidebar + button or Ctrl+N.
Switch editor mode (buttons in the top-right of editor):
Source – raw Markdown
Live Preview – rendered view while typing (recommended)
Reading – clean reading view, no editing
WikiLinks: type [[ to link to other notes (with auto-complete).
Tags: use #tag anywhere in the note; tags are indexed in the right sidebar.
3. Daily Quick Notes 📅
Click the calendar icon in the sidebar.
Creates a new Markdown file named like Quick_2025-12-02_06-00.md.
Perfect for meeting notes, daily logs, and scratch ideas.
4. Voice Notes 🎤
Click the microphone icon in the sidebar.
Speech is transcribed live into the editor.
Recording auto-stops after a few seconds of silence.
Button shows an animated ripple while recording.
Implemented with the browser’s Web Speech API – no extra install needed.
5. Knowledge Graph 🕸️
Open via the sidebar graph icon or command palette.
Interactions:
Click a node to open its note.
Drag nodes to reposition them.
Right-click a node to open an isolated view (only that node + neighbors).
Scroll to zoom in/out.
Visual features:
Folders as spiky balls, auto-colored per folder.
Child notes inherit folder color.
[[WikiLinks]] become edges between notes.
6. Theme Settings 🎨
Click the gear icon in the bottom-left to open Settings.
Choose from 15 built-in themes, each with light & dark mode.
Quickly toggle light/dark via the sun/moon icon in the title bar.
7. Using the AI Assistant
Configure API keys:
Open Settings → AI Settings (bottom-left gear icon)
Choose a provider and fill in your API key / base URL if needed
Click Save
Where you can use AI (all support Chat & Agent modes):
Right-side AI panel
Use the AI tab in the right sidebar to chat or run agents with the current note as context.
Floating AI ball
Enable in Settings. A draggable floating button appears; click it to open Chat / Agent anywhere without leaving your current view.
Main-view AI mode (left ribbon button)
Click the AI icon in the left ribbon to open a full-screen AI view in the main area – ideal for long conversations or complex Agent workflows.
RAG semantic search:
Turn on RAG indexing in Settings.
The Agent can then semantically search your whole vault to answer questions.
Note: the first indexing pass can be slow on very large vaults, so keep your workspace reasonably sized.
8. PDF Annotations
Open a PDF from the sidebar.
Select text to bring up the annotation toolbar.
Choose highlight color / underline or add a text note.
An annotation Markdown file <pdfname>.annotations.md is created/updated automatically.
In the annotation file, use the [📍 Jump] links:
Normal click: open PDF in the main pane and jump.
Ctrl+Click: open PDF in the split pane and jump.
9. Split View Editing
Toggle split view via the editor toolbar.
Click left/right pane to mark it as active (highlighted border).
When split view is on, opening a file from the sidebar will open it in the active pane.
Drag the divider to resize panes.
10. Dataview-style Database
Define database structure in a .db.json file.
Attach notes to a database via YAML frontmatter (db: projects).
Use table or Kanban view to browse & edit; changes sync back into note YAML.
🛠️ Architecture (High-level)
See the Chinese README or docs/ for more implementation details. In short: