Commit Graph

  • 2043a1b8b5 maj main gilles 2026-03-09 18:26:04 +01:00
  • 2d5e5a05a2 claude 5 gilles 2026-03-09 18:19:38 +01:00
  • 4c279c387c fix(plantes): submitPlant — créer/modifier PlantVariety lors de la soumission du formulaire plante gilles 2026-03-08 19:49:05 +01:00
  • 149d8caa06 fix(plantes): test plant_variety + seed PlantVariety + formatPlantLabel + migrate.py nettoyage gilles 2026-03-08 19:45:52 +01:00
  • 672ac529e7 fix(plantes): deleteVariety/submitVariety — try/catch + refresh detailPlantObj gilles 2026-03-08 19:38:06 +01:00
  • 174ed9c25d feat(plantes): popup variété + bouton Variété + temp_germination/temps_levee_j gilles 2026-03-08 19:34:39 +01:00
  • 05b2ddc27c feat(plantes): store plants — actions variety CRUD gilles 2026-03-08 19:29:58 +01:00
  • 32c7781d14 feat(plantes): API plants.ts — Plant + PlantVariety + endpoints varieties gilles 2026-03-08 19:28:19 +01:00
  • d4d104b2c2 fix(plantes): import_graines — idempotence plant_variety + media + import unicodedata gilles 2026-03-08 19:08:32 +01:00
  • 0f5ebd25be feat(plantes): script import graines + arbustre (JSON → plant_variety) gilles 2026-03-08 19:04:56 +01:00
  • 1b7a8b8f25 fix(db): activer PRAGMA foreign_keys=ON pour SQLite (ON DELETE CASCADE effectif) gilles 2026-03-08 18:58:09 +01:00
  • 1095edffdb feat(plantes): router plants — GET retourne varieties + CRUD /varieties gilles 2026-03-08 18:54:30 +01:00
  • 8edcf5fd8d feat(plantes): migrate.py — sections plant_variety + temp_germination/temps_levee_j gilles 2026-03-08 18:52:48 +01:00
  • 1d4708585e fix(plantes): script migration — try/except rollback + DB_PATH absolu + commentaires IDs gilles 2026-03-08 18:51:50 +01:00
  • 18ee6e1fbe feat(plantes): script migration one-shot plant_variety + fusion haricot grimpant gilles 2026-03-08 17:36:11 +01:00
  • 4a7ecffbb8 fix(plantes): PlantImage __tablename__ explicite + varieties Field(default_factory=list) gilles 2026-03-08 17:34:55 +01:00
  • b41a0f817c fix(plantes): PlantWithVarieties — ajouter created_at manquant gilles 2026-03-08 14:11:35 +01:00
  • de967141ba feat(plantes): modèle Plant épuré + PlantVariety + PlantWithVarieties gilles 2026-03-08 14:10:12 +01:00
  • 734c33a12e docs: plan implémentation plantes/variétés — 8 tâches gilles 2026-03-08 14:06:21 +01:00
  • e40351e0be docs: design plantes/variétés — Option B 2 tables + import graines gilles 2026-03-08 14:01:42 +01:00
  • f8e64d6a2c feat(intrants): IntratsView with Achats + Fabrications tabs gilles 2026-03-08 13:24:26 +01:00
  • 80173171b3 feat(intrants): add /intrants route + sidebar nav gilles 2026-03-08 13:19:11 +01:00
  • 8bf281a3fb feat(intrants): frontend API clients + Pinia stores gilles 2026-03-08 10:10:10 +01:00
  • d2f2f6d7d7 feat(intrants): register achats + fabrications routers gilles 2026-03-08 10:09:23 +01:00
  • 107640e561 feat(intrants): CRUD + statut router for fabrications gilles 2026-03-08 10:08:27 +01:00
  • a5c503e1f3 feat(intrants): CRUD router for achats gilles 2026-03-08 10:08:14 +01:00
  • 75f18c9eb8 feat(intrants): add migration for achat_intrant + fabrication tables gilles 2026-03-08 10:07:28 +01:00
  • faa469e688 feat(intrants): add AchatIntrant + Fabrication SQLModel gilles 2026-03-08 10:05:53 +01:00
  • 14636bd58f 8 mars gilles 2026-03-08 10:04:14 +01:00
  • 7967f63fea avant 50 gilles 2026-03-01 07:21:46 +01:00
  • 9db5cbf236 before gemiin gilles 2026-02-22 22:18:32 +01:00
  • fb33540bb0 refactor(settings): extraire UI_SIZE_DEFAULTS partagé + catch erreur saveUiSettings gilles 2026-02-22 20:15:57 +01:00
  • 155de270dc feat(settings): sliders taille texte/menu/icônes/miniatures + CSS vars globales gilles 2026-02-22 20:12:22 +01:00
  • 0d3bf205b1 feat(saints-dictons): table saint_du_jour + API + import standalone 366j gilles 2026-02-22 19:54:47 +01:00
  • a9f0556d73 fix(router): guard OperationalError si tables météo inexistantes gilles 2026-02-22 19:16:46 +01:00
  • 55387f4b0e maj via codex gilles 2026-02-22 18:34:50 +01:00
  • 20af00d653 avant codex gilles 2026-02-22 15:05:40 +01:00
  • fed449c784 feat(router): endpoints météo tableau/station/previsions + tests gilles 2026-02-22 14:56:11 +01:00
  • 2ca8281b0a feat(scheduler): APScheduler 3 jobs météo dans FastAPI lifespan gilles 2026-02-22 14:50:33 +01:00
  • 3b1601a07b feat(service): open-meteo enrichi (sol, ETP, past_days, humidité) + tests gilles 2026-02-22 14:46:37 +01:00
  • 8a7a2c7c6d feat(service): scraper station WeeWX (RSS current + NOAA yesterday) gilles 2026-02-22 14:42:18 +01:00
  • cc69d0d5ad feat(astuce): ajout colonnes categorie/tags/mois + migration gilles 2026-02-22 14:38:06 +01:00
  • 17d2c5ac18 feat(models): tables MeteoStation + MeteoOpenMeteo (SQLModel) gilles 2026-02-22 14:34:20 +01:00
  • 29e2f18e98 feat(config): ajout STATION_URL, METEO_LAT/LON + apscheduler dep gilles 2026-02-22 14:32:07 +01:00
  • f1f4c97dc6 docs: plan implémentation météo + astuces (12 tâches, TDD, bite-sized) gilles 2026-02-22 14:30:10 +01:00
  • 3032751d16 docs: design météo + astuces (APScheduler + SQLite + tableau synthétique) gilles 2026-02-22 14:24:34 +01:00
  • 326158f680 fix: noms PlantNet en français (lang=fr) + sauvegarde image systématique sans plante liée gilles 2026-02-22 13:11:34 +01:00
  • 7361958fe2 fix(nginx): client_max_body_size 20M pour les photos iPhone + proxy_read_timeout gilles 2026-02-22 13:07:57 +01:00
  • fa23dd8f2b fix(frontend): ajouter Bibliothèque dans le sidebar desktop App.vue gilles 2026-02-22 13:05:41 +01:00
  • de2b95ff94 fix: ne pas cacher les résultats vides, retirer clé API hardcodée gilles 2026-02-22 12:48:58 +01:00
  • 94ebe338a0 feat: vue BibliothequeView + route /bibliotheque + nav + endpoint media/all gilles 2026-02-22 12:35:46 +01:00
  • 7349f770e6 feat(frontend): modal PhotoIdentifyModal — upload + identification + association gilles 2026-02-22 12:31:32 +01:00
  • 941bf7aa3e feat(frontend): composant PhotoGallery réutilisable avec lightbox et upload gilles 2026-02-22 12:25:11 +01:00
  • 2065ff7c8a test(backend): tests endpoint /api/identify — PlantNet, YOLO fallback, cache gilles 2026-02-22 12:23:41 +01:00
  • 883299272f feat(backend): champs identified_* sur Media pour stocker l'identification gilles 2026-02-22 12:20:32 +01:00
  • 560fa63a45 feat(backend): endpoint POST /api/identify PlantNet + YOLO fallback + cache gilles 2026-02-22 12:18:56 +01:00
  • 2e67e9cb02 feat(backend): services PlantNet et YOLO pour identification de plantes gilles 2026-02-22 12:17:23 +01:00
  • 6ca233d720 feat(backend): service cache Redis pour identifications gilles 2026-02-22 12:14:31 +01:00
  • 1af5f66855 fix(ai-service): gestion erreurs, health check, limite taille, run_in_executor gilles 2026-02-22 12:11:58 +01:00
  • ad1c1044c7 feat(ai-service): container YOLO FastAPI pour détection plantes gilles 2026-02-22 12:09:56 +01:00
  • 2d8b1b40ce docs: README installation + structure projet + API gilles 2026-02-22 04:20:17 +01:00
  • 911395accc feat(frontend): vues MVP — dashboard, jardins, grille, variétés, tâches, plantations gilles 2026-02-22 04:18:11 +01:00
  • 3c5f0d571f feat(frontend): layout header + drawer + router (9 routes) gilles 2026-02-22 04:12:35 +01:00
  • f29f90a16f feat(frontend): API layer + stores Pinia gilles 2026-02-22 04:10:16 +01:00
  • b8edb6bc0a feat(frontend): scaffold Vue 3 + Vite + Tailwind Gruvbox gilles 2026-02-22 04:07:07 +01:00
  • 0057a3cbcc feat(backend): settings, upload media, seed données démo gilles 2026-02-21 21:25:29 +01:00
  • 4787f044e5 feat(backend): CRUD variétés, plantations, tâches + tests gilles 2026-02-21 21:22:58 +01:00
  • aa379aa1b4 feat(backend): CRUD jardins + tests gilles 2026-02-21 21:20:02 +01:00
  • 26b5a3dbdf feat(backend): modèles SQLModel (10 tables) gilles 2026-02-21 21:17:09 +01:00
  • cf4fbfd4a0 feat(backend): setup FastAPI + SQLite + config gilles 2026-02-21 21:14:10 +01:00
  • d79f94e948 fix: docker-compose utilise env_file, .gitignore couvre sous-dossiers gilles 2026-02-21 21:12:23 +01:00
  • 041b96aa60 chore: scaffold projet + docker-compose gilles 2026-02-21 21:09:59 +01:00
  • c1fe3e2636 docs: plan d'implémentation webapp jardin (11 tâches) gilles 2026-02-21 21:07:19 +01:00
  • b871578ccc docs: ajout du design document webapp jardin gilles 2026-02-21 20:51:46 +01:00