N本の振り子の振動でQRコードを「組み上げる」視覚演出ツール。完成QRはWikipediaのランダム記事を指す。
- 1〜30 本の振り子が異なる周期で同時に振れる
- 各振り子が下端のボタンを叩くたび、QR コードのセルが 1 つずつ充填される
- 全セル充填後、グレーから白へフェードする「現像」演出で QR が完成する
- 完成 QR を読み取ると
https://ja.wikipedia.org/wiki/Special:Random経由で Wikipedia のランダム記事に飛ぶ - X(Twitter)共有ボタンでツールページを共有できる
- ページを開く
- 下部スライダーで振り子の本数 N を選ぶ(1〜30、デフォルト 21)
- ▶ ボタンで再生開始 → 振り子が QR を組み上げる
- ∥ で一時停止、↺ でリセット、X で共有
- 完成 QR を別端末で読み取って Wikipedia へ
シングル HTML 完結なので、静的ファイルを配信できれば何でも動きます。
# Python 標準ライブラリ
python -m http.server 8000
# または Node.js
npx http-server -p 8000ブラウザで http://localhost:8000/ を開く。
file:// で直接開いても基本動作はしますが、X 共有ボタンの URL が
file:///になるためデプロイ後の挙動とは異なります。
huriko-do/
├── index.html # アプリ本体(シングル HTML)
├── README.md # このファイル
└── docs/
├── spec.md # 仕様書(コード実装の正)
├── conventions.md # 命名・規約
├── types.md # 共通型定義
├── dev-guide-config.md # 開発進行設定
├── test-plan.md # 動作検証チェックリスト
├── test-results.md # 検証結果
└── skip-log.md # スキップ判断の記録
- HTML / CSS / 素の JavaScript(IIFE)
- Canvas 2D
- 外部依存(CDN のみ):
- qrcode-generator
@1.4.4 - Google Fonts (JetBrains Mono)
- qrcode-generator
ビルドツール・パッケージマネージャ・テストフレームワークは不使用。
GitHub Pages でリポジトリルート(index.html)をそのまま公開できる。