➡️ Cette base de code est la solution de l'exercice Migrez du code JavaScript vers TypeScript
Une application React moderne pour la vente de plantes d'intérieur et d'extérieur, construite avec Vite, TypeScript et React Router.
- React 19 - Bibliothèque UI
- TypeScript - Typage statique
- Vite - Build tool et dev server
- React Router DOM - Navigation entre pages
- ESLint - Linting du code
src/
├── assets/ # Images des plantes
├── components/ # Composants React
│ ├── layout/ # Composants de mise en page
│ └── ui/ # Composants d'interface
├── datas/ # Données des plantes
├── hooks/ # Hooks personnalisés
├── pages/ # Pages de l'application
├── services/ # Services (paiement)
└── styles/ # Fichiers CSS
- Catalogue de plantes : Affichage des plantes avec filtres par catégorie
- Panier d'achat : Ajout/suppression de produits, gestion des quantités
- Pages détaillées : Informations complètes sur chaque plante
- Système de paiement : Intégration de formulaire de paiement
- Responsive design : Interface adaptée mobile et desktop
- Node.js (version 18 ou supérieure)
- npm ou yarn
# Cloner le repository
git clone [url-du-repo]
# Installer les dépendances
npm install
# Démarrer le serveur de développement
npm run dev
L'application sera accessible à l'adresse http://localhost:5173
npm run dev # Démarre le serveur de développement
npm run build # Compile l'application pour la production
npm run preview # Prévisualise la version de production
npm run lint # Lance ESLint pour vérifier le code
Ce projet utilise Vite comme build tool pour un développement rapide avec HMR (Hot Module Replacement).
Configuration TypeScript avec support complet pour React et les fonctionnalités modernes.
Configuration ESLint avec règles recommandées pour TypeScript et React.
react
&react-dom
: Interface utilisateurreact-router-dom
: Navigation entre pagestypescript
: Typage statiquevite
: Build tool et dev server
L'application suit une architecture modulaire avec :
- Composants réutilisables dans
src/components/
- Pages dans
src/pages/
pour chaque route - Hooks personnalisés dans
src/hooks/
pour la logique métier - Données centralisées dans
src/datas/