Deodat-Lawson/LaunchStack
AI-powered StartUp Accelerator Engine built with Next.js, LangChain, PostgreSQL + pgvector. Upload, organize, and chat with documents. Includes predictive missing-document detection, role-based workflows, and page-level insight extraction.
LaunchStack – AIネイティブアプリのためのTypeScriptエンジン
概要 – LaunchStackは、ドキュメントの取り込み、OCR、ベクトルストアRAG、ナレッジグラフの処理、LLMチャットの抽象化、バックグラウンドジョブのオーケストレーション、および関連ユーティリティ(crypto、guardrails、creditsなど)といった、ほとんどのAI駆動型製品が必要とする基盤をパッケージ化した、オープンソースのTypeScriptファーストなフレームワークです。コアエンジンは意図的にフレームワークに依存しない設計になっており、Next.jsのリファレンスアプリ(apps/web)では、ホストがエンジンのポートを具体的なサービス(Postgres + pgvector、S3、Inngestなど)にどのように接続するかを示しています。
主要パッケージ
| パッケージ | ステータス | 役割 |
|---|---|---|
@launchstack/core |
未公開(Changesets経由でリリース予定) | レイヤードエンジン(protocol, evidence, application, adapters)を再エクスポートするファサード。DB、LLM、embeddings、OCR、RAG、graph、crypto、guardrails、ingestion、providers、storage、jobs、credits、errorsを提供します。 |
@launchstack/features/* |
内部用 | コアの上に構築された、すぐに使える垂直統合型機能(例:ドキュメントの取り込み、リーガルテンプレート生成、マーケティングパイプライン、音声、トレンド検索)。 |
packages/protocol, evidence, application, adapters |
内部用 | 低レイヤー:契約(contracts)、純粋なドメインロジック、ユースケースのポート、具体的なアダプター。 |
apps/web |
– | ポート(S3 storage、Inngest job dispatcher、PostgreSQL DBなど)を実装し、UI、認証、およびエンドユーザー体験を提供するNext.jsホスト。 |
apps/worker |
– | 取り込みアウトボックスを処理し、バックグラウンドジョブを実行する、耐久性のあるワークフローランナー。 |
services/ |
– | NodeまたはPythonで記述された、小さな補助サービス(ドキュメント変換、文字起こし)。pnpm workspaceの一部ではありませんが、エンジンによって使用されます。 |
アーキテクチャの概要
apps/web (Next.js host) ──► createEngine(config) ──► @launchstack/core
│ │
│ registers ports: StoragePort (S3), JobDispatcherPort (Inngest),
│ CreditsPort (DB), RagPort (hybrid pgvector + Neo4j), …
▼ ▼
@launchstack/features/* (vertical use‑cases) engine internals (db, llm, ocr, …)
- コア(core)はNext.js、React、またはUIフレームワークについて何も知りません。型付きのポートのみを公開します。
- 機能(Features)はそれらのポートのみをインポートします。ホストのコードにアクセスすることはできません。
- ホスト(host、Next.jsアプリ)は、ポートに対する具体的な実装を提供し、環境変数を提供します。
- すべての設定は
CoreConfigオブジェクトを介して渡されます。エンジンはprocess.envを直接読み取ることはありません(ESLintによって強制されます)。
プロジェクトの実行方法
- 前提条件 – Node ≥ 20、
pnpm10.15.1(corepack enableを使用)。 - Docker (推奨) –
make up-prod(ライトスタック)またはmake up-ocr(Docling OCRを追加)。停止およびオプションでボリュームの削除を行うには、make down/make down-cleanを使用してください。 - Dockerなし –
pgvector拡張機能を持つPostgreSQLインスタンスを用意し、マイグレーション/シードコマンドを実行した後、pnpm --filter @launchstack/web devおよびpnpm --filter @launchstack/worker devを介してwebおよびworkerパッケージを実行します。 - チャット設定 – デフォルトでは、エンジンはGoogle GeminiのOpenAI互換エンドポイントと通信します。
CHAT_BASE_URLおよびCHAT_API_KEYを使用して、OpenAI互換サービス(OpenRouter、Ollama、vLLMなど)を指すように上書きできます。Embeddings、OCR、文字起こしなどは、個別の認証情報スロットがあります。
現在のステータス
- エンジンパッケージはnpmに未公開です。最初のリリースは、リポジトリの
release.ymlワークフローを通じて自動化されます。 - リファレンスアプリはローカルまたはDocker経由で実行可能であり、ingestion → vector store → RAG → チャット(guardrails付き)という、完全に機能するデモモジュールを実演演習します。
- ロードマップ項目(
mcp,workflow-generation,rules-extraction,connectors)は、現時点ではスキャフォールディング(枠組み)としてのみ存在します。
対象ユーザー
- ドキュメントの処理、検索拡張生成(RAG)、およびLLM駆動型エージェントのために、堅牢で型付きの基盤が必要なAIネイティブSaaS製品を構築するチーム。
- ビジネスロジック(エンジン)とインフラストラクチャ(ホスト)の間のクリーンな分離を好み、TypeScriptファーストでポートベースの設計を好む開発者。
- 垂直統合型機能の拡張や、新しいアダプター/プロバイダーの追加に関心のあるオープンソースコントリビューター。
貢献方法
CONTRIBUTING.mdのガイドラインに従ってください。- 公開されたエンジンパッケージへのすべての変更は、Changesetを伴う必要があります。
- リンティング(カスタムのインポート境界ルールを含む)は、CIのブロック要因となるCIステップです。そのため、core-features-hostの分離を維持してください。
ライセンス – Apache 2.0.
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト