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
【非公式ファンサイト】YouTube・Twitch横断で、今配信中のマリオテニスフィーバーを一覧表示。
Translation pending
GamesTypeScript · PLpgSQLGitHub @games-desuOnlineOwner 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
Loading the full README. The saved excerpt is shown below.
今この瞬間に「マリオテニスフィーバー / Mario Tennis Fever」を配信している YouTube・Twitch チャンネルを横断表示するWebアプリ。視聴者数の推移グラフつき。 • フレームワーク: Next.js 14 (App Router) + TypeScript • DB: Supabase (Postgres) • ホスティング: Vercel(Cron Jobs で定期取得) • グラフ: Recharts 設計の要点:取得と表示の分離 ユーザーのアクセスでは外部API(YouTube/Twitch)を一切叩きません。 Vercel Cron が定期的にデータを取得して Supabase に保存し、 公開ページはその保存済みデータを読むだけ。これで無料枠を守れます。 1. Supabase 1. Supabase でプロジェクト作成 2. SQL Editor で supabase/schema.sql を実行(テーブル・ビュー・RLSを作成) 3. Settings > API から URL / anon / service_role の3つを控える 2. 環境変数 .env.example を参考に、Vercel のプロジェクト設定 > Environment Variables に登録:Read the full README ↗
今この瞬間に「マリオテニスフィーバー / Mario Tennis Fever」を配信している YouTube・Twitch チャンネルを横断表示するWebアプリ。視聴者数の推移グラフつき。
ユーザーのアクセスでは外部API(YouTube/Twitch)を一切叩きません。 Vercel Cron が定期的にデータを取得して Supabase に保存し、 公開ページはその保存済みデータを読むだけ。これで無料枠を守れます。
Vercel Cron ──▶ /api/cron/collect ──▶ YouTube/Twitch API ──▶ Supabase(保存)
ブラウザ ──▶ /api/streams, /api/history ──▶ Supabase(読み取りのみ)
supabase/schema.sql を実行(テーブル・ビュー・RLSを作成)URL / anon / service_role の3つを控える.env.example を参考に、Vercel のプロジェクト設定 > Environment Variables に登録:
| 変数 | 用途 | 公開範囲 |
|---|---|---|
NEXT_PUBLIC_SUPABASE_URL | Supabase URL | 公開OK |
NEXT_PUBLIC_SUPABASE_ANON_KEY | 読み取り用キー | 公開OK |
SUPABASE_SERVICE_ROLE_KEY | 書き込み用(Cron) | サーバー専用・非公開 |
YT_API_KEY | YouTube Data API v3 | 非公開 |
TWITCH_CLIENT_ID | Twitch アプリ | 非公開 |
TWITCH_CLIENT_SECRET | Twitch アプリ | 非公開 |
CRON_SECRET | Cron呼び出し認証 | 非公開 |
Claude Code から Vercel に push すれば、vercel.json の Cron 定義が自動で登録されます。
vercel.json)Vercel Cron は UTC で動きます。日本のゴールデンタイム 20:00〜翌2:00 (JST) は UTC 11:00〜17:00 に相当します。
*/8 11-16 * * * … ゴールデンタイム相当を8分おき0 17-23,0-10 * * * … それ以外を毎時/api/cron/collect を叩く(CRON_SECRET で認証)search(eventType=live) が1回100ユニット。lib/youtube.ts の YT_QUERIES をキーワード1本に。npm install
cp .env.example .env.local # 値を埋める
npm run dev
広告掲載などの商用利用は、YouTube API Services 利用規約・Twitch Developer Services Agreement の商用条項に触れる可能性があります。まずは広告なしで公開し、 商用化する際は各規約の確認と必要な申請を行ってください。