Chargement…
Vue technique pour IANOVATION : tout ce qu'il faut implémenter côté backend pour que le mockup devienne une app réelle
REST endpoints
9.9 j-h
WebSocket
1.5 j-h
Cron jobs
1.0 j-h
Infra + tests + déploiement
6.4 j-h
Total backend
18.8 j-h
9 400 €
Frontend (apps + déploiement)
18 j-h (9 000 €)
Total projet V1
36.8 j-h (18 400 €)
Avec buffer 20%
44.2 j-h (22 080 €)
TJM 500 € · estimations indicatives basées sur le cahier des charges V1. Bulles d'endpoints détaillées ci-dessous, hover pour la charge précise.
/auth/login0.5 j-hLogin email + mdp → JWT
/auth/refresh0.3 j-hRenouveler le JWT
/auth/logout0.2 j-hInvalider le refresh token
/api/commandes0.5 j-hListe paginée + filtres ?q=&statut=&clientType=&taxiId=&date_from=&date_to=
/api/commandes/:id0.2 j-hDétail d'une commande
/api/commandes0.3 j-hCréer (admin ou via formulaire public)
/api/commandes/:id0.4 j-hModifier statut / taxiId / dateISO (drag&drop)
/api/commandes/:id0.2 j-hAnnuler une commande
/api/taxis0.2 j-hListe flotte avec statuts
/api/taxis/:id0.3 j-hDétail taxi + courses du jour
/api/taxis/:id0.2 j-hMettre à jour statut (hors-service, dispo…)
/api/stats/flotte0.6 j-hKPIs flotte agrégés (paramètre ?date=)
/api/interventions0.3 j-hListe avec filtres ?statut=&priorite=
/api/interventions0.4 j-hCréer une intervention (depuis admin ou cron SLA)
/api/interventions/:id0.2 j-hChanger statut (résolu) ou priorité
/api/interventions/:id0.1 j-hSupprimer
/api/me/demandes0.3 j-hDemandes en attente assignées au chauffeur connecté
/api/demandes/:id/accept0.3 j-hChauffeur accepte → commande passe en assignée
/api/demandes/:id/refuse0.3 j-hChauffeur refuse → retour au pool admin
/api/me/courses0.3 j-hMes courses du jour / historique
/api/me/stats0.5 j-hMes KPIs (semaine / mois / année)
/api/notifications0.2 j-hMes notifs (admin ou chauffeur)
/api/notifications/:id/read0.1 j-hMarquer lu
/api/notifications/read-all0.1 j-hTout marquer lu
/api/societe · PATCH /api/societe0.3 j-hFiche société (édition Paramètres)
/api/taxis · PATCH · DELETE0.4 j-hCRUD flotte (Paramètres → Taxis)
/api/users · PATCH · DELETE0.7 j-hCRUD chauffeurs + invitation Brevo (lien magique)
/api/clients · PATCH · DELETE0.3 j-hCRUD clients B2B
/api/public/commandes0.6 j-hCréation depuis formulaire web (captcha required)
/api/public/captcha-config0.1 j-hSite key reCAPTCHA pour le front public
/api/onboarding/bootstrap0.5 j-hWizard onboarding → crée société + taxis + chauffeurs + clients en 1 transaction
/ws/notificationsPush notifs admin (nouvelle commande, alerte SLA, intervention créée)
/ws/demandes/:chauffeurIdPush notifs chauffeur (demande assignée, modif horaire, annulation)
/ws/planningLive updates planning (drag&drop d'un autre user, statut change)
*/5 * * * *SLA 2h check
0.5 j-hSi commande en-attente depuis > 2h → crée intervention prise-en-charge + notif admin
0 3 * * *Backup Postgres
0.2 j-hDump nightly → /root/nova-backups/ (cron existant VPS)
0 0 * * 1Reset stats hebdo
0.3 j-hSnapshot des KPIs chauffeur de la semaine S-1 pour comparaison
Firebase Cloud Messaging (FCM)
Notifs push iOS+Android (chauffeurs)
💰 Gratuit jusqu'à 1M messages/mois
Brevo (ex-Sendinblue) SMTP
Mails transactionnels (confirmation commande, alertes)
💰 Gratuit < 300 mails/jour
reCAPTCHA v3
Anti-spam formulaire public
💰 Gratuit jusqu'à 1M req/mois
Twilio / Vapi.ai (V3)
Numéro vocal + assistant IA — pour V3, hors V1
💰 ~0,05€/min vocal + $0,07/min IA
OpenAI / Anthropic API (V2)
Agent IA mail (parsing) — pour V2, hors V1
💰 ~$0,01 par mail traité
| Table | Colonnes |
|---|---|
| users | id, email, password_hash, role, name, phone, taxi_id?, active, created_at |
| taxis | id, numero, plaque, vignette, statut |
| clients | id, type, nom, contact_email, contact_phone, adresse |
| commandes | id, reference, client_id, prise_en_charge, destination, date_iso, passagers, bagages, vol?, taxi_id?, statut, created_at, updated_at |
| interventions | id, commande_id, taxi_id?, type, titre, description, statut, priorite, created_at |
| notifications | id, user_id, type, titre, description, lu, dateISO |
| audit_log | id, user_id, action, entity, entity_id, payload_json, ts |
Admin / Planning (Jour / Semaine / Mois)
GET /api/commandes?date_from&date_to (filtré selon la vue)PATCH /api/commandes/:id { taxiId, dateISO } (drag&drop)WS /ws/planning (live updates)GET /api/taxis (4 taxis principaux affichés en colonnes)Admin / Commandes
GET /api/commandes?q=&statut=&clientType=&page=PATCH /api/commandes/:id (modal détail)POST /api/audit_log (auto via middleware backend)Admin / Taxis
GET /api/taxisGET /api/stats/flotte?date=PATCH /api/taxis/:id (changement statut hors-service)Admin / Interventions
GET /api/interventions?statut=POST /api/interventions (modal créer)PATCH /api/interventions/:id (marquer résolue)WS /ws/notifications (push si SLA 2h trigger)Chauffeur / Accueil
GET /api/me/demandesWS /ws/demandes/:chauffeurIdPOST /api/demandes/:id/accept | refuseFCM push (nouvelle demande)Chauffeur / Agenda
GET /api/me/courses?date=Chauffeur / Historique
GET /api/me/courses?statut=&q=Chauffeur / Statistiques
GET /api/me/stats?period=week|month|yearFormulaire public
GET /api/public/captcha-configPOST /api/public/commandes (validation captcha côté serveur)Brevo SMTP (mail confirmation client)Next.js 16
App Router + Server Components
React 19
Hooks + Suspense
Tailwind 4
Design tokens + utilities
Zustand
State global + persist localStorage
lucide-react
Icônes vectorielles
PWA manifest
Installable iOS + Android
FastAPI client
À ajouter : axios ou fetch wrapper avec JWT
WebSocket client
À ajouter : socket.io ou native WS + reconnect
📄 Cahier des charges complet : DATA/PROJETS/MICK-PLATEFORME-TAXIE/00-brief/CAHIER-DES-CHARGES-BACKEND-V1.md
Chiffrage V1 reventilé : 36.8 j-h = 18 400 € HT · avec buffer 20% : 22 080 € HT · TJM 500 €