logo
0
0
Login
Andy wu<lpageo@163.com>
docs: 更新全部 README (zh-CN/en/ja)
Lumina Note Logo

✨ Lumina Note

ローカル優先 · AI 駆動 · モダンな知識ベース

AI Agent を統合した Markdown ノートアプリで、あなたの第二の脳を構築しましょう。

Tauri React Rust License

Language: 简体中文 · English · 日本語

🚀 このプロジェクトは、2 人が AI 支援開発で 2 週間で構築しました。44,000 行以上のソースコードを含みます

クイックスタート機能使用ガイドアーキテクチャ


📸 スクリーンショット

AI Agent
AI Agent - 深層検索とノート要約

ナレッジグラフ
ナレッジグラフ - ノート間の関連を可視化

エディター
エディター - LaTeX 数式とバックリンク


🎯 Lumina Note とは?

Lumina Note は単なる Markdown エディターではありません。LLM ネイティブな知識ワークスペースです:

  • ローカル Markdown ボールト、Git フレンドリー
  • マルチプロバイダー LLM クライアント内蔵(8 プロバイダー対応)
  • ツール呼び出し機能を備えた AI Agent システム
  • 自分のノートに対する RAG セマンティック検索
  • PDF リーダー + 注釈システム
  • YAML 駆動の Dataview スタイル データベース
  • Bilibili 動画ノート、音声ノート、デイリーノート

✨ 主な機能

📝 没入型編集体験

  • 3つのエディターモードソース / ライブプレビュー / 閲覧
  • WikiLinks[[WikiLinks]] でグラフ型ナレッジネットワークを構築、ファイルツリーからのドラッグ&ドロップ対応
  • 美しいフォーマット:LaTeX 数式(KaTeX)、Mermaid、Obsidian スタイルのコールアウト > [!info]
  • シンタックスハイライト:CodeMirror 6 で数百の言語に対応
  • 分割ビューエディター
    • 水平/垂直分割
    • ドラッグ可能なディバイダーでリアルタイムリサイズ
    • アクティブペイン追跡:最後にクリックしたペインがファイル開く先になる
  • 画像貼り付けCtrl+V でスクリーンショットを直接貼り付け、自動でボールトに保存

🕸️ ナレッジグラフ

  • Canvas ベースの高性能ボールト可視化
  • フォルダはトゲトゲボールとして表示、子ノードはフォルダの色を継承
  • [[WikiLinks]] は自動的にノート間のエッジになる
  • ノードを右クリックで孤立ビューを開く(ノード + 隣接ノードのみ)
  • 物理シミュレーションによる自然なクラスタリング、ドラッグ/ズーム可能

🤖 AI Agent システム

  • マルチプロバイダー LLM サポート
    • Anthropic、OpenAI、Gemini、DeepSeek、Moonshot (Kimi)、Groq、OpenRouter、Ollama(ローカル)
  • Agent モード:エディター、オーガナイザー、リサーチャー、ライター
  • ツール:ノートの読み取り/編集/作成/移動/検索、データベースツール、RAG 検索、grep など
  • リアルタイム編集プレビュー:エディター内でアニメーション付き diff 再生
  • RAG セマンティック検索:ベクトル DB + オプションのリランカー
  • AI フローティングボール:ドラッグ可能なアシスタント、作業フローを中断しない
  • 音声入力:自動停止とアニメーション付きのストリーミング STT

🎬 Bilibili 動画ノート

  • アプリ内で Bilibili 動画を再生(Tauri マルチ WebView)
  • 特別なプレフィックス付き弾幕を送信してタイムスタンプ付きノートを作成
  • ノート内のタイムスタンプをクリックして動画をジャンプ
  • ノートは Markdown として保存され、次回自動的に読み込まれる

📄 PDF インテリジェントリーダー & 注釈

学術・研究ワークフロー向けに最適化。

  • インタラクティブ要素検出:テキスト、画像、表などを検出
  • 注釈システム
    • 選択テキストにハイライト/下線(5色)
    • ハイライトにテキストノートを追加
  • 注釈ストレージ
    • 純粋な Markdown ファイルとして保存:yourfile.pdf.annotations.md
    • PDF の隣に配置、Git フレンドリーで任意のエディターで編集可能
  • 双方向ジャンプ
    • PDF → 注釈ファイル
    • 注釈ファイル → lumina://pdf リンクで PDF の正確な位置へ
    • Ctrl+クリックで分割ビューで PDF を開いて注釈にジャンプ
  • サムネイルとアウトライン:ページサムネイルと目次サイドバー
  • 全文検索:ドキュメント内検索とハイライト
  • AI 統合:選択した PDF コンテンツを AI に送信して要約/翻訳

🎨 テーマ

  • 15 のビルトインテーマ、それぞれにライト + ダークバリアント(計 30 種類)
  • テーマは見出し/リンク/コード/引用など 17 以上の Markdown 要素に影響
  • テーマカラーに従ったカスタムタイトルバー、ウィンドウコントロール付き
  • すべてのテーマ設定は設定パネルで管理(左下の歯車アイコン)

📊 Dataview スタイル データベース

  • YAML frontmatter 駆動:ノートが真実の情報源
  • テーブルとカンバンビュー
  • 7 つのカラムタイプ:テキスト、数値、セレクト、マルチセレクト、日付、チェックボックス、URL
  • データベース定義は .db.json として保存(構造のみ、行データなし)
  • ファイルツリー統合:データベースアイコン、クリックでビューを開く
  • 完全に Git フレンドリーでプレーンテキストフレンドリー

🚀 クイックスタート

必要条件

  • Node.js ≥ 18
  • Rust ≥ 1.70
  • npm または pnpm

インストール & 実行

  1. リポジトリをクローン
git clone https://github.com/blueberrycongee/Lumina-Note.git cd Lumina-Note
  1. 依存関係をインストール
npm install # または # pnpm install
  1. 開発モードで実行
npm run tauri dev
  1. 本番アプリをビルド
npm run tauri build

オプション:PDF 要素認識バックエンド

高度なインタラクティブ PDF 要素選択を有効にするには:

  1. Python 依存関係をインストール(初回のみ):
cd scripts pip install flask flask-cors pymupdf
  1. サーバーを起動:
python simple_pdf_server.py

サーバーは http://localhost:8080 で実行されます。

注:長期的にはこの Python サービスは Rust Tauri コマンドに移行され、追加のランタイムは不要になります。


📖 使用ガイド

1. ボールト(ワークスペース)の選択

  • 初回起動時にボールトとしてフォルダを選択するよう求められます。
  • ⚠️ 重要:巨大なディレクトリ(Documents フォルダ全体やホームフォルダなど)は選択しないでください
    • ファイルが多すぎるとインデックス作成と RAG セマンティック検索が遅くなります。
    • 推奨:~/LuminaVault~/Notes などの専用フォルダを作成してください。

2. 基本編集

  • ノートを作成:サイドバーの + ボタンまたは Ctrl+N
  • エディターモードを切り替え(エディター右上のボタン):
    • ソース – 生の Markdown
    • ライブプレビュー – 入力中にレンダリングされたビュー(推奨)
    • 閲覧 – クリーンな閲覧ビュー、編集なし
  • WikiLinks[[ と入力して他のノートにリンク(オートコンプリート付き)。
  • タグ:ノート内のどこでも #タグ を使用;タグは右サイドバーにインデックスされます。

3. デイリークイックノート 📅

  • サイドバーのカレンダーアイコンをクリック。
  • Quick_2025-12-02_06-00.md のような名前の新しい Markdown ファイルを作成。
  • 会議ノート、デイリーログ、一時的なアイデアに最適。

4. 音声ノート 🎤

  • サイドバーのマイクアイコンをクリック。
  • 音声がリアルタイムでエディターに文字起こしされます。
  • 数秒の無音後に録音が自動停止。
  • 録音中はボタンにアニメーションの波紋が表示されます。
  • ブラウザの Web Speech API で実装 – 追加インストール不要。

5. ナレッジグラフ 🕸️

  • サイドバーのグラフアイコンまたはコマンドパレットから開く。
  • インタラクション:
    • ノードをクリックしてそのノートを開く。
    • ノードをドラッグして位置を変更。
    • ノードを右クリックして孤立ビューを開く(そのノード + 隣接ノードのみ)。
    • スクロールでズームイン/アウト。
  • ビジュアル機能:
    • フォルダはトゲトゲボール、フォルダごとに自動着色。
    • 子ノートはフォルダの色を継承。
    • [[WikiLinks]] はノート間のエッジになる。

6. テーマ設定 🎨

  • 左下の歯車アイコンをクリックして設定を開く。
  • 15 のビルトインテーマから選択、それぞれライト&ダークモード。
  • タイトルバーの太陽/月アイコンでライト/ダークをすばやく切り替え。

7. AI アシスタントの使用

  1. API キーを設定

    • 設定 → AI 設定を開く(左下の歯車アイコン)
    • プロバイダーを選択し、必要に応じて API キー / ベース URL を入力
    • 保存をクリック
  2. AI を使用できる場所(すべて Chat & Agent モード対応)

    • 右側 AI パネル 右サイドバーの AI タブで、現在のノートをコンテキストとしてチャットまたは Agent を実行。
    • フローティング AI ボール 設定で有効化。ドラッグ可能なフローティングボタンが表示され、現在のビューを離れずにどこでも Chat / Agent を開けます。
    • メインビュー AI モード(左リボンボタン) 左リボンの AI アイコンをクリックしてメインエリアにフルスクリーン AI ビューを開く – 長い会話や複雑な Agent ワークフローに最適。
  3. RAG セマンティック検索

    • 設定で RAG インデックスをオンにする。
    • Agent がボールト全体をセマンティック検索して質問に回答できるようになります。
    • 注:最初のインデックス作成は非常に大きなボールトでは遅くなる場合があるので、ワークスペースは適度なサイズに保ってください。

8. PDF 注釈

  1. サイドバーから PDF を開く。
  2. テキストを選択して注釈ツールバーを表示。
  3. ハイライト色/下線を選択するか、テキストノートを追加。
  4. 注釈 Markdown ファイル <pdfname>.annotations.md が自動的に作成/更新されます。
  5. 注釈ファイルで [📍 ジャンプ] リンクを使用:
    • 通常クリック:メインペインで PDF を開いてジャンプ。
    • Ctrl+クリック:分割ペインで PDF を開いてジャンプ。

9. 分割ビュー編集

  • エディターツールバーで分割ビューを切り替え。
  • 左/右ペインをクリックしてアクティブとしてマーク(ハイライトされた境界線)。
  • 分割ビューがオンのとき、サイドバーからファイルを開くとアクティブペインで開かれます。
  • ディバイダーをドラッグしてペインをリサイズ。

10. Dataview スタイル データベース

  • .db.json ファイルでデータベース構造を定義。
  • YAML frontmatter でノートをデータベースにアタッチ(db: projects)。
  • テーブルまたはカンバンビューで閲覧&編集;変更はノート YAML に同期されます。

🛠️ アーキテクチャ

詳細な実装については、中国語 README または docs/ を参照してください。概要:

  • フロントエンド:React 18 + TypeScript + Tailwind + Zustand + CodeMirror 6
  • バックエンド:Tauri v2 + ファイルシステムとベクトル DB 用の Rust コマンド
  • RAG:SQLite ベースのベクトルストア、複数の埋め込みバックエンド、オプションのリランカー

🗺️ ロードマップ

✅ 完了

  • Core:マルチプロバイダー LLM サポート(8 プロバイダー)
  • Agent:ツール呼び出し機能を備えた AI Agent システム(4 モード + 14 ツール)
  • RAG:セマンティック検索付きローカルベクトルデータベース(+ リランカー)
  • UI:ストリーミングレスポンス付き AI フローティングボール
  • Video:Bilibili 動画ノート(埋め込み WebView + 弾幕同期)
  • STT:音声テキスト変換(ストリーミング + 自動停止 + 録音アニメーション)
  • Theme:15 のビルトインテーマ + Markdown カラーカスタマイズ
  • Settings:中央モーダル設定パネル
  • PDF:スマート PDF リーダー(要素検出 + インタラクティブ選択 + AI チャット)
  • PDF 注釈:ハイライト/下線/ノート、Markdown ストレージ、双方向ジャンプ
  • 分割エディター:アクティブパネル追跡付きリサイズ可能な分割ペイン
  • データベース:Dataview スタイル YAML 駆動テーブル/カンバンビュー
  • 画像貼り付け:スクリーンショットを直接エディターに貼り付け、自動でボールトに保存
  • ドラッグ&ドロップ WikiLinks:ファイルツリーからエディターにドラッグして [[WikiLink]] を挿入
  • WebDAV 同期:堅果雲などの WebDAV サービスで双方向ボールト同期
  • フラッシュカードシステム:ノートからフラッシュカードを生成、間隔反復復習(基本/穴埋め/選択問題)
  • 多言語サポート:中国語/英語/繁体字中国語/日本語の国際化
  • ダイナミックルーティング:インテント認識 + マルチモデルルーティングでスマートなタスク分配
  • バックリンクパネル:現在のノートを参照しているノートを表示、クリックでナビゲート
  • タグ集約:タグリスト + カウント、展開して関連ノートを表示
  • PDF エクスポート:ノートをワンクリックで PDF にエクスポート

🚧 進行中

  • PDF Rust 移行:Python PDF 解析サービスを Rust に移植
  • カレンダービュー:データベースのカレンダービュー

📋 計画中

  • テンプレートシステム:新規ノート作成時にテンプレートを選択
  • HTML/Word エクスポート:より多くのエクスポート形式
  • プラグインシステム:プラグイン API 設計
  • Git 同期:Git バージョン管理統合
  • モバイル:iOS / Android 対応

🤝 コントリビューター


📄 ライセンス

Lumina Note は Apache 2.0 License の下でオープンソースです。