Site web complet pour le restaurant thème pirate Hookies.
- Framework: Next.js 14
- Frontend: React 18 + Tailwind CSS + Framer Motion
- Backend: Next.js API Routes
- Database: MySQL avec Prisma ORM
- Auth: JWT + NextAuth.js
- Hosting: Plesk
- 🏪 Site vitrine premium avec animations pirate
- 👤 Système d'authentification client/admin
- 📅 Gestion des réservations
- 🍴 Menu dynamique
- 🛒 Système de commandes (Dine-in, Takeaway, Delivery, Kiosk)
- 💳 Gestion des paiements
- 📊 Dashboard administrateur
- 📱 Design mobile responsive
- 📁 Gestion des uploads de fichiers
npm install
npm run prisma:generate
npm run prisma:migrate
npm run build
npm startVariables d'environnement (.env.local):
DATABASE_URL="mysql://user:password@localhost:3306/hookies"
NEXTAUTH_SECRET="change-me-with-a-long-random-secret"
JWT_SECRET="change-me-with-at-least-32-random-chars"
NEXTAUTH_URL="https://hookies.nexadev.fr"
DISCORD_CLIENT_ID="your-discord-client-id"
DISCORD_CLIENT_SECRET="your-discord-client-secret"
MAIL_HOST="smtp.example.com"
MAIL_PORT="587"
MAIL_USER="smtp-user@example.com"
MAIL_PASS="smtp-password"
MAIL_FROM="no-reply@hookies.fr"
MAINTENANCE_MODE="false"
Notes:
JWT_SECRETest obligatoire et doit contenir au minimum 32 caracteres.- Pour l'envoi d'emails, renseigner SMTP complet (
MAIL_HOST,MAIL_PORT,MAIL_USER,MAIL_PASS) et idealementMAIL_FROM. - Le mode maintenance est pilotable depuis
Admin > Paramètres(/admin#settings), sans modifier le code. MAINTENANCE_MODE=truereste disponible comme surcouche d'urgence (force la maintenance au niveau middleware).
hookies.nexadev.fr/
├── app/ # Pages d'application
├── components/ # Composants React
├── pages/
│ └── api/ # Routes API
├── lib/
│ ├── db/ # Configuration Prisma
│ └── auth/ # Authentification
├── prisma/ # Schéma & migrations
├── public/ # Assets statiques
└── styles/ # Styles globaux
npm run devAccéder à: http://localhost:3000
GET /api/auth/discord/start- Demarrer la connexion DiscordGET /api/auth/discord/callback- Callback OAuth DiscordPOST /api/auth/discord/complete-profile- Finaliser nom/prenom/telephone US apres premiere inscription
GET /api/menu- Récupérer le menuPOST /api/menu- Ajouter un article (ADMIN)
GET /api/orders- Mes commandesPOST /api/orders- Créer une commande
GET /api/reservations- Mes réservationsPOST /api/reservations- Faire une réservation
GET /api/admin/orders- Tous les commandesPATCH /api/admin/orders- Mettre à jour une commandeGET /api/admin/stats- Statistiques
Repository: https://github.com/Hugo3400/hookies
Propriétaire