Newer
Older
TelosDB / docs / specification / 05_development_guide.md

開発ガイド (Development Guide)

1. ディレクトリ構成

パス 内容
src/frontend/ UI(Vanilla JS / CSS)。React/Vite は未使用。
src/backend/ Rust / Tauri / Axum。MCP サーバー・LSA・埋め込みエンジン。
docs/specification/ 本仕様書群。
.agent/rules/ AI エージェント用プロジェクト運用ルール。

2. ビルド・起動

開発時

  • Community: npm run dev(Tauri 1 プロセスで 8474 + 3001)
  • Pro: npm run dev:proembedding_model/ に ONNX モデルと vocab を配置すること。

本番ビルド(2 エディション)

  • Community: npm run build:community
    • 設定: src/backend/tauri.community.conf.json(productName: TelosDB-Community、vec0.dll のみ同梱)
  • Pro: npm run build:pro
    • 設定: src/backend/tauri.pro.conf.json(productName: TelosDB-Pro、埋め込みモデル等を含む)

それぞれ別名のインストーラ(例: TelosDB-Community_*.exe, TelosDB-Pro_*.exe)が生成されます。

Cargo feature

  • デフォルト: Community(LSA)。cargo build で LSA のみ。
  • Pro: cargo build --no-default-features --features pro。埋め込み・HNSW 等の Pro 用コードが含まれる。

3. バックエンド開発

  • DB: sqlite-vec(vec0)でベクトル、FTS5 で全文検索。次元は Community 50 / Pro 768。
  • MCP: src/backend/src/mcp/mod.rs でルーティング・ツール登録。
  • LSA: lsa.rs で SVD による 50 次元ベクトル化(Community)。
  • 埋め込み: Pro は utils/embedding_pro.rs 等。ONNX(tract または ort)で 768 次元。詳細は 07_embedding_tract.md

4. フロントエンド開発

  • 通信: Tauri の invoke / listen でバックエンドと非同期通信。MCP は 3001 で別接続。
  • UI: Vanilla CSS。デザイン方針は 06_ui_design_spec.md

5. テスト・検証

  • ゴール・KPI: 08_embedding_tract_goals_and_kpi.md
  • 検証手順: 09_embedding_tract_implementation_and_tests.md
  • UI テスト方針: 12_ui_testing_options.md