Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,687 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

solid-imager

AI生成画像などのメディアを管理する包括的なメディア管理システム。

機能

  • 複数メディアソース対応(ローカル/SFTP/S3)
  • メタデータ管理(プロンプト、タグ、キャラクター、IP)
  • 検索・ソート・サムネイル生成
  • リアルタイム更新 (SSE)
  • AI自動タグ付け

技術スタック

Runtime: Bun
Framework: TanStack Start
API: oRPC
UI: Kobalte + Tailwind CSS + solid-ui
Database: PostgreSQL / PGlite
ORM: Drizzle ORM
Validation: Zod
AI/ML: dghs-imgutils-rs
Testing: Vitest / Playwright
Tooling: Vite / Biome

プロジェクト構成(モノレポ)

  • apps/server/: メインサーバー (TanStack Start + oRPC)。バックエンドAPIとWeb UIを統合。
  • apps/tauri/: Tauri アプリ。src/ は独立 SPA、src-tauri/ は Rust 実装。
  • apps/cli/: メディア管理・同期用CLIツール。
  • apps/xtracter/: メディア収集用ブラウザ拡張機能。
  • packages/core/: ドメインモデル、Zodスキーマ、contract、各種 port。
  • packages/application/: ユースケース・アプリケーションサービス。
  • packages/db/: Drizzle schema、DB repository 実装、transaction manager。
  • packages/ui/: 共通UIコンポーネントライブラリ。
  • packages/client/: oRPC client factory などの共有クライアント基盤。

セットアップ

bun install
cp apps/server/.env.example apps/server/.env
sudo -E docker compose --project-directory . up -d
bun --filter @solid-imager/server run db:migrate
bun run dev

PostgreSQLを使わずPGliteで動かす場合は、DB_HOSTを上書きしてマイグレーションを実行します。

DB_HOST=pglite bun --filter @solid-imager/server run db:migrate

AI ネイティブ依存(GPU 対応)

AI自動タグ付けに使用する dghs-imgutils-rs は Rust の N-API アドオンです。GPU (CUDA) を有効にするには、システムにインストールされた共有 ONNX Runtime を動的リンクしてビルドしてください。

ORT_PREFER_DYNAMIC_LINK=1 ORT_LIB_PATH=/usr/lib bun install

要件:

  • /usr/lib/libonnxruntime.so.1/usr/lib/libonnxruntime_providers_cuda.so が存在すること
  • NVIDIA ドライバーと CUDA ランタイムがインストールされていること

CPU のみで使用する場合は通常通り bun install してください。

主要スクリプト

コマンド 用途
bun run dev 開発サーバー起動
bun run check lint / format / typecheck
bun run test Vitest テスト
bun run format Biomeによるformat
bun run lint lint
bun --filter @solid-imager/server run db:generate マイグレーション生成

設定ファイル

ファイル 用途
packages/db/src/schema.ts Drizzle DBスキーマ
apps/server/drizzle.config.ts DB接続、マイグレーション
biome.json Linter/Formatter
vitest.config.ts Vitest projects
apps/server/playwright.config.ts E2Eテスト
compose.yml PostgreSQL (Docker)

詳細

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages