麻雀の点数計算を学習するアプリ。
Turborepo で管理する Monorepo 構成です。
apps/web— Next.js Web アプリケーションpackages/core— UI 非依存の共有ドメインロジックpackages/eslint-config— 共有 ESLint 設定docs/— PaiForge/docs(git submodule — コーディング規約等)
- Node.js 24.x
- pnpm 10.x
Tip
Volta を導入済みであれば、package.json に定義された Node.js バージョンへ自動的に切り替わります。
volta pin node@24
volta install pnpm@10git clone --recurse-submodules https://github.com/PaiForge/mahjong-scoring.git
cd mahjong-scoring既にクローン済みで submodule が未取得の場合:
git submodule update --init --recursivepnpm installpnpm dev| コマンド | 説明 |
|---|---|
pnpm dev |
全アプリを開発モードで起動 |
pnpm build |
全アプリをビルド |
pnpm lint |
リント実行 |
pnpm typecheck |
型チェック |
pnpm test |
テスト実行 |
pnpm format |
Prettier でフォーマット |
コーディング規約は docs/ submodule で一元管理されています。
submodule を最新に更新するには:
git submodule update --remote docsSemantic Versioning に従います。
Git タグはアプリケーションごとにプレフィックスを付与します:
- Web:
web/v0.1.0,web/v0.2.0, ... - Mobile:
mobile/v0.1.0,mobile/v0.2.0, ...(予定)