From e9fce4be8f170f4733669eecf5cd294e3a2af00a Mon Sep 17 00:00:00 2001 From: Yvv Date: Mon, 28 Sep 2026 10:15:46 +0200 Subject: [PATCH] =?UTF-8?q?design=20:=20accueil=20en=20trois=20variantes?= =?UTF-8?q?=20(console,=20parcours,=20=C3=A9tabli)=20+=20couleur=20par=20a?= =?UTF-8?q?xe?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - typo : Bricolage Grotesque (titres) + Atkinson Hyperlegible (texte), Syne gardée pour le logo seul ; une seule source de polices (Bunny) - palettes : teinte propre à chaque axe dans les 4 ambiances ; pages d'axe en axis-scope, cartes sans bordure (canon design) - accueil : console des trois curseurs (tablist clavier), boîte à outils, bloc format éditorial + événement + reproduction ; ?v=a|b|c|0 - numérique : carte LPK ; bouquet rendu avec statut et légende - messages : sans bordure, deux colonnes en grand écran Co-Authored-By: Claude Opus 5.5 --- app/assets/css/fonts.css | 6 +- app/assets/css/main.css | 15 +- app/components/book/BookPdfReader.vue | 2 +- app/components/book/BookPlayer.vue | 4 +- app/components/home/HomeCitations.vue | 42 ++ app/components/home/HomeConsole.vue | 472 +++++++++++++++++ app/components/home/HomeFormat.vue | 362 +++++++++++++ app/components/home/HomeMessages.vue | 44 +- app/components/home/HomeShadoks.vue | 83 +++ app/components/home/HomeToolItem.vue | 196 +++++++ app/components/home/HomeToolbox.vue | 241 +++++++++ app/components/home/HomeVariantConsole.vue | 185 +++++++ app/components/home/HomeVariantEtabli.vue | 492 ++++++++++++++++++ app/components/home/HomeVariantParcours.vue | 321 ++++++++++++ app/components/home/HomeVariantSwitch.vue | 71 +++ app/components/layout/TheHeader.vue | 19 +- app/composables/useHomeData.ts | 144 +++++ app/composables/useSiteContent.ts | 7 + app/pages/citoyenne/[slug].vue | 2 +- app/pages/citoyenne/index.vue | 6 +- app/pages/economique/index.vue | 10 +- app/pages/economique/monnaie-libre.vue | 2 +- .../economique/productions-collectives.vue | 2 +- app/pages/index.vue | 32 +- app/pages/numerique/[slug].vue | 94 +++- app/pages/numerique/index.vue | 64 ++- app/stores/palette.ts | 19 + nuxt.config.ts | 4 +- uno.config.ts | 16 +- 29 files changed, 2901 insertions(+), 56 deletions(-) create mode 100644 app/components/home/HomeCitations.vue create mode 100644 app/components/home/HomeConsole.vue create mode 100644 app/components/home/HomeFormat.vue create mode 100644 app/components/home/HomeShadoks.vue create mode 100644 app/components/home/HomeToolItem.vue create mode 100644 app/components/home/HomeToolbox.vue create mode 100644 app/components/home/HomeVariantConsole.vue create mode 100644 app/components/home/HomeVariantEtabli.vue create mode 100644 app/components/home/HomeVariantParcours.vue create mode 100644 app/components/home/HomeVariantSwitch.vue create mode 100644 app/composables/useHomeData.ts diff --git a/app/assets/css/fonts.css b/app/assets/css/fonts.css index 6bad2cc..7dce6b5 100644 --- a/app/assets/css/fonts.css +++ b/app/assets/css/fonts.css @@ -2,13 +2,13 @@ /* This file provides fallback and utility classes */ .font-display { - font-family: 'Syne', system-ui, sans-serif; + font-family: var(--font-display); } .font-sans { - font-family: 'Space Grotesk', system-ui, sans-serif; + font-family: var(--font-sans); } .font-mono { - font-family: 'JetBrains Mono', ui-monospace, monospace; + font-family: var(--font-mono); } diff --git a/app/assets/css/main.css b/app/assets/css/main.css index 2c63960..c20a663 100644 --- a/app/assets/css/main.css +++ b/app/assets/css/main.css @@ -15,8 +15,14 @@ --player-height: 0rem; --sidebar-width: 280px; - --font-display: 'Syne', sans-serif; - --font-sans: 'Space Grotesk', sans-serif; + --font-display: 'Bricolage Grotesque', system-ui, sans-serif; + --font-sans: 'Atkinson Hyperlegible', system-ui, sans-serif; + --font-logo: 'Syne', sans-serif; + + /* One hue per axis — overridden by each palette (stores/palette.ts) */ + --axis-num: 198 70% 30%; + --axis-eco: 24 88% 42%; + --axis-cit: 150 45% 28%; --font-mono: 'JetBrains Mono', monospace; --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1); @@ -85,6 +91,11 @@ a { background: hsl(var(--color-text) / 0.25); } +/* ═══ Axis scopes — each axis page takes its own hue as primary ═══ */ +.axis-scope--num { --color-primary: var(--axis-num); } +.axis-scope--eco { --color-primary: var(--axis-eco); } +.axis-scope--cit { --color-primary: var(--axis-cit); } + /* ═══ Light mode overrides ═══ */ .palette-light { color-scheme: light; diff --git a/app/components/book/BookPdfReader.vue b/app/components/book/BookPdfReader.vue index bc9537d..9e5ac5d 100644 --- a/app/components/book/BookPdfReader.vue +++ b/app/components/book/BookPdfReader.vue @@ -110,7 +110,7 @@ onUnmounted(() => { display: flex; align-items: center; gap: 0.625rem; - font-family: var(--font-display, 'Syne', sans-serif); + font-family: var(--font-display); font-size: 0.9rem; font-weight: 600; color: white; diff --git a/app/components/book/BookPlayer.vue b/app/components/book/BookPlayer.vue index 6bd34c3..5ac31a5 100644 --- a/app/components/book/BookPlayer.vue +++ b/app/components/book/BookPlayer.vue @@ -606,7 +606,7 @@ onUnmounted(() => { } .reader-bar-title { flex: 1; - font-family: var(--font-display, 'Syne', sans-serif); + font-family: var(--font-display); font-size: clamp(0.85rem, 2.5vw, 1.1rem); font-weight: 600; color: white; @@ -647,7 +647,7 @@ onUnmounted(() => { gap: 0.25rem; } .sommaire-title { - font-family: var(--font-display, 'Syne', sans-serif); + font-family: var(--font-display); font-size: 0.85rem; font-weight: 700; color: hsl(var(--color-text-muted)); diff --git a/app/components/home/HomeCitations.vue b/app/components/home/HomeCitations.vue new file mode 100644 index 0000000..1f1b849 --- /dev/null +++ b/app/components/home/HomeCitations.vue @@ -0,0 +1,42 @@ + + + + + diff --git a/app/components/home/HomeConsole.vue b/app/components/home/HomeConsole.vue new file mode 100644 index 0000000..00574f4 --- /dev/null +++ b/app/components/home/HomeConsole.vue @@ -0,0 +1,472 @@ + + + + + diff --git a/app/components/home/HomeFormat.vue b/app/components/home/HomeFormat.vue new file mode 100644 index 0000000..c576034 --- /dev/null +++ b/app/components/home/HomeFormat.vue @@ -0,0 +1,362 @@ + + + + + diff --git a/app/components/home/HomeMessages.vue b/app/components/home/HomeMessages.vue index f6dc3d9..91e4263 100644 --- a/app/components/home/HomeMessages.vue +++ b/app/components/home/HomeMessages.vue @@ -1,6 +1,6 @@