BeamNG.Earth
BeamNG.drive용 1:1 비율 실시간 지구, 실제 고도·위성 이미지·부동 원점·보조 서버에서 LOD 스트리밍
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기オリジナルボードゲームをブラウザで公開・プレイするサイト
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
ボドパッ! ブラウザで今すぐ遊べるボードゲームサイト。オリジナルと、商標を使わない伝統的なボードゲームを公開・プレイします。 ブラウザで http://localhost:3000 を開く。 • 本番: https://bodopa.com(正規 URL。DNS・Vercel・Resend・Search Console は docs/production-domain.md) • GitHub: https://github.com/YutaNakachi/BoardPlayground • Vercel: このリポジトリをインポート(Framework Preset は Next.js が自動検出) .env.example をコピーして .env.local を作成し、Supabase の値を設定します。 未設定の場合はローカルプレイのみ動作し、プレイ回数・ランキング・オンライン対戦は無効化されます。README 전문 보기 ↗
ブラウザで今すぐ遊べるボードゲームサイト。オリジナルと、商標を使わない伝統的なボードゲームを公開・プレイします。
BoardPlayground/
├── app/ # Next.js App Router
│ ├── page.tsx # トップ(ゲーム一覧)
│ ├── about/ # 制作代行(ココナラ Phase 2)
│ ├── games/[slug]/ # ルール・詳細
│ └── play/[slug]/ # プレイ画面
├── components/ # UI・ゲームコンポーネント
├── lib/games.ts # ゲーム一覧(メタデータ)
├── lib/play-registry.ts # slug → プレイコンポーネント
├── lib/game-engine/ # シャッフル・勝者判定など共通処理
├── games/ # ルール仕様(Markdown)
└── docs/coconala/ # ココナラ出品用テンプレート
cd C:\Users\yutan\Projects\BoardPlayground
npm install
npm run dev
ブラウザで http://localhost:3000 を開く。
.env.example をコピーして .env.local を作成し、Supabase の値を設定します。
| 変数 | 用途 |
|---|---|
NEXT_PUBLIC_SUPABASE_URL | Supabase プロジェクト URL |
NEXT_PUBLIC_SUPABASE_ANON_KEY | クライアント(Realtime)用 |
SUPABASE_SERVICE_ROLE_KEY | API Route(統計・部屋)用 |
未設定の場合はローカルプレイのみ動作し、プレイ回数・ランキング・オンライン対戦は無効化されます。
SUPABASE_DB_URL を設定して npm run db:migratesupabase/migrations/ 内の SQL を番号順に実行npm run db:check / 007_explicit_grants.sql).env.example の3変数を追加(Production / Preview / Development すべて)https://<your-domain>/api/status が { "stats": true, "online": true } を返すこと未設定のときはローカルプレイのみ利用でき、オンラインタブとプレイ回数は非表示になります。
Cloud Agent からマイグレーションを実行する設定: docs/cloud-agent-supabase.md
お問い合わせフォームを有効にするには、.env.example の Resend 関連変数を設定します。
| 変数 | 用途 |
|---|---|
RESEND_API_KEY | Resend API キー(サーバー専用) |
RESEND_FROM_EMAIL | Resend で検証済みの送信元アドレス |
CONTACT_TO_EMAIL | 問い合わせの受信先(サーバー専用・リポジトリにコミットしない) |
Vercel の Settings → Environment Variables(Production)に上記を追加し、Redeploy してください。未設定の場合は /contact で受付不可の表示になります。RESEND_FROM_EMAIL は Resend で認証したドメインのアドレス(例: [email protected])。CONTACT_TO_EMAIL は Secret にし、README や PR に書かない。
ドメイン認証・本番切り替えの手順: docs/production-domain.md。
送信者向けの受付確認メールは、運営宛送信成功後に lib/contact/auto-reply.ts の文面で自動送信する(From は RESEND_FROM_EMAIL)。
掲載するのはブラウザ実装済みのゲーム(オンライン部屋未対応のため、手札秘匿などは順次追加予定)。
/play/nebula-link) — オリジナル、2〜4人、約12分/play/reversi) — クラシック、2人、約10分/play/mancala) — クラシック、2人、約8分/play/gomoku) — クラシック、2人、約8分/play/checkers) — クラシック、2人、約10分/play/nine-mens-morris) — クラシック、2人、約12分同画面交代プレイ。リバーシ・三目並べ・五目並べ・チェッカーはオンライン対戦(部屋コード)にも対応。
プレイ回数はゲーム開始時にカウントされ、/ranking でランキングを確認できます。
lib/games.ts にメタデータを追加games/{slug}/rules.md にルール仕様components/play/{Name}Game.tsx を実装(専用実装。共通化は同じ処理が3本目で必要になったとき)lib/play-registry.ts でコンポーネントを紐付けAGENTS.md)listed: false で作り、掲載はオーナー判断