開発者ガイド
Universe Mapは静的なAngular・Three.jsアプリケーションです。レンダリングエンジンは フレームワーク非依存で、Angularが型付きファサードとエンジンイベントを通じてUIを 管理します。
インストールと実行
必要環境:Node.js 22とnpm。
git clone https://github.com/Nayruuu/my-universe.git
cd my-universe/client
npm ci
npm startAngular開発サーバーは既定でhttp://localhost:4200に起動します。
アーキテクチャ
client/src/
├── app/ Angular UI、状態、検索、設定、URL同期
├── engine/ Three.jsシーン、カメラ、描画、LOD、タイル、シミュレーション
└── data/ 厳密なモデルと実行時検証
client/public/
├── data/ バージョン管理された静的天文データ
└── textures/ ローカルテクスチャと出典
docs/guide/ 公開ガイドのMarkdown原稿client/src/engineはAngularをインポートしません。Three.jsリソースを作る単位が破棄も 担当し、時間計算はレンダーループから分離します。
主なコマンド
cd client
npm run typecheck
npm run lint
npm run test:data
npm run test:coverage
npm run build
npm run test:e2e
npm run verify:ci
npm run verifyカバレッジゲートは本番コードの文・分岐・関数・行すべて100%を要求します。verify:ci は高速なデプロイゲート、verifyは全デスクトップ・モバイルPlaywrightテストを追加します。
アプリとガイドはフランス語、英語、スペイン語、ドイツ語、イタリア語、韓国語、日本語、 簡体字中国語に対応します。アプリは/fr/から/zh/を使用し、英語ガイドは/guide/、 翻訳は/guide/ja/や/guide/fr/以下にあります。中国語の標準タグはzh-Hansです。
I18nServiceはエンジンをAngularに結合せず文言、数値形式、翻訳名を管理します。 SeoServiceはメタデータ、canonical、hreflang、マニフェスト、JSON-LDを同期し、ビルドは 検索エンジンが直接読めるHTMLを生成します。データパイプラインはブラウザ外でカタログを 正規化して静的バイナリやタイルを作ります。実行時APIを追加しないでください。
プルリクエストではUI–エンジン境界を守り、科学計算に独立参照テストを加え、表示に関わる 変更はnpm run verifyで完了させます。完全な資料はdocs/TECHNICAL_REFERENCE.mdです。
次へ:よくある質問。