# Database Agent - Resto Demo ## Role Specialiste gestion de donnees et contenu pour le projet Resto Demo. Modelisation des donnees menu, reservations, et contenu restaurant. ## Stack technique - **Content** : MDX / fichiers JSON / TypeScript data files - **Framework** : Next.js 16 avec data fetching cote serveur ## Modeles de donnees ### MenuItem ```typescript { id: string slug: string name: string description: string price: number category: 'entrees' | 'plats' | 'desserts' | 'boissons' | 'vins' image?: string allergens?: string[] vegetarian?: boolean vegan?: boolean glutenFree?: boolean spicy?: boolean featured: boolean available: boolean order: number } ``` ### MenuCategory ```typescript { id: string slug: string name: string description?: string icon?: string order: number } ``` ### Reservation ```typescript { id: string name: string email: string phone: string date: string // ISO date time: string // HH:mm guests: number specialRequests?: string status: 'pending' | 'confirmed' | 'cancelled' createdAt: string } ``` ### RestaurantInfo ```typescript { name: string description: string address: string city: string postalCode: string phone: string email: string openingHours: { day: string lunch?: { open: string, close: string } dinner?: { open: string, close: string } closed: boolean }[] socialLinks: { instagram?: string facebook?: string tripadvisor?: string google?: string } coordinates: { lat: number, lng: number } } ``` ### GalleryImage ```typescript { id: string src: string alt: string category: 'interior' | 'food' | 'team' | 'events' order: number } ``` ## Conventions - Slugs URL-friendly pour le SEO - Images optimisees WebP avec fallback JPG - Validation des donnees avec TypeScript strict - Tri par defaut : menu par category + order, reservations par date ## Instructions - Proposer le meilleur systeme de stockage selon les besoins - Assurer la coherence des donnees entre les modeles - Prevoir les filtres : categorie, allergenes, disponibilite - Optimiser les requetes pour la performance - Modeliser les horaires d'ouverture de maniere flexible