Aller à l'article
Aniq-UI

NorthstackLancer Northstack en local

Lancer Northstack 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 22.13 ou une version 22 plus récente, ou Node.js 24.11 ou plus, et lancez corepack enable une fois (sur Node.js 25 et plus, qui n'incluent plus Corepack, lancez d'abord npm install -g corepack). 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 northstack-full-stack pour le full stack, ou à côté du dossier de l'application pour le pack Backend API.

Avant de commencer : installez Node.js 22.9 ou plus et lancez corepack enable une fois (sur Node.js 25 et plus, qui n'incluent plus Corepack, lancez d'abord npm install -g corepack).

Voir la configuration requise

Ouvrez le terminal à côté du dossier de l'application, là où vous avez extrait le ZIP.

ApplicationDossierAdresse
APIback-endlocalhost:8000Local
Tableau de bord de l'espace de travaildashboardlocalhost:3031Local
Site publicwebsitelocalhost:3030Local

Démarrez d'abord l'API : le tableau de bord y lit toutes ses données, et le formulaire de contact et le paiement des licences du site l'appellent.

Démarrez l'API

  1. Installez et configurez

    .env.example fonctionne tel quel sur votre ordinateur : SQLite dans ./database.sqlite, l'API sur le port 8000, et le site (http://localhost:3030) et le tableau de bord (http://localhost:3031) autorisés à l'appeler.

    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 et ses tables, les rôles et paramètres de la plateforme, l'espace de travail d'exemple Forma Studio (12 projets avec leurs tableaux, 8 membres, 2 invitations, un abonnement Pro avec trois factures, une clé d'API, l'activité des dernières semaines et trois conversations avec l'assistant), un second espace de travail pour son propriétaire, et 732 organisations derrière les chiffres de la plateforme. Il se termine en affichant les comptes à utiliser pour se connecter. Les dates suivent le jour où vous lancez le seed. Le relancer sur une base qui a déjà des comptes n'ajoute ni compte ni espace de travail, et redonne leurs permissions aux rôles intégrés de la plateforme.

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

    Terminaldans back-end
    yarn dev

    Résultat attendu: localhost:8000/api/healthLocal répond avec "status":"ok" et "database":"up".

    Un problème ?

Démarrez l'API

  1. Installez et configurez

    .env.example fonctionne tel quel sur votre ordinateur : SQLite dans ./database.sqlite, l'API sur le port 8000, et le site (http://localhost:3030) et le tableau de bord (http://localhost:3031) autorisés à l'appeler.

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

    yarn seed crée database.sqlite et ses tables, les rôles et paramètres de la plateforme, l'espace de travail d'exemple Forma Studio (12 projets avec leurs tableaux, 8 membres, 2 invitations, un abonnement Pro avec trois factures, une clé d'API, l'activité des dernières semaines et trois conversations avec l'assistant), un second espace de travail pour son propriétaire, et 732 organisations derrière les chiffres de la plateforme. Il se termine en affichant les comptes à utiliser pour se connecter. Les dates suivent le jour où vous lancez le seed. Le relancer sur une base qui a déjà des comptes n'ajoute ni compte ni espace de travail, et redonne leurs permissions aux rôles intégrés de la plateforme.

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

    Terminaldans northstack-backend
    yarn dev

    Résultat attendu: localhost:8000/api/healthLocal répond avec "status":"ok" et "database":"up".

    Un problème ?

Chaque compte du seed se connecte avec le mot de passe NorthstackDemo26! : owner@northstack.example, admin@northstack.example, member@northstack.example, billing@northstack.example, platform@northstack.example et support@northstack.example.

Démarrer le tableau de bord de l'espace de travail

Dans un deuxième terminal :

  1. Installez et configurez

    Le .env copié pointe le tableau de bord vers l'API sur le port 8000, et ses mises à jour de permissions en direct vers le même serveur.

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

    Terminaldans dashboard
    yarn dev

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

    Un problème ?

Démarrer le tableau de bord de l'espace de travail

L'API ne fait pas partie de ce pack. Seul, le tableau de bord fonctionne sur ses données d'exemple intégrées : démarrez-le sans fichier .env.

  1. L'installer et le démarrer sur les données d'exemple

    Sans .env, NEXT_PUBLIC_API_BASE_URL est vide et chaque écran répond depuis les données d'exemple de votre navigateur.

    Terminal
    corepack enable
    cd northstack-dashboard
    yarn install
    yarn dev

    Résultat attendu: localhost:3031Local ouvre le formulaire de connexion avec un avis Sample data en bas. N'importe quel mot de passe permet de se connecter : owner@northstack.example ouvre l'espace de travail du propriétaire, et chaque e-mail du seed ouvre son rôle.

    Un problème ?
  2. Le relier à l'API

    Avec l'API Northstack lancée sur http://localhost:8000/api, arrêtez yarn dev, copiez les paramètres d'exemple et redémarrez-le. Si votre API tourne ailleurs, définissez NEXT_PUBLIC_API_BASE_URL (avec /api) et NEXT_PUBLIC_WEBSOCKET_BASE_URL (sans) dans .env avec son adresse.

    Terminaldans northstack-dashboard
    cp .env.example .env
    yarn dev

    Résultat attendu: Connectez-vous avec owner@northstack.example et le mot de passe NorthstackDemo26!, qu'une API initialisée accepte. L'avis Sample data a disparu.

    Un problème ?

Démarrez le site public

Dans un troisième terminal :

  1. Installez et configurez

    Chaque valeur du .env copié est facultative : il pointe le site vers l'API sur le port 8000 et le tableau de bord sur 3031.

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

    Terminaldans website
    yarn dev

    Résultat attendu: localhost:3030Local ouvre le site en anglais ; l'arabe est sur /ar.

    Un problème ?

Démarrez le site public

L'API ne fait pas partie de ce pack. Seul, le site fonctionne sur ses données d'exemple intégrées : démarrez-le sans fichier .env.

  1. L'installer et le démarrer sur les données d'exemple

    Sans .env, NEXT_PUBLIC_API_BASE_URL est vide : le formulaire de contact et le paiement des licences répondent dans votre navigateur et n'envoient rien.

    Terminal
    corepack enable
    cd northstack-website
    yarn install
    yarn dev

    Résultat attendu: localhost:3030Local ouvre le site avec un avis Sample data en bas de chaque page ; l'arabe est sur /ar.

    Un problème ?
  2. Le relier à l'API

    Avec l'API Northstack lancée sur http://localhost:8000/api, arrêtez yarn dev, copiez les paramètres d'exemple et redémarrez-le. Si votre API tourne ailleurs, définissez NEXT_PUBLIC_API_BASE_URL dans .env avec son adresse, /api compris.

    Terminaldans northstack-website
    cp .env.example .env
    yarn dev

    Résultat attendu: L'avis Sample data a disparu, et le formulaire de contact et le paiement atteignent votre API.

    Un problème ?

Autres ports

Sans Docker, les ports se règlent dans les fichiers. Les scripts dev et start du site dans package.json passent -p 3030 ; pour un autre port, lancez yarn next dev -p 3040 (ou yarn next start -p 3040 après yarn build). Le tableau de bord lit PORT dans son .env (PORT=3041), et démarre sur 3031 sans lui. Avec l'API, ajoutez l'adresse d'un frontend déplacé au CORS_ORIGIN du .env de l'API, et définissez-la là-bas comme WEBSITE_URL pour le site, ou comme DASHBOARD_URL et FRONTEND_URL pour le tableau de bord ; réglez le NEXT_PUBLIC_SITE_URL ou le NEXT_PUBLIC_BASE_URL du frontend en conséquence. Pour déplacer l'API, définissez PORT, PUBLIC_API_URL et PUBLIC_MEDIA_URL dans son .env avec le même nombre, ainsi que NEXT_PUBLIC_API_BASE_URL dans les deux frontends (et le NEXT_PUBLIC_WEBSOCKET_BASE_URL du tableau de bord).

Build de production

Les mêmes dossiers, construits une fois puis démarrés. Commencez par régler le .env de l'API pour la production : avec NODE_ENV=production, l'API ne modifie jamais les tables au démarrage, et elle refuse de démarrer tant que JWT_SECRET est vide ou encore à la valeur de l'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
DASHBOARD_URL=http://localhost:3031
WEBSITE_URL=http://localhost:3030
PUBLIC_API_URL=http://localhost:8000
PUBLIC_MEDIA_URL=http://localhost:8000/media

Générez le secret avec node -e "console.log(require('crypto').randomBytes(48).toString('hex'))". Puis, dans le dossier de l'API, construisez-la, créez ses tables une fois avec les données d'exemple, et démarrez-la. yarn seed:prod est le yarn seed compilé.

Terminal
yarn build
yarn seed:prod
yarn start:prod

Sur un serveur, partir à vide

yarn seed:prod charge les comptes d'exemple avec leur mot de passe publié : utilisez-le uniquement sur votre propre ordinateur. Sur un serveur, lancez plutôt yarn admin:create:prod : les tables et votre propre admin de la plateforme, sans données d'exemple. Après une mise à jour, yarn schema:prod met les tables à niveau avec le nouveau code.

Démarrer à vide

Build de production des frontends

Dans le dossier de chaque frontend, arrêtez yarn dev, construisez une fois et démarrez. Le site sert sur 3030 et le tableau de bord sur 3031.

Terminal
yarn build
yarn start

Les frontends compilent leurs valeurs NEXT_PUBLIC_* au moment du build : relancez donc yarn build après avoir modifié .env. Avant de déployer quoi que ce soit en public, lisez le guide de déploiement.

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

yarn reset vide chaque table et les conserve, et yarn drop supprime chaque table ; lancez yarn seed après l'un ou l'autre pour remplir de nouveau la base. Sur MySQL, où il n'y a pas de fichier à supprimer, repartez de zéro avec :

Terminal
yarn reset
yarn seed

Commandes

TâcheAPITableau de bordSite
Installeryarn installyarn installyarn install
Serveur de développementyarn dev (8000)yarn dev (3031)yarn dev (3030)
Build de productionyarn buildyarn buildyarn build
Démarrage en productionyarn start:prodyarn startyarn start
Charger les données d'exempleyarn seed (compilé : yarn seed:prod)inutileinutile
Créer ou mettre à jour les tables, sans donnéesyarn schema (compilé : yarn schema:prod)inutileinutile
Le premier admin de la plateforme, sans données d'exempleyarn admin:create (compilé : yarn admin:create:prod)inutileinutile
Vider chaque tableyarn resetinutileinutile
Supprimer chaque tableyarn dropinutileinutile
Vérification des typesinclus dans yarn buildyarn typecheckyarn typecheck
Lintyarn lintyarn lintyarn lint

Étapes suivantes

Cette page vous a-t-elle aidé ?

Vérifié sur la version 2026-11-06

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.