Prérequis
Node.js 18+ installé (Télécharger)
npm installé
Git installé
Compte Nhost créé (S’inscrire) — ou utiliser les credentials dev par défaut
Installation
Installer les dépendances
- react 18
- vite 6
- @nhost/nhost-js (client GraphQL + Auth + Storage)
- react-router-dom 6.x
- tailwindcss 3.x
Configurer Nhost
Créer un projet Nhost (optionnel)
Si vous créez un nouveau projet backend :- Allez sur app.nhost.io
- Créez un nouveau projet
- Choisissez la région eu-central-1 (Europe)
- Notez le subdomain et la region
Créer le fichier .env
Où trouver ces valeurs ?
Dans votre dashboard Nhost :- Settings → General
- Copiez le Subdomain et la Region
Des valeurs par défaut sont intégrées dans le code (
client.ts) pour l’environnement de développement partagé. Vous pouvez démarrer sans .env si vous utilisez le backend commun.Lancer le serveur de développement
- ✅ Page d’accueil s’affiche (page unique avec quiz hero)
- ✅ Catalogue d’outils se charge
- ✅ Pas d’erreurs console liées à Nhost/GraphQL
Premier lancement
URLs disponibles
- 🏠 Home : http://localhost:5173 (page unique : quiz + kits + guides + catalogue)
- 🔐 Admin : http://localhost:5173/admin
- 📊 Quiz : http://localhost:5173/quiz/diagnostic-digital
- 🔍 Compare : http://localhost:5173/compare
- 🔑 Login : http://localhost:5173/login
Créer un compte admin
L’authentification est gérée par Nhost Auth (email/password).Via Dashboard Nhost
- Allez dans votre projet Nhost → Auth → Users
- Cliquez sur Add User
- Entrez :
- Email :
admin@lucdidion.fr - Password :
votre_mot_de_passe_securise
- Email :
- L’utilisateur est créé et peut se connecter
Se connecter
- Allez sur http://localhost:5173/admin
- Vous serez redirigé vers
/login - Entrez vos credentials
- Vous devriez accéder au dashboard admin
Ajouter des données de test
Option 1 : Manuellement via Admin Dashboard
Une fois connecté en admin :- Créer des catégories — onglet Tools du dashboard
- Ajouter des outils — cliquez sur + Nouvel outil, remplissez le formulaire, uploadez un logo
- Créer un workflow — onglet Workflows, définissez les étapes, publiez (status = active)
Option 2 : Via Hasura Console
Accédez à la console Hasura de votre projet Nhost pour insérer des données directement :Structure du projet
Comprendre l'architecture
Documentation complète de l’organisation
Commandes disponibles
Troubleshooting
Erreur : “Failed to fetch” ou “Network error”
Cause : Connexion Nhost/GraphQL échoue Solutions :- Vérifiez que
.envcontient les bonnes valeurs (VITE_NHOST_SUBDOMAINetVITE_NHOST_REGION) - Vérifiez que votre projet Nhost est actif et accessible
- Ouvrez les DevTools → Network → filtrez par
graphqlpour voir les requêtes
Erreur : “Permission denied” sur une mutation
Cause : Permissions Hasura bloquent l’opération Solution :- Vérifiez que vous êtes authentifié (JWT valide)
- Vérifiez les permissions Hasura pour le rôle
userouadmin - Accédez à la console Hasura pour inspecter les permissions
Page admin vide
Cause : Pas authentifié ou session expirée Solution :- Reconnectez-vous via
/login - Nhost Auth gère le refresh automatique des tokens
- Si persistant, videz le localStorage et reconnectez-vous
Prochaines étapes
Explorer l'architecture
Comprendre l’organisation du code
Nhost & GraphQL
Backend et API Layer
API Layer
apiCall, apiCallVoid et GraphQL
Conventions de code
Standards et bonnes pratiques
Support
Besoin d’aide ?- 📖 Documentation : Parcourez les sections ci-dessous
- 💬 GitHub Discussions : Posez vos questions
- 🐛 Issues : Signalez un bug
- 📧 Email : contact@lucdidion.fr