Tous les travaux003 · Application web full-stack assistée par IA

Pilote

Pilote est une application personnelle de pilotage de projets. Elle découpe chaque projet en phases, tâches et sous-tâches, et suit son avancement avec des compteurs à seuil d’alerte et des signaux déclaratifs. Un planificateur hebdomadaire assisté par IA propose un plan de semaine, synchronisé avec Google Calendar. J’ai conçu et développé l’ensemble : API NestJS, base PostgreSQL, interface Next.js et une couche IA indépendante du fournisseur.

Contexte
Projet personnel
Rôle
Conception et développement full-stack, en solo
Durée
3 mois
Front
Next.js 16, React 19, React Query, React Hook Form, Zod, Recharts
Back
NestJS 11, Prisma 6, PostgreSQL 15, JWT, Swagger
IA
Anthropic, OpenAI, Gemini, Groq, DeepSeek, Mistral ou Ollama, au choix
Intégration
Google Calendar (OAuth, jetons chiffrés en AES-256-GCM)
Qualité
Tests unitaires, e2e et de composants, lint, hook pre-commit
Pilote : vue d’ensemble avec progression moyenne, projets à surveiller et alertes
Contexte

Piloter plusieurs projets
sans s’éparpiller

Pilote découpe des projets en phases, tâches et sous-tâches, avec un suivi de l’avancement. Le besoin tient en trois points : savoir où en est chaque projet, être alerté quand un indicateur dérive, et transformer des objectifs en un plan de semaine réaliste.

Approche

Un monorepo typé
de bout en bout

J’ai séparé une API NestJS (14 modules de contrôleurs, documentation Swagger) d’un frontend Next.js organisé par domaine. Prisma et PostgreSQL portent un modèle relationnel de 14 modèles, versionné par 6 migrations. L’authentification repose sur JWT, et Zod valide les données côté client comme côté serveur.

La couche IA est abstraite derrière une interface de fournisseur, avec des implémentations Anthropic, OpenAI, Gemini et un fournisseur compatible OpenAI (Groq, DeepSeek, Mistral, Ollama). Chaque utilisateur choisit son fournisseur et sa clé dans les Réglages. Les jetons Google sont chiffrés en AES-256-GCM avant stockage.

Pilote : détail d’un projet avec phases, signaux et progressionPilote : liste des projets
Défis

Alertes, IA et cohérence
des données

Les compteurs devaient alerter sur une fenêtre glissante. J’ai isolé la logique dans une fonction pure, qui renvoie « normal », « alerte » ou « absence de donnée » selon le seuil, le comparateur et le nombre de jours, et je l’ai couverte par un test unitaire dédié.

Le modèle de données a évolué avec l’usage, au fil des migrations : tâches sans projet, statut de phase, archivage de projet, réouverture d’une tâche terminée, modification et suppression des entrées de compteurs et de signaux. Une boîte de confirmation et des notifications encadrent les suppressions, qui sont définitives.

Une phase de consolidation a suivi : lint propre côté backend et frontend, puis tests de composants avec vitest et Testing Library.

Pilote : vue « Aujourd’hui » sur mobilePilote : détail d’un projet sur mobile
Pilote : vue « Aujourd’hui » avec les tâches du jour
Pilote : planificateur hebdomadaire IAPilote : calendrier mensuel des tâches
Résultat

Une application fonctionnelle,
documentée et testée

L’application couvre le cycle projets, phases, tâches, compteurs et signaux, les suggestions IA (tâches d’une phase, brouillon de projet, analyse des écarts), le planificateur hebdomadaire et un agenda synchronisé avec Google Calendar. Elle est documentée et testée (unitaires, e2e et composants). Limites assumées : pas de corbeille, et un planificateur qui ignore encore les phases.

Un projet similaire ?

Parlons de votre projet.

Décrivez-moi votre besoin en quelques lignes : application, dashboard, fonctionnalité IA à ajouter. Je réponds sous 24h avec un premier avis honnête sur votre projet.