Aller à l'article
Aniq-UI

Food StudioLancer le restaurant en local

Lancer le restaurant en local

Installez et démarrez chaque application avec Node.js et Yarn, un terminal par application.

Pour le pack Full Stack

Avant de commencer : installez Node.js 24 ou plus récent et exécutez une fois corepack enable. Aucun serveur de base de données n'est nécessaire.

Voir la configuration requise

Ouvrez chaque terminal là où les commandes ci-dessous l'attendent : dans food-studio-full-stack pour le pack complet, ou à côté du dossier de l'application pour un pack à application unique.

ApplicationDossierAdresse
APIback-endlocalhost:8000Local
Site de commandestorefrontlocalhost:3030Local
Tableau de bord du personneladmin-dashboardlocalhost:3031Local

Démarrez l'API en premier : les deux frontends lisent toutes leurs données à partir de l'API.

Démarrez l'API

  1. Installez et configurez

    .env.example fonctionne tel quel pour le développement local : SQLite sur le port 8000.

    Terminal
    corepack enable
    cd back-end
    yarn install
    cp .env.example .env
    Un problème ?
  2. Créez la base de données

    yarn seed crée database.sqlite, ses tables et le restaurant de démonstration : huit catégories, 64 plats avec leurs photos, le menu combiné, quatre cuisines, le personnel, et six semaines de commandes, d'avis et de points de fidélité. Le relancer n'ajoute que ce qui manque.

    Terminaldans back-end
    yarn seed
  3. Démarrez le serveur

    Terminaldans back-end
    yarn dev

    Résultat attendu: localhost:8000/api/healthLocal répond {"success":true,"data":{"status":"ok","database":"up"},"message":""}.

    Un problème ?

Démarrez l'API

  1. Installez et configurez

    .env.example fonctionne tel quel pour le développement local : SQLite sur le port 8000.

    Terminal
    corepack enable
    cd food-studio-backend
    yarn install
    cp .env.example .env
    Un problème ?
  2. Créez la base de données

    yarn seed crée database.sqlite, ses tables et le restaurant de démonstration : huit catégories, 64 plats avec leurs photos, le menu combiné, quatre cuisines, le personnel, et six semaines de commandes, d'avis et de points de fidélité. Le relancer n'ajoute que ce qui manque.

    Terminaldans food-studio-backend
    yarn seed
  3. Démarrez le serveur

    Terminaldans food-studio-backend
    yarn dev

    Résultat attendu: localhost:8000/api/healthLocal répond {"success":true,"data":{"status":"ok","database":"up"},"message":""}.

    Un problème ?

Démarrez le site de commande

Dans un deuxième terminal :

  1. Installez et configurez

    Le .env copié fait pointer le site vers l'API sur le port 8000.

    Terminal
    cd storefront
    yarn install
    cp .env.example .env
  2. Démarrez l'application

    Terminaldans storefront
    yarn dev

    Résultat attendu: localhost:3030Local ouvre le site en anglais avec le menu de démonstration ; l'arabe se trouve sous /ar.

    Un problème ?

Démarrez le site de commande

L'API ne fait pas partie de ce pack. Démarrez-la en premier ; le .env copié l'attend sur http://localhost:8000/api.

  1. Installez et configurez

    Si votre API tourne ailleurs, définissez NEXT_PUBLIC_API_BASE_URL dans .env avec son adresse, /api compris.

    Terminal
    corepack enable
    cd food-studio-website
    yarn install
    cp .env.example .env
    Un problème ?
  2. Démarrez l'application

    Terminaldans food-studio-website
    yarn dev

    Résultat attendu: localhost:3030Local ouvre le site avec le menu de votre API ; l'arabe se trouve sous /ar.

    Un problème ?

Démarrez le tableau de bord du personnel

Dans un troisième terminal :

  1. Installez et configurez

    Le .env copié fait pointer le tableau de bord vers l'API et ses notifications en direct sur le port 8000.

    Terminal
    cd admin-dashboard
    yarn install
    cp .env.example .env
  2. Démarrez-le et connectez-vous

    Terminaldans admin-dashboard
    yarn dev

    Résultat attendu: localhost:3031Local ouvre le formulaire de connexion. Connectez-vous avec owner@foodstudio.example et le mot de passe FoodDemo2026!.

    Un problème ?

Démarrez le tableau de bord du personnel

L'API ne fait pas partie de ce pack. Démarrez-la en premier ; le .env copié l'attend sur http://localhost:8000/api.

  1. Installez et configurez

    Si votre API tourne ailleurs, définissez dans .env NEXT_PUBLIC_API_BASE_URL (avec /api) et NEXT_PUBLIC_WEBSOCKET_BASE_URL (sans) avec son adresse.

    Terminal
    corepack enable
    cd food-studio-staff-dashboard
    yarn install
    cp .env.example .env
    Un problème ?
  2. Démarrez-le et connectez-vous

    Terminaldans food-studio-staff-dashboard
    yarn dev

    Résultat attendu: localhost:3031Local ouvre le formulaire de connexion. Connectez-vous avec le compte propriétaire owner@foodstudio.example et le mot de passe FoodDemo2026!, qu'une API avec les données de démonstration accepte.

    Un problème ?

Build de production

Les mêmes dossiers, construits une fois puis démarrés. Configurez d'abord le .env de l'API pour la production : avec NODE_ENV=production, l'API ne crée aucune table au démarrage, et elle refuse de démarrer tant que JWT_SECRET est vide ou garde la valeur d'exemple, ou tant que CORS_ORIGIN est vide.

Le .env de l'API
NODE_ENV=production
JWT_SECRET=paste-the-generated-secret-here
CORS_ORIGIN=http://localhost:3030,http://localhost:3031
FRONTEND_URL=http://localhost:3031
STOREFRONT_URL=http://localhost:3030

Générez le secret avec node -e "console.log(require('crypto').randomBytes(48).toString('hex'))". Ensuite, dans le dossier de l'API, construisez-la, créez ses tables une fois et démarrez-la. yarn seed:prod ajoute le restaurant de démonstration et ses comptes ; yarn db:sync:prod à sa place crée des tables vides, sans aucun compte.

Terminal
yarn build
yarn seed:prod
yarn start:prod

Build de production des frontends

Dans le dossier de chaque frontend, lancez le build une fois puis démarrez. Le site répond sur 3030 et le tableau de bord sur 3031.

Terminal
yarn build
yarn start

Les frontends intègrent leur .env au moment du build : relancez donc yarn build après l'avoir modifié. Avant de déployer quelque part en public, lisez la checklist de mise en ligne.

Repartir de données de démonstration neuves

Arrêtez l'API, puis, dans le dossier de l'API, supprimez le fichier de la base de données et recréez-la avec les données de démonstration. Cela supprime tout ce que vous avez créé.

Terminal
rm -f database.sqlite* && yarn seed

Dans PowerShell :

Terminal
Remove-Item database.sqlite*; yarn seed

Étapes suivantes

Cette page vous a-t-elle aidé ?

Vérifié sur la version 2026-10-08-3

Bloqué sur une étape ?

Trouvez une solution avant de tout recommencer.

Dépannage

Préférences des Cookies

Nous utilisons des cookies pour améliorer votre expérience de navigation, analyser le trafic du site et personnaliser le contenu. En cliquant sur "Accepter Tout", vous consentez à notre utilisation des cookies pour l'analyse et la publicité personnalisée.