From 7cf13666494a859f4621d014f2781674192750ac Mon Sep 17 00:00:00 2001 From: kayjaydee Date: Wed, 8 Apr 2026 16:17:04 +0200 Subject: [PATCH] feat(02-01): design system, color-mode, sitemap config - Brand color #85cb85 as CSS @theme with full shade palette - app.config.ts maps Nuxt UI primary to brand - colorMode with cookie storage, dark default, no FOUC - i18n baseUrl and site.url for absolute SEO URLs - Static og:image placeholder in public/ --- app.config.ts | 7 +++++++ app/assets/css/main.css | 16 ++++++++++++++++ nuxt.config.ts | 14 ++++++++++++++ public/og-image.png | 1 + 4 files changed, 38 insertions(+) create mode 100644 app.config.ts create mode 100644 app/assets/css/main.css create mode 100644 public/og-image.png diff --git a/app.config.ts b/app.config.ts new file mode 100644 index 0000000..d98a2b3 --- /dev/null +++ b/app.config.ts @@ -0,0 +1,7 @@ +export default defineAppConfig({ + ui: { + colors: { + primary: 'brand', + }, + }, +}) diff --git a/app/assets/css/main.css b/app/assets/css/main.css new file mode 100644 index 0000000..6adab29 --- /dev/null +++ b/app/assets/css/main.css @@ -0,0 +1,16 @@ +@import "tailwindcss"; +@import "@nuxt/ui"; + +@theme { + --color-brand-50: #f0faf0; + --color-brand-100: #dcf3dc; + --color-brand-200: #bbe8bb; + --color-brand-300: #8dd98d; + --color-brand-400: #a3d6a3; + --color-brand-500: #85cb85; + --color-brand-600: #5aaa5a; + --color-brand-700: #3f8c3f; + --color-brand-800: #2e6b2e; + --color-brand-900: #1f4f1f; + --color-brand-950: #122d12; +} diff --git a/nuxt.config.ts b/nuxt.config.ts index 1dbb5b4..a45cf98 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -3,6 +3,7 @@ export default defineNuxtConfig({ compatibilityVersion: 4 }, ssr: true, + css: ['~/assets/css/main.css'], modules: [ '@nuxt/ui', '@nuxtjs/i18n', @@ -14,9 +15,22 @@ export default defineNuxtConfig({ typescript: { strict: true }, + colorMode: { + preference: 'dark', + fallback: 'dark', + storage: 'cookie', + storageKey: 'nuxt-color-mode', + cookieName: 'nuxt-color-mode', + classSuffix: '' + }, + site: { + url: 'https://killiandalcin.fr', + name: 'Killian Dalcin - Developpeur Full Stack' + }, i18n: { strategy: 'prefix_except_default', defaultLocale: 'fr', + baseUrl: 'https://killiandalcin.fr', locales: [ { code: 'fr', language: 'fr-FR', file: 'fr.json' }, { code: 'en', language: 'en-US', file: 'en.json' }, diff --git a/public/og-image.png b/public/og-image.png new file mode 100644 index 0000000..fd256f9 --- /dev/null +++ b/public/og-image.png @@ -0,0 +1 @@ +PLACEHOLDER: Replace with actual 1200x630 og:image for killiandalcin.fr