麻雀初心者には難解とされる点数計算を行う Web アプリケーション (Progressive Web Apps) 。
麻雀牌のパレットをタップして牌姿を入力すると、すべての待ち牌と点数を一覧表示。麻雀のルールを理解したばかりの人でも自分で簡単に点数計算をすることができる。待ち牌もすべて表示されるため、難解な多面待ちの確認も行える。点数計算において混乱することがある符の詳細情報も表示可能。供託や積み棒を考慮した点差の計算機能も搭載。いくつかのルールの変更にも対応。 i18next による国際化に対応。
TypeScript による堅牢な開発環境を実現。 webpack を用いることで画像やスクリプトを単一ファイルにバンドルし、アプリケーションの配信を最適化。 Rust を使用した WebAssembly の採用により処理の一部を高速化。 Workbox による Service Worker の実装により、オフライン動作やアプリケーションのアップデートに対応。 prefers-color-scheme
によるダークモードに対応。 Dependabot で依存関係更新の Pull Request を自動生成するよう設定。
技術スタック
- TypeScript
- React
- WebAssembly (Rust を使用)
- webpack
- Workbox
- ESLint
- Prettier
- Tailwind CSS
- GitHub Actions
- AWS (S3, CloudFront, Route 53)