Pick a project — type it, watch it come alive. Progress is stored only in your browser.
本物のコードを打つ — 打ち終えた作品がすぐ隣で動き出す。
ファイルはブラウザから送信されません — 処理はすべてローカルで行われます。
Pick a project — type it, watch it come alive. Progress is stored only in your browser.
Type Quest は「成果物が残る」コードタイピング練習です。各レッスンは小さな自己完結型のフロントエンド作品(動くデジタル時計、跳ねるボールのアニメーション、CSSローダーなど)で、あなたが打つコードがそのまま実行されるコードです。易しいレッスンでは打つそばからプレビューが育っていき、難しいレッスンでは最後の1文字を打った瞬間に完成した作品が一気に描画されます。タイピングテストを終えるのではなく「動くもの」を完成させる体験で、打ち上げた作品は単一のHTMLファイルとしてダウンロードできます。
タイピングエンジンは数字をごまかしません:難しい文字の自動スキップなし、バックスペースにも実コスト、表示されるWPMは未修正エラーを差し引いたネットWPMです。行頭インデントは自動処理されるので、意味のある文字に集中できます。正しいキーを連続で打つとコンボ倍率が上がり、正打ごとにペンタトニック音階を昇る音が鳴り(コンボでオクターブが上がる)、レッスンクリアで8bitファンファーレが流れます。
毎回のプレイ後には計測機器スタイルの結果レポート — セッション中のWPM曲線、キー別レイテンシヒートマップ、最も遅い記号Top 5、正確率、最大コンボ — が表示され、進捗はローカルに蓄積されます:レッスン別ベストWPM、セッションをまたぐ成長曲線、苦手キーの統計。すべてブラウザのlocalStorageのみに保存され、アップロードもアカウントも不要。ボタン1つで全消去できます。
ボス戦はこのゲームのクライマックスです。断片ではなく丸ごと1つの動くプロジェクトを、ボスの反撃を受けながら打ち切ります:マークされた文字まで期限内に打ち急ぐ「ラッシュ」攻撃、時間内ノーミスで耐える「フォーカス」の呪い、画面シェイク、表示がわざと嘘をつく「タイポトラップ」、さらに全体の制限時間も。あなたのミスはボスの必殺技を、高コンボの継続はあなたの必殺技をチャージします。プレビューは最後の1文字までロックされ、打ち終えることこそがとどめの一撃 — たった今自分が打ち上げた作品が画面上でボスを倒します。コンボは音楽そのものも動かします:パーカッションのパルスがタイピングを支え、コンボ階級が上がるほどベースラインとメロディ伴奏が重なり(テンポはあなたの打鍵速度に追従)、コンボが切れると曲はパルスだけに剥がれ落ちます。
レッスンのコードはすべて本サイト向けにオフラインで機械生成されたオリジナルコードです。第三者のコードは一切使っていません。一貫したスタイルで整形され、パース可能かつ実際に動くことを検証済みです。
Type Quest はフロントエンド言語だけにとどまりません。TypeScript のレッスンは完全に実行可能で、型付きソースを打つと、ライブプレビューはそれをオフラインでトランスパイルした JavaScript を実行します。Python・C・C++・Go・Rust・Java はタイピング専用です。ブラウザではこれらを実行できないため、ライブプレビューはなく、プレイ画面もそのことを正直に伝えます —— 見返りはタイピング練習そのもので、慣用的で難易度に応じたスニペット(チャネルを使った Go のワーカープール、ライフタイムと match を使う Rust のジェネリックスタック、Java のストリーム処理、C++ のテンプレートと STL など)を打ちます。各言語はそれぞれの流儀(4スペースインデント、または Go の gofmt のタブ)で整形されます。タブも行頭インデントとしてスペースと同じように自動スキップされるので、打つ必要はありません。ブラウザ内のパーサーではこれらの言語を Web レッスンのように検証できないため、タイピング専用スニペットはすべて出荷前に人手でレビューしています。レッスン一覧の上にある言語フィルターで、目的の言語へ直接ジャンプできます。
レッスンライブラリはマップでもあります:各プロジェクトタイプが1つの「リージョン」で、それぞれ独自の難易度ラダーを持ち、1ステップをクリアすると同じリージョンの次のステップが解放されます —— 他のリージョンを試すために1つのリージョンを極める必要はありません。ボスレッスン(The Chrono Keeper、The Brick Warden)はマップ上のテーマ性を持ったゲートです:そのボスへ至るすべてのリージョンに少なくとも1回触れると解放され、同じ区間に複数のボスがいる場合はさらに直前のボスを倒す必要があります。クリアしたレッスンはボスかどうかにかかわらずすべてコレクションギャラリーに追加されます:ベスト記録と実際の作品のサムネイル付きのカードで、再実行(同時に動くライブプレビューは常に1つだけなのでページは軽快)、フルサイズ表示、HTMLとしてダウンロード、レッスンのやり直しができます。
診断はそのままトレーニングにつながります。進捗タブには全セッション累積の、キーボード型のヒートマップが表示されます — オレンジの塗りは自分の他のキーより遅いキー、マゼンタの枠はミスの多いキー(最低試行回数に達したキーだけが対象になるので、序盤の1回のタイポで烙印を押されることはありません)。このプロファイルから「Train weak keys(弱点キー特訓)」が、あなたの苦手文字を最も濃く含むレッスンを推薦し、理由も明示します:そのレッスンが狙う文字と、各文字の現在のエラー率。推薦レッスンをクリアすると対象キーのビフォー/アフター比較が表示され、その後のセッションでヒートマップが冷えていくのを見届けられます。目標WPMでクリア済みのレッスンは推薦から除外されるため、推薦は常に「まだ伸びしろのある場所」を指します。
長期的な再訪の仕組みがループを締めくくります。デイリーチャレンジは日付の固定ハッシュで1つのレッスンを選びます — 同じUTCの暦日であれば誰が訪れても同じレッスンで、バックエンドは一切使いません。1回クリアすればその日の記録として保存され、今日のWPMが昨日と比べてどうかと、連続達成日数(ストリーク)が表示されます。レッスンのクリア、あるプロジェクトタイプの全難易度制覇、全D5レッスンのクリア、ボス撃破、WPMの節目達成、7日間のストリーク維持、フラグの立った苦手キーをエラー率5%未満まで鍛え直すこと — これらすべてが実績バッジを解除し、新しく解除されるとすぐにトースト通知が出て、進捗タブのBadgesセクションには獲得済みのバッジが解除日付とともに残り続けます。通常練習・ボス戦・デイリーチャレンジのどの結果画面でも、実績解除のトーストからでも、共有可能なPNGの結果カード — ブラウザ内でcanvasにより完全に生成され、アップロードは一切発生しません — を作成でき、ダウンロードするか端末の共有シートに渡せます。