このプロジェクトについて

OpenBandは、Expo Router、React Native Web、TypeScriptで構築された、ブラウザで動作するオープンソースのミュージックプロダクションプラットフォームである。READMEでは、開始、聴取、形作り、完成、保存または共有という段階で、音楽のアイデアを一つの場所で進められるように設計されている。アカウントは不要である。 リポジトリでは、マルチトラックオーディオのレコーディングとアレンジ、MIDIのピアノロール、ルーパーとコードトラック、サンプラー、シンセサイザーとビートメイカー、ギターペダルボードとアンプ/キャビネットモデリングチェーン、ステム分離(オプションでローカルのDemucs)、チューニングとタイム/ピッチツール、ミキサーとエフェクト、バス、スナップショット、LUFSメーター、マスタリングとエクスポートなどが含まれる。クリエイティブモードと3Dスタジオルームも言及されている。コラボレーション機能として、プレゼンス、CRDTベースの編集とブランチがオプションのバックエンドサービスに依存して進化している。 提供は明示的にアルファとして位置付けられている。ウェブアプリはデモとして公開されており、Electronデスクトップ、Android、iOSはビルドからソースターゲットであり、署名付きストアリリースではない。READMEでは、検証済みのリリースリンクが存在するまで、モバイルストアリストや署名付きデスクトップダウンロードは主張しておらず、重要な作業のバックアップを保持するようにユーザーに警告している。 ローカルで実行するには、Node.js 22以降とnpm、Python 3.12(ローカルのDemucsステム分離のみ)が必要である。フロントエンドは、開発用のフォールバックを使用して.envファイルなしで開始でき、READMEではこれは探索とテストのために使用し、生産サービスを証明するものではないと記載されている。オプションのExpress APIは、ローカル開発ではデフォルトでSQLiteを使用し、Supabase/PostgreSQLとオブジェクトストレージをホストオプションとして使用する。デスクトップビルドは、Electronを介してOpenBandNativeブリッジを使用し、フロントエンドスクリーンはElectron APIを直接呼び出さないように設計されている。 アーキテクチャは層状である。UI(Expo Router、React、React Native Web、TypeScript)は、型付きの音楽とプロジェクトコアと通信し、ローカルプロジェクトとアセットストア、Web Audio / expo-audio / WASMオーディオ、およびオプションのAPIに接続する。スタイリングにはNativeWind/Tailwindトークンが使用され、ステートにはReactコンテキストとZustandが適切に使用され、バリデーションにはTypeScript、Vitest、Playwrightスモークテスト、そしてアーキテクチャグラフチェックが含まれる。便利なコマンドには、npm run lint、npm test、npm run test:legacy、npm run test:graph-sdd、npm run graph:ci、npm run buildがあり、バックエンドの型チェックにはnpx tsc --noEmitが使用される。 ドキュメントはアルファのために異常に詳しく、製品戦略、建築、ビルド設定、機能実装状況、ロードマップ、契約、建築決定レコード、市場基盤、スクリーンショット/UI監査仕様が含まれる。コントリビューションはPRファーストであり、大きな変更にはGitHub Spec Kitを使用し、AGENTS.mdポリシーを持つ。リポジトリはMIT条項の下にあり、READMEでは依存関係、モデル、サンプル、クリエイター提供の素材はそれ自身の条項を保持し、帰属とサードパーティ通知はまだ発射レビュー項目であると記載されている。プロジェクト名は、ブランドクリアランス待ちのワーキングネームと説明されている。