BeamNG.Earth
BeamNG.drive용 1:1 비율 실시간 지구, 실제 고도·위성 이미지·부동 원점·보조 서버에서 LOD 스트리밍
설치 없이 음악 블라인드 테스트와 퀴즈를 제공하는 프리미엄 플랫폼, 월 3.99유로부터
Plateforme premium de blind test musical (Spotify, YouTube) et de quiz multimédia pour vos soirées. Sans installation côté joueurs. À partir de 3,99 €.
게임TypeScript · HTMLGitHub @thomaspinonlux온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Plateforme de jeux interactifs multijoueurs (Blind Test musical + Quizz) pour bars, restaurants et particuliers. • Frontend : React 18 + TypeScript + Vite + Tailwind CSS + Socket.IO Client • Backend : Node.js 20+ + Express + TypeScript + Socket.IO + Prisma • DB & Auth : PostgreSQL + Supabase (Auth + Storage) • Hosting : Vercel (frontend) + Railway (backend) + Supabase (DB) • Node.js ≥ 20 • pnpm ≥ 9 (brew install pnpm) Toutes les règles (breakpoints, comportement par route, cibles tactiles, checklist) sont dans docs/RESPONSIVE.md.README 전문 보기 ↗
Plateforme de jeux interactifs multijoueurs (Blind Test musical + Quizz) pour bars, restaurants et particuliers.
tutti/
├── frontend/ # App React (Vercel)
├── backend/ # Serveur Node + Socket.IO (Railway)
├── shared/ # Types et utilitaires partagés
└── design-references/ # Maquettes HTML de référence (Pop Cocktail)
brew install pnpm)pnpm install
# Tout en parallèle (frontend + backend)
pnpm dev
# Ou séparément
pnpm dev:frontend # http://localhost:5173
pnpm dev:backend # http://localhost:3001
pnpm build # Build tous les packages
pnpm lint # Lint TypeScript
pnpm typecheck # Vérification de types
pnpm format # Formatage Prettier
Toutes les règles (breakpoints, comportement par route, cibles tactiles, checklist) sont dans docs/RESPONSIVE.md.
/play)Persistance d'identité, reconnexion auto Socket.IO, Wake Lock, indicateur visuel : voir docs/PLAYER_RESILIENCE.md. Non négociable pour une vraie soirée au bar.
TL;DR :
/admin/* : bloqué sub-md, 2 cols md→xl (panel droit en modale), 3 cols xl+./host (étape 9+) : bloqué sub-lg, 2 × 2 lg→xl, 4 cols xl+./screen (étape 12+) : adaptatif lg→2xl, polices XL pour TV en 2xl./play (étape 9+) : mobile-first absolu (375–430 px = la majorité de l'usage), centré max 500 px sur grands écrans.Outils : <MinScreen min="md|lg|xl"> + useBreakpoint().
V1 supporte français (défaut) et anglais. Détection automatique de la langue du navigateur, switch manuel via le composant <LanguageSwitch /> (persisté en localStorage).
Procédure complète, sans modification de code applicatif :
frontend/src/locales/<code>.json (par exemple de.json pour l'allemand). Copier la structure de fr.json et traduire toutes les valeurs.frontend/src/i18n/index.ts :
import de from '../locales/de.json'de: { translation: de } à resources'de' à SUPPORTED_LOCALESbackend/src/locales/<code>.json avec la même structure que fr.json.backend/src/lib/i18n.ts :
import de from '../locales/de.json' with { type: 'json' }de à RESOURCES<LanguageSwitch /> détecte automatiquement la nouvelle langue, et l'API accepte la nouvelle valeur dans le header Accept-Language.Aucune logique applicative ne référence les codes de langue en dur.
Voir backend/.env.example et frontend/.env.example.
Ne JAMAIS committer les vrais fichiers .env* ni credentials.env.local.
Tout commit poussé sur main redéploie automatiquement les deux services.