Site public de DaVinciBot (SvelteKit + Svelte 5), servi à la racine du domaine
davincibot.fr. C'est aussi le repo qui porte les scripts « lancer toutes les apps » du monorepo local.
Apps voisines : cash (/admin),
formation (/formation),
auth (auth.davincibot.fr).
- Node
24.11.0(.nvmrc), pnpm11.5.2(épinglé parpackageManager) - Un
NPM_TOKEN(PAT GitHub avecread:packages) exporté dans le shell : les dépendances@davincibot/*viennent de GitHub Packages (privé). Voir DaVinciBot/packages.
Copier .env.example en .env :
PUBLIC_SUPABASE_URL=https://project.supabase.co
PUBLIC_SUPABASE_PUBLISHABLE_KEY=sb_publishable_xx
# Service auth central (prod : https://auth.davincibot.fr)
PUBLIC_AUTH_BASE_URL=http://localhost:5177
# Préfixe optionnel des noms de cookies, vide en prod
PUBLIC_COOKIE_PREFIX=L'authentification est déléguée au service auth : pour un parcours de login complet en local, il faut aussi faire
tourner l'app auth sur le port 5177.
pnpm install
pnpm dev # http://localhost:5174
pnpm dev -- --openLancer les 3 sites d'un coup (web + admin + formation) :
pnpm dev:allChaque app garde son port (5174 web, 5175 admin, 5176 formation) ; le service auth (5177) n'est pas inclus, le
démarrer à part depuis ../auth.
Variante Traefik / Docker, qui regroupe tout derrière
http://localhost:5174 (/ → web, /admin → cash, /formation → formation) :
pnpm dev:all:docker
pnpm dev:proxy:down # stopper les conteneurspnpm check # svelte-check
pnpm lint # prettier --check + eslint --max-warnings=0
pnpm format # prettier --write
pnpm test:unit # vitest run --coverage
pnpm test:e2e # playwright
pnpm build # svelte-kit sync && vite build
pnpm preview # 127.0.0.1:4173
pnpm ci # check + lint + test:unit + build (ce que fait la CI)Build adapter-node, image Docker publiée sur GHCR puis déployée par Dokploy (service Swarm derrière Traefik). Les
workflows de .github/workflows appellent les workflows réutilisables de
DaVinciBot/shared-workflows.