docs: mise à jour README et plan.md — phases 3/4b complètes (v0.5.1)
- README : fonctionnalités enrichies avec thème, UX mobile, version actuelle - plan.md : phase 3 complétée (tags, photo HEIC, Ctrl+V, bottom sheet multi-select) - plan.md : nouvelle phase 4b UX transversale (ThemeContext, ConfigPage, TopBar, keyboard fix, "Pas de date", nginx media fix) - plan.md : ordre de développement mis à jour (phases 1-4b ✅) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+36
-1
@@ -93,6 +93,7 @@
|
||||
- [x] `POST /api/shopping/lists/generate` — liste magique V1 (score = retard / intervalle moyen, articles cochés comme historique)
|
||||
- [x] Schémas Pydantic complets (listes, articles, produits, magasins)
|
||||
- [x] Tests d'intégration (10 tests)
|
||||
- [x] Champ `tags TEXT[]` sur les produits du catalogue (migration 006)
|
||||
|
||||
### Frontend
|
||||
- [x] Page Shopping avec 3 vues : liste des listes / détail / mode magasin
|
||||
@@ -107,6 +108,13 @@
|
||||
- [x] Hook `useWakeLock` avec fallback gracieux (mode économie d'énergie)
|
||||
- [x] Client API TypeScript typé (`frontend/src/api/shopping.ts`)
|
||||
- [x] Migration TodoForm vers Modal (plus de panneau inline)
|
||||
- [x] Bottom sheet multi-select pour l'ajout d'articles depuis le catalogue
|
||||
- [x] Stats d'achat dans le catalogue : dernier achat + intervalle moyen par produit
|
||||
- [x] Swipe gauche → modal édition (TodoPage + ShoppingPage)
|
||||
- [x] Tags sur les produits : chip-input dans CatalogueModal, recherche étendue aux tags
|
||||
- [x] Recherche article : `type="search"` supprime la suggestion URL iOS, `autoFocus` automatique
|
||||
- [x] Upload photo produit : support HEIC/HEIF, redimensionnement 500×500 max (ratio conservé), miniature auto
|
||||
- [x] Collage Ctrl+V photo dans CatalogueModal et TodoForm
|
||||
|
||||
---
|
||||
|
||||
@@ -142,6 +150,33 @@
|
||||
|
||||
---
|
||||
|
||||
## Phase 4b — UX transversale ✅
|
||||
|
||||
**Objectif** : améliorations d'expérience applicables à tous les modules.
|
||||
|
||||
### Thème et apparence
|
||||
- [x] `ThemeContext` : gestion dark / light / system avec persistance `localStorage`
|
||||
- [x] Script anti-flash dans `index.html` : thème et zoom appliqués avant le premier rendu
|
||||
- [x] Page `/config` : boutons thème + slider police (0.8–1.4, pas de 0.05)
|
||||
- [x] Aperçu temps réel du texte sur le slider
|
||||
- [x] Zoom CSS sur `<html>` : scale global compatible avec les tailles en pixels fixes
|
||||
- [x] `TopBar` : en-tête fixe 44px avec bouton de thème cyclique (lune / soleil / demi-cercle)
|
||||
- [x] Tuile "Paramètres" sur la page d'accueil (`/config`, icône `fa-sliders`)
|
||||
|
||||
### Mobile — clavier iOS
|
||||
- [x] `BottomSheet` : `visualViewport` API pour remonter le panneau au-dessus du clavier virtuel
|
||||
- [x] Transition fluide (0.15s) sur `bottom`, `max-height`, `border-radius` à l'ouverture du clavier
|
||||
|
||||
### Todos
|
||||
- [x] Case "Pas de date" pré-cochée par défaut dans `TodoForm` (champ date masqué)
|
||||
- [x] Collage Ctrl+V pour coller une image directement dans le formulaire Todo
|
||||
|
||||
### Infra / Media
|
||||
- [x] nginx : `location ^~ /media/` pour éviter que la règle regex WebP prenne la priorité
|
||||
- [x] nginx : `client_max_body_size 15m` pour les photos de smartphone (3–8 Mo)
|
||||
|
||||
---
|
||||
|
||||
## Phase 5 — Scan produits + enrichissement catalogue
|
||||
|
||||
**Objectif** : scan code-barres depuis mobile, auto-remplissage depuis OpenFoodFacts.
|
||||
@@ -227,5 +262,5 @@
|
||||
## Ordre de développement
|
||||
|
||||
```
|
||||
Phase 1 ✅ → Phase 2 ✅ → Phase 3 ✅ → Phase 4 (Notes) → Phase 5 (Scan) → Phase 6 (OCR) → Phase 7 (Shopping avancé) → Phase 8 (MCP)
|
||||
Phase 1 ✅ → Phase 2 ✅ → Phase 3 ✅ → Phase 4 ✅ → Phase 4b ✅ → Phase 5 (Scan) → Phase 6 (OCR) → Phase 7 (Shopping avancé) → Phase 8 (MCP)
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user