Skip to content
Nachi3D Labs

RéalisationsMogador Gaming Club

Mogador Gaming Club

En cours

Application de réservation de consoles pour un club de jeux vidéo : postes, créneaux, abonnements.

ClientAssociation Essaouira Mogador
Année2026
Mogador Gaming Club — hero de la page d'accueil
Mogador Gaming Club — screenshot 1

Vue d'ensemble

Le Projet

Les membres réservent un poste pour un créneau d'une heure, indiquent combien de personnes viennent et choisissent un jeu dans la ludothèque du club. Derrière, un espace admin utilisé dans la salle : qui est sur quelle console ce soir, check-in en un tap, marquage des absents, génération des créneaux, inventaire des manettes, abonnements. Trois postes aujourd'hui — deux PS4 et une PS3 — les jeudis et vendredis soir à Dar Souiri.

La contrainte centrale n'est pas la capacité, c'est l'exclusivité : un groupe par console et par créneau. Elle vit dans Postgres sous forme d'index unique plus un verrou FOR UPDATE dans la fonction de réservation, jamais dans le code applicatif — deux personnes qui tapent sur le même créneau de 18 h, c'est l'échec qui fait perdre un membre. Même chose pour les abonnements et les limites de places. L'application exprime une intention ; la base de données décide. Le verrou a été éprouvé sous une vraie concurrence plutôt qu'en séquentiel.

C'est le tableau de bord admin qui dira si le club est viable avant de signer un bail — taux d'occupation, taux d'absence, demande refusée.

Stack

Next.js 16
React 19
TypeScript
Supabase
Tailwind v4
next-intl
PWA
Vercel

Fonctionnalités clés

Ce qu'il fait

Réservation poste-et-créneau avec exclusivité garantie dans Postgres, pas dans le code applicatif
Abonnements : paiement au créneau ou carte mensuelle, vérifiés par rapport à la date du créneau plutôt qu'à la date de réservation
Tableau de salle admin : check-in en direct, absences, fin de session, génération de créneaux, soirées ponctuelles
Catalogue de jeux avec disponibilité par poste et nombre de joueurs en local, pour filtrer ce qu'un groupe de quatre peut choisir
PWA installable qui ne met en cache rien qui puisse devenir périmé — hors ligne, elle affiche « club injoignable », jamais un créneau périmé
FR/EN de bout en bout, thèmes clair et nuit, pages d'accueil prérendues statiquement

Vous voulez quelque chose comme ça pour vous ?

Décrivez-moi ce que vous aimeriez construire et voyons si c'est un bon fit.