Skip to content

Latest commit

 

History

458 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Escape Game Batiment

Application web Ionic/Angular pour l'escape game "Les trésors cachés" autour des métiers du bâtiment. L'application est déployée comme une PWA en production.

Objet du dépôt

Ce dépôt contient le front-end complet de l'application :

  • interface Ionic/Angular
  • assets graphiques et sonores
  • données statiques JSON
  • configuration Docker pour développement local et preview de build de production

Le projet est construit comme une application web statique. La sortie de build est générée dans www/ puis servie par nginx en production.

Stack technique

  • Angular 20
  • Ionic 8
  • Capacitor 5
  • Node.js 20.19.x ou 22.12+
  • npm 10 ou 11
  • nginx pour le service de la build de production
  • PWA avec service worker activé en production

Versions déclarées dans le projet :

  • Node.js : voir .nvmrc et package.json
  • npm : voir package.json

Arborescence utile

  • src/ : code source Angular/Ionic
  • src/assets/ : images, sons, SVG, données JSON
  • docker/nginx/default.conf : configuration nginx pour la SPA
  • Dockerfile.dev : image de développement
  • Dockerfile : image de build + runtime nginx
  • docker-compose.yml : orchestration locale

Pré-requis

Option 1 : avec Docker

Pré-requis :

  • Docker
  • Docker Compose

Option 2 : sans Docker

Pré-requis :

  • Node.js 20.19.0 minimum recommandé
  • npm >=10 <12

Installation :

npm ci --legacy-peer-deps

Lancement local avec Docker

Développement

Lance un serveur de dev avec rechargement à chaud sur le port 8100.

docker compose up --build

Accès :

http://localhost:8100

Comportement :

  • le conteneur utilise Dockerfile.dev
  • le code du dépôt est monté dans /app
  • node_modules reste dans un volume Docker dédié
  • le serveur Angular écoute sur 0.0.0.0
  • le polling est activé pour fiabiliser la détection de changements dans Docker

Preview de la build de production

Construit l'application puis la sert avec nginx sur le port 8080.

docker compose --profile preview up --build web

Accès :

http://localhost:8080

Comportement :

  • build Angular en configuration production
  • service worker activé
  • fallback SPA nginx vers index.html

Lancement local sans Docker

Installation des dépendances :

npm ci --legacy-peer-deps

Serveur de développement :

npm start

Build de production :

npm run build -- --configuration production

Tests unitaires :

npm test

Lint :

npm run lint

Fichiers Docker

Dockerfile.dev

Usage :

  • installe les dépendances
  • expose le port 8100
  • lance ng serve --host 0.0.0.0 --port 8100 --poll 2000

Dockerfile

Usage :

  • build multi-stage
  • étape 1 : build Angular dans une image Node
  • étape 2 : service des fichiers statiques via nginx

docker-compose.yml

Services :

  • app : développement local
  • web : preview de la build de production

Configuration applicative

Le projet n'utilise pas de backend applicatif embarqué dans ce dépôt.

Configuration observée :

  • src/environments/environment.ts : mode développement
  • src/environments/environment.prod.ts : mode production
  • les contenus métier proviennent principalement de fichiers JSON dans src/assets/data/

Dépendances externes visibles dans le code :

  • Matomo : script et tracker distants
  • liens externes vers des sites institutionnels ou éditoriaux

Ces dépendances ne bloquent pas le lancement local du projet, mais elles doivent être connues du prestataire.

Vérifications réalisées

Vérifications effectuées sur ce dépôt :

  • npm run build : OK
  • docker compose build app web : OK
  • validation de la configuration docker compose : OK

Conclusion :

  • le projet peut être lancé localement avec Docker
  • la build de production peut être construite et servie localement

Transmission au prestataire

Pour une transmission correcte, fournir au minimum :

  • l'intégralité du dépôt Git
  • ce README
  • l'historique Git si la reprise doit inclure le contexte technique

Checklist recommandée :

  • confirmer la version de référence Node/npm
  • confirmer la procédure de build et de lancement Docker
  • préciser l'URL de production actuelle si elle existe encore
  • lister les accès externes utiles hors dépôt : hébergement, analytics, nom de domaine, stores éventuels
  • préciser s'il existe des maquettes, sources graphiques ou documents fonctionnels hors dépôt

Points d'attention

  • Le projet contient beaucoup d'assets lourds ; les temps de build et la taille du dépôt sont à surveiller.
  • Des dépendances npm remontent des vulnérabilités lors de l'installation ; cela ne bloque pas le lancement, mais mérite un audit si une maintenance est prévue.
  • Le service worker est activé en production ; en recette, penser aux effets de cache navigateur.

Commandes utiles

Rebuild complet du dev :

docker compose up --build

Rebuild preview prod :

docker compose --profile preview up --build web

Arrêt des conteneurs :

docker compose down

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages