From b9a776b626f309457d348c7a17297bf8e2f51bf0 Mon Sep 17 00:00:00 2001 From: Bruno Charest Date: Thu, 8 Oct 2026 19:41:37 -0400 Subject: [PATCH] fix: le favicon est enfin le vrai logo, plus un placeholder (v7.69.2) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le favicon était un carré bleu #2383E2 avec les lettres « FD » écrites en SVG : génériques, sans aucun lien avec la marque, et rendues avec la police installée chez le visiteur (donc instables). static/favicon.ico est désormais généré depuis assets/logo.jpg — la même source que la bannière et les icônes PWA. 16/32/48 px dans un seul fichier, un seul pour tous les navigateurs, 4,1 Ko. Pourquoi un fond sombre et pas le logo nu : le logo est blanc à ~82 % (mesuré via Pillow — 50,7 % de blanc pur, plus 32 % de blancs proches). Posé nu, il se dissoudrait sur un onglet clair, qui est le cas nominal de Firefox et de Safari. Il est donc posé sur un carré #191919 arrondi, LE MÊME fond que les icônes PWA générées en v7.69.0, ce qui garde l'identité cohérente entre onglet, écran d'accueil et partage. Contraste mesuré à 16 px : σ = 106 avec le fond sombre, contre σ = 49 pour le logo seul — le fond sombre double littéralement la lisibilité à cette taille. Le test statique verrouille les tailles embarquées dans l'ICO. Mise à jour des 5 templates qui pointaient vers l'ancien SVG (base, import, landing, public_page, welcome) + la liste de pré-cache du service worker. static/favicon.svg SUPPRIMÉ : plus aucune référence dans le dépôt, le test le vérifie pour éviter qu'il revienne. pytest 1416 passed / 0 failed · ruff OK · OpenAPI 526 chemins / 7.69.2 --- CHANGELOG.md | 26 +++++++++++++++++++++++ VERSION | 2 +- WORKLOAD.md | 2 +- app/main.py | 2 +- app/templates/base.html | 2 +- app/templates/import.html | 2 +- app/templates/landing.html | 2 +- app/templates/public_page.html | 2 +- app/templates/welcome.html | 2 +- docs/openapi-v2.json | 2 +- static/favicon.ico | Bin 0 -> 4220 bytes static/favicon.svg | 4 ---- static/sw.js | 2 +- tests/test_v769_selection_persistence.py | 22 +++++++++++++++++++ 14 files changed, 58 insertions(+), 14 deletions(-) create mode 100644 static/favicon.ico delete mode 100644 static/favicon.svg diff --git a/CHANGELOG.md b/CHANGELOG.md index dc5b4e2..f188f36 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,31 @@ # Changelog - FlowDeck +## v7.69.2 (2026-10-08) — Le favicon est enfin le vrai logo + +### Fixed + +- **Le favicon était un placeholder** : un carré bleu `#2383E2` avec les lettres + « FD » écrites en `` SVG — génériques, sans lien avec la marque, et + rendus avec la police du visiteur. +- → `static/favicon.ico` généré depuis `assets/logo.jpg` : 16/32/48 px dans un + seul fichier (un `` pour tous les navigateurs), 4,1 Ko. + +**Pourquoi un fond sombre** : le logo est blanc à ~82 % (mesuré : 50,7 % de +blanc pur + 32 % de blancs proches). Posé nu, il disposerait sur un onglet clair +— cas nominal de Firefox et Safari en thème clair. Il est donc posé sur un +carré `#191919` arrondi, **le même fond que les icônes PWA** générées en v7.69.0, +ce qui garde une identité cohérente. Contraste mesuré à 16 px : σ = 106 (contre +σ = 49 pour le logo seul — le fond sombre double la lisibilité). + +Mise à jour des **5 templates** qui référençaient l'ancien SVG (`base`, +`import`, `landing`, `public_page`, `welcome`) + la liste de pré-cache du +service worker. `static/favicon.svg` **supprimé** : plus aucune référence. + +### Tests + +- `test_favicon_is_the_real_logo` (tailles ICO, absence du placeholder) + + `test_every_template_points_at_the_real_favicon` (5 templates + `sw.js`). + ## v7.69.1 (2026-10-08) — `og:image` en URL absolue ### Fixed diff --git a/VERSION b/VERSION index 0692f00..855b0c4 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -7.69.1 +7.69.2 diff --git a/WORKLOAD.md b/WORKLOAD.md index 4fae1fb..e2c2be4 100644 --- a/WORKLOAD.md +++ b/WORKLOAD.md @@ -1,6 +1,6 @@ # WORKLOAD — FlowDeck Notion Clone -> **Début**: 2026-07-08 | **Version**: v7.69.1 (sélection multi-blocs fonctionnelle : drag souris + Maj+↓ + Ctrl+C/X, clic droit qui préserve le surlignage ; identité visuelle logo/bannière) | **Statut**: EN COURS 🔄 +> **Début**: 2026-07-08 | **Version**: v7.69.2 (sélection multi-blocs fonctionnelle : drag souris + Maj+↓ + Ctrl+C/X, clic droit qui préserve le surlignage ; identité visuelle logo/bannière/favicon) > **Cible**: parité Notion + intégration forge · **Follow-ups v7.3 livrés**: sidebar teamspaces, notif `page.updated`, charts `number` + dashboards multi-DB, unfurl forge, UI Settings → Audit — voir `ROADMAP.md § v7.3.0` ## Avancement Global diff --git a/app/main.py b/app/main.py index e3cf24a..f3e5a2f 100644 --- a/app/main.py +++ b/app/main.py @@ -186,7 +186,7 @@ async def lifespan(_app: FastAPI): app = FastAPI( title="FlowDeck", - version="7.69.1", + version="7.69.2", docs_url="/docs", redoc_url="/redoc", lifespan=lifespan, diff --git a/app/templates/base.html b/app/templates/base.html index a48f7b8..2b90b9e 100644 --- a/app/templates/base.html +++ b/app/templates/base.html @@ -4,7 +4,7 @@ FlowDeck — {% block title_prefix %}Home{% endblock %} - + diff --git a/app/templates/import.html b/app/templates/import.html index 8762dcf..8084c94 100644 --- a/app/templates/import.html +++ b/app/templates/import.html @@ -4,7 +4,7 @@ Importer — FlowDeck - +