Apps

Application web

La SPA React 19 + Vite + Mapbox dans apps/web.

L'application web est une single-page application construite avec React 19, Vite 8 et Mapbox GL 3.

Structure

apps/web/
├── src/
│   ├── components/    # Map, sidebar, controls
│   ├── routes/        # TanStack Router routes
│   ├── lib/           # Web-specific glue
│   ├── hooks/         # React hooks
│   └── main.tsx       # Entry
├── public/            # Static assets
├── nginx.conf         # Production server config
├── entrypoint.sh      # Runtime env injection
├── Dockerfile         # Multi-stage build → nginx
└── vite.config.ts

Dépendances clés

BibliothèquePourquoi
mapbox-gl + react-map-glLa carte
@tanstack/react-routerRoutage type-safe avec routes en code-split
@tanstack/react-queryMise en cache de l'état serveur
zustandÉtat client (depuis @routess/core)
tailwindcss v4Styles, thémés via @routess/design-tokens
@radix-ui/*Primitives UI headless
@react-oauth/googleBouton de connexion Google

Configuration au runtime

Le Dockerfile build avec des valeurs de remplacement. Au démarrage du conteneur, entrypoint.sh substitue les vraies valeurs issues des variables d'environnement dans les fichiers JS buildés. Cela permet de promouvoir une même image à travers les environnements sans la rebuild.

Scripts

bun run dev              # Vite dev server
bun run build            # Production build
bun run preview          # Preview the production build locally
bun run test             # bun test + happy-dom
bun run check-types      # tsc --noEmit

On this page