ブラウザ上で動作する単一ファイルのHTMLアプリケーション(ゲーム、ツールなど)をまとめたリポジトリです。 HTML/CSS/JavaScript が 1 つのファイルに完結しているため、サーバー環境なしでローカルですぐに実行・確認できます。
| アプリ名 | 説明 |
|---|---|
| Random Picker | 改行区切りで入力したテキストからランダムで1つを選ぶツール |
apps/<app-name>/generated/index.html をブラウザ(Chrome, Edge, Safari, Firefox など)で開いてください。リポジトリ内のロジックと生成物の健全性を保つため、TypeScript・Vitest・Playwright を使った検証を導入しています。
npm install
npm run build
npm run precommit
npm run build は scripts/build-all.ts に並べた node .../build.ts を順番に実行します。
npm run precommit は整形、型チェック、Vitest、build、Playwright をまとめて実行する標準コマンドです。
Git 管理対象のファイルを 1 枚の Markdown にまとめたい場合は、次のコマンドを使えます。
npm run concat
このコマンドはリポジトリのルートディレクトリを対象にして、generated/concat.txt に出力します。
未追跡のファイルも収集対象に含めるため、git add 前の新規ファイルもそのまま確認できます。
npm run tscheck
npm run test:unit
npm run test
npm run test:e2e
npm run tscheck は scripts/typecheck-all.ts に並べた tsc --noEmit -p ... を順番に実行します。
npm run test:unit は JSDOM を使用し、src/ のロジックと generated/index.html の挙動を検証します。
npm run test は test:unit のあとに test:e2e を実行します。
npx playwright install chromium
npm run test:e2e
npm run test:e2e と npm run test:e2e:headed は、Playwright 実行前に build ランナーで最新の generated/index.html を再生成します。
ヘッドありで確認したい場合:
npm run test:e2e:headed