Comprendre AstroGuide
Architecture
Comment AstroGuide est assemblé, servi et déployé.
AstroGuide est un client unique. Il n'y a pas d'API applicative, pas de base de données et pas de service d'authentification.
Navigateur
→ application React / Three.js
→ catalogue intégré (TypeScript)
→ textures et assets statiquesEn production Docker :
Nginx non privilégié (port 8080)
→ fichiers statiques issus de dist/
→ repli SPA vers index.html
→ en-têtes de sécuritéStack observée
| Couche | Choix actuel |
|---|---|
| Interface | React 19, TypeScript strict |
| Rendu 3D | Three.js, React Three Fiber, Drei |
| État | Zustand, en mémoire uniquement |
| Transitions | Motion |
| Build | Vite 6, Tailwind CSS 4 |
| Conteneur | Node 22.14 pour le build, Nginx 1.27 Alpine à l'exécution |
| Contrôles | ESLint, Vitest, npm run check |
Deux artefacts distincts
| Artefact | Commande | Usage |
|---|---|---|
| Produit normal | npm run build | Docker, GHCR, développement local |
| Démonstration publique | npm run build:demo | projet Vercel de démo uniquement |
Le Dockerfile appelle npm run build. vercel.json appelle npm run build:demo. Les deux ne doivent pas être inversés.