Underground 2 Revived
Play Need for Speed: Underground 2 (2004) in Chrome and Firefox with WebGPU graphics, Web Audio, up to 120 fps widescreen, controller support, free roam and Online races with friends. Fan project, not
Infinite Flight のライブフライトトラッカー。機体の写真は IFSpotters から。
Translation pending
GamesTypeScript · CSSGitHub @t-kueikunOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Infinite Flight Live API を使った軽量なライブフライトトラッカー。デザインは design.md(Flightradar24 の design.md 解析に準拠)。
# .env.local
INFINITE_FLIGHT_API_KEY=xxxx
# 任意: 写真の照合先(既定 https://ifspotters.com)
# IFSPOTTERS_BASE_URL=https://ifspotters.com
npm install
npm run dev # http://localhost:3000
npm run build # public/app.js と dist/server.js を生成
| ファイル | 役割 |
|---|---|
src/server.ts | Express。API キーを秘匿したプロキシ、短命キャッシュ、フライト一覧の圧縮、IFSpotters 照合 |
src/client/main.ts | 地図(Leaflet)、ポーリング、選択・追従、検索 |
src/client/aircraft-layer.ts | 全機体を 1 枚の canvas に描画するレイヤー(当たり判定込み) |
src/client/panel.ts | フライト詳細パネル(写真・ルート・統計・高度プロファイル) |
src/client/stats.ts | フライト統計(全履歴から空港・機種・航空会社・路線を集計) |
src/client/globe.ts | 統計の地球儀。MapLibre の globe 投影(public/vendor に置き、統計を開いたときだけ読み込む) |
src/client/top.ts | トップパイロット(いまオンラインの人を通算の飛行時間・着陸回数で並べる) |
src/client/data.ts | API 型、デッドレコニング、距離計算、フォーマット |
GET /api/sessions — サーバー一覧GET /api/flights?sessionId= — 全機体(列を絞った配列形式。types に機種/リバリー名を重複排除)GET /api/flights/:id?sessionId= — 飛行計画・出発/到着空港・航跡GET /api/photos?aircraft=&livery= — IFSpotters の承認済み写真(機種名 + リバリー名の完全一致)GET /api/history?user=<IFC ユーザー名>&page= — フライト履歴を 100 便ずつ(最大 100 ページ)。集計はブラウザで行う。Live API の 429 を避けるため、履歴の取得だけはサーバー全体で同時 2 本・200ms 間隔に絞るGET /api/top-pilots?sessionId= — オンラインの人の通算飛行時間・着陸回数の上位。/users は 1 回 25 人までで API 全体の上限が約 100 回/分なので、誰かが開いている間だけ 2.5 秒に 1 回ずつ集める(Expert で 5〜6 分)。記録はメモリに 3 時間だけ持つ