À propos du projet

Ludo-Base est une expérience de jeu de Ludo décentralisée construite sur Base, packagée comme une application Next.js 16 conçue pour être prête pour Farcaster. Elle combine une interface de tableau de bord en glassmorphism avec une connectivité de wallet onchain et un flux de salles multijoueurs. Ce qu'il fait - Lobby de jeu : un flux de configuration avec des en-têtes de section de style pilule, une sélection horizontale du mode de jeu, des types de match (1v1, 2v2, 4P), une zone de mise pour les frais d'entrée avec une saisie numérique large, des commandes stepper et des puces de sélection rapide, ainsi que des boutons d'appel à l'action QUICK MATCH et WITH FRIENDS. - Gameplay : app/components/Board.tsx implémente le plateau de Ludo central, et app/components/SnakesBoard.tsx fournit une variante de serpents et échelles. - Multijoueur : PeerJS associé à hooks/TeamUpContext.tsx gère l'état d'hôte/jointure de salle pour jouer avec des amis. - Persistance : lib/matchRecorder.ts contient des aides à la persistance des résultats de match, supportées par Supabase. - Wallet et onchain : Wagmi et Coinbase OnchainKit fournissent l'intégration du wallet pour le réseau Base. Stack technique Next.js 16 (App Router), React 19, TypeScript 5, Tailwind CSS 4, Framer Motion, Wagmi + Coinbase OnchainKit, Supabase et PeerJS. Direction UI La direction visuelle documentée est une surface de verre terminal sombre avec des accents cyan (#00E5FF) pour les états de focus et actifs, des arrière-plans en dégradé charbon/graphite (#0B0F14 à #141A22) avec un bruit de texture subtil, et un texte de support monospace. Le README enregistre également des conventions pour les chemins de fichiers absolus relatifs au repo, des noms de composants React en PascalCase et des textes d'interface courts, orientés action, maintenus cohérents entre mobile et desktop. Exécution locale Node.js 20+ et npm sont requis. Installez les dépendances avec npm install, puis démarrez le serveur de développement avec npm run dev ; l'application s'exécute sur http://localhost:3000. Un build de production utilise npm run build suivi de npm start, et le linting est disponible via npm run lint. Un fichier .env.local doit être créé avec les valeurs pour le contexte de déploiement choisi, couvrant le wallet/réseau, Supabase et les intégrations Farcaster/Neynar. Statut et mises en garde Le README indique son état actuel en date de mars 2026, avec des entrées de changelog récentes axées sur la mise en page du lobby et la parité du padding, le stylisme du contrôle des mises, les états des types de match et les ajustements du thème/pied de page. Certains panneaux utilisent encore des données fictives ou des placeholders pendant que le câblage backend est étendu, et les flux TeamUp et de persistance des matchs nécessitent encore un renforcement pour la reconnexion et les cas limites. Un document de conception de jeu et un guide d'actifs visuels sont inclus dans le dépôt.