15 — Projet Final : Todo App

🎯 Objectif

Construire une application Todo complète qui combine tous les concepts vus dans le cours :

🏗️ Architecture des composants

ThemeProvider (Context — leçon 13)
└── App (state principal — leçon 5/11)
    ├── Header (props — leçon 4)
    ├── TodoForm (formulaire contrôlé — leçon 10, useRef — leçon 12)
    ├── TodoFilters (événements — leçon 6)
    ├── TodoList (listes/clés — leçon 8)
    │   └── TodoItem (rendu conditionnel — leçon 7, props — leçon 4)
    └── Footer (props — leçon 4)

🚀 Application Todo

📝 Récapitulatif du cours

Ce projet utilise tous les concepts vus dans les 14 leçons précédentes :

ConceptUtilisé dans
Composants fonctionnelsHeader, TodoForm, TodoItem, TodoList, Footer
PropsTous les composants enfants
useStateApp (todos, filter), TodoForm (text, priority), TodoItem (editing)
ÉvénementsonClick, onChange, onSubmit, onDoubleClick, onKeyDown
Rendu conditionnelTodoItem (mode édition), filtres, liste vide
Listes & clésTodoList (.map avec key), filtres (.filter)
useEffectuseLocalStorage (persistence), focus auto
Formulaires contrôlésTodoForm, TodoItem (édition)
Lifting State UpApp détient le state, passe aux enfants
useRefFocus auto input (TodoForm, TodoItem)
useContextThème global (couleurs) dans tous les composants
Custom HooksuseLocalStorage pour persister todos et thème

🎓 Et après ?

Tu maîtrises maintenant les fondamentaux de React. Pour aller plus loin :

← 14 — Custom Hooks 📚 Retour au sommaire