Abricot.
Application Next.js de gestion de projet permettant de créer des projets, organiser les tâches, gérer les contributeurs et générer des brouillons de tâches avec Mistral.

Contexte
Projet réalisé dans le cadre du parcours OpenClassrooms. L'objectif était de développer le frontend d'un SaaS collaboratif à partir d'une API Express existante, puis d'en améliorer l'environnement technique et la qualité.
Stack
Next.js App RouterTypeScriptReactReact Hook FormZodCSS ModulesExpressPrismaPostgreSQL / SupabaseMistral APIDockerVitest / RTLCypressGitHub Actions
Choix techniques
- Next.js App Router pour séparer le chargement serveur des interactions côté client
- Route Handlers pour sécuriser les échanges entre le navigateur et l’API Express
- React Hook Form et Zod pour gérer et valider les formulaires
- Prisma et PostgreSQL Supabase pour assurer une persistance distante des données
- Mistral côté serveur pour générer des brouillons de tâches validés avant création
- Docker pour conteneuriser le backend et fiabiliser son environnement d’exécution
- Vitest, RTL et Cypress pour couvrir les comportements métier et parcours critiques
- GitHub Actions pour automatiser lint, typecheck, tests et builds
Fonctionnalités
Ce que ce projet démontre
- Développement d'un frontend Next.js complet connecté à une API Express
- Gestion de formulaires complexes avec React Hook Form et Zod
- Intégration sécurisée d’un LLM avec validation des réponses
- Migration de SQLite vers PostgreSQL Supabase avec Prisma
- Conteneurisation d’un backend Node avec Docker
- Mise en place de tests unitaires, composants et E2E
- Automatisation des contrôles qualité avec GitHub Actions
Limites actuelles
- Backend initialement fourni puis adapté pour PostgreSQL et le déploiement
- Création des tâches IA réalisée séquentiellement sans endpoint de création en masse
- Couverture de tests volontairement ciblée sur les parcours et logiques critiques