From 9fde2924f4819d1c36362cc1ccb5198d3b92587b Mon Sep 17 00:00:00 2001 From: Adebesin Tolulope Date: Sun, 22 Mar 2026 15:27:24 +0100 Subject: [PATCH 01/36] feat: add brand page with logos, colors, typography, and usage guidelines Adds a /brand page for press and media use, featuring: - Logo section with dark/light previews and SVG/PNG downloads - Customizable logo preview with accent color picker and background toggle - Core brand color palette with click-to-copy hex and OKLch values - Typography specimens for Geist Sans and Geist Mono - Usage guidelines with do's and don'ts - Right-click context menu on header logo (copy SVG, browse brand kit) - Full i18n support - Navigation links in footer and mobile menu --- app/components/AppFooter.vue | 3 + app/components/AppHeader.vue | 29 +- app/components/Brand/Customize.vue | 180 +++++++++ app/components/LogoContextMenu.vue | 101 +++++ app/composables/useSvgToPng.ts | 45 +++ app/pages/brand.vue | 354 ++++++++++++++++++ i18n/locales/en.json | 75 +++- nuxt.config.ts | 1 + .../middleware/canonical-redirects.global.ts | 1 + 9 files changed, 778 insertions(+), 11 deletions(-) create mode 100644 app/components/Brand/Customize.vue create mode 100644 app/components/LogoContextMenu.vue create mode 100644 app/composables/useSvgToPng.ts create mode 100644 app/pages/brand.vue diff --git a/app/components/AppFooter.vue b/app/components/AppFooter.vue index 6955352350..56bc9c8901 100644 --- a/app/components/AppFooter.vue +++ b/app/components/AppFooter.vue @@ -38,6 +38,9 @@ const closeModal = () => modalRef.value?.close?.() {{ $t('translation_status.title') }} + + {{ $t('footer.brand') }} +