# TODO ## Phase 1 - Backend & Scraper (TERMINÉ ✓) - [x] init repo pour backend FastAPI + logging + config - [x] créer scraper Amazon via Playwright avec parser robuste - [x] modèle SQLAlchemy (products, product_snapshots, scrape_runs) - [x] API CRUD produits + endpoints scraping - [x] tests unitaires parser, normalisation, pricing - [x] intégrer scheduler APScheduler pour `scrape_all` ## Phase 2 - Frontend (TERMINÉ ✓) - [x] page debug avec tables SQLite et logs (Étape 1) - [x] store Zustand pour état global (Étape 2) - [x] connecter App.jsx à l'API backend (fetch produits) (Étape 2) - [x] ajouter formulaire d'ajout de produit (URL Amazon) (Étape 3) - [x] actions scrape/delete sur produit (Étape 4) - [x] amélioration visuelle ProductCard (Étape 5) - [x] API enrichie avec ProductWithSnapshot - [x] section prix (actuel, conseillé, réduction, min 30j) - [x] badges (Prime, Choix Amazon, Deal, Exclusivité) - [x] note + nombre d'avis - [x] stock status coloré - [x] image non tronquée (object-fit: contain) - [x] grille responsive avec colonnes configurables - [x] graphique Chart.js historique 30j (Étape 6) - [x] composant PriceChart avec chart.js + react-chartjs-2 - [x] affichage min/max/tendance - [x] couleurs selon tendance (vert/jaune/rouge) - [x] page Settings avec config frontend/backend (Étape 7) - [x] corrections bugs UX (Étape 8) - [x] refresh après ajout produit - [x] décalage horaire dates (UTC → local) - [x] popup prévisualisation avant enregistrement avec scrape preview ## Phase 3 - Industrialisation - [ ] dockeriser backend + frontend + scheduler - [ ] docker-compose avec volumes persistants - [ ] tests E2E frontend