causeimyourfat / cartes / management
Huit phases,
une seule colonne
Un bureau d'études qui dessine des cuisines professionnelles. Entre le croquis du premier rendez-vous et le dossier remis au client, il y a 28 tâches, six métiers et deux réglementations différentes. L'app tient la colonne.
Ce que c'est
30 secondesLe geste
5 minutesUn projet ne change pas d'outil en cours de route. Il change de PHASE, et la phase décide qui a la main.
- 1 · l'entréeESQ — EsquisseLe brief du client devient un premier croquis. Commercial, dessinateur, client.
- 2 · le chiffrageAPS puis APDPlans détaillés, premier prix, puis plans définitifs et devis signé. L'ADV entre dans la boucle.
- 3 · le bureauEXE — Plans d'exécutionBilan de puissance, plans de réservation, contrôle, plans de fabrication, validation BE. C'est la phase la plus dense : 5 tâches.
- 4 · l'usineFAB puis LIVCommande des équipements, fabrication sur mesure, contrôle qualité, puis transport et livraison sur site.
- 5 · le chantierINS — InstallationPose, réserves, levée des réserves.
- 6 · la remiseDOELe dossier des ouvrages exécutés se compile et part au client. Le projet se ferme là.
Les huit phases sont les mêmes pour les deux types de projet, mais les tâches changent : CHR pour un restaurant ou un hôtel privé, COL pour une cuisine de collectivité — école, hôpital, cantine administrative — qui passe par un marché public et traîne derrière elle son AO, son CCTP, son mémoire technique, ses indices de révision et son DOE continu.
La structure
15 minutesDeux jeux de tâches
PHASES[] pour le privé, COL_PHASES[] pour le marché public. Même squelette, contenu différent — on n'a pas dupliqué l'app pour un second métier.
Pack Admin AO
Douze pièces administratives à fournir (DC1, DC2, Kbis, URSSAF…) avec un registre d'entreprises partagé. Deux d'entre elles se coupent d'un réglage quand le marché ne les demande pas.
Module SAV
Un second type de projet, six phases, activable. Désactivé, les dossiers SAV existent toujours en base — ils sortent de l'écran, pas de la donnée.
Session
Cookie chr_token, 72 h, httpOnly + secure + SameSite=Strict. Rien en localStorage.
Migrations
48 migrations en ajout seul dans api/migrations.php. L'hébergement est un mutualisé : pas de CLI, pas de cron, pas de Node — le schéma se rattrape à l'appel.
Bilingue
Tout passe par i18n.js, FR et EN posés en même temps. Une chaîne ajoutée dans une seule langue est un bug qui se voit six mois plus tard.
Le point n'est pas de suivre le projet, c'est de savoir à tout instant qui a la main et sur quelle tâche. Un projet en retard n'est jamais en retard « en général » : il est bloqué sur un pointage précis, et c'est ça qu'on veut lire d'un coup d'œil.
v=100 (app.js) · v=89 (CSS)Ce que ça ne fait pas
- L'outil est en accès client : l'adresse publique ouvre sur un écran de connexion.
- Hébergement mutualisé — pas de tâche planifiée côté serveur. Tout ce qui doit se déclencher se déclenche à l'usage.
- Le module Collectivité et le module SAV s'activent projet par projet, pas globalement.