Customization

Customize the logo, colors, favicon, NuxtUI theme, and font family in your app to match your brand.

Setup

  1. Logo
    • Create a logo (PNG, ~50×50px recommended)
    • Save to:
      public/images/logo.png 
    • Update your config:
      shared/config.ts
      brandingImages: {  logo: '/images/logo.png',  openGraphImage: '/images/open-graph.png', }, 
  2. Open Graph Image (Social Preview)
    • Create an OG image using Canva or OG Image Generator.
    • Recommended size: 1200×630px
    • Save to:
      public/images/open-graph.png 
  3. Favicon
    • Generate favicon assets using Favicon.io.
    • Place them in public/images/:
      • android-chrome-512x512.pngpwa-icon-48x48.png
      • android-chrome-192x192.pngpwa-icon-192x192.png
      • android-chrome-512x512.pngpwa-icon-512x512.png
      • apple-touch-icon.png
      • favicon.ico
  4. Font Family
    • Choose a font and apply it globally:
      app/assets/styles/main.css
      @theme {  --font-sans: 'Inter', sans-serif; } 
  5. Theme (Radius & Colors)
    • Radius:
      app/assets/styles/main.css
      :root {  --ui-radius: 0.5rem; } 
    • Colors:
      app/app.config.ts
      ui: {  colors: {  primary: 'blue',  neutral: 'neutral',  }, }, 
  6. Icons (Icones.js)
    • Browse icons at icones.js.org and use the icon name in your components:
      <UIcon name="lucide:heart" /> 

Usage

  • Run npm run dev to preview changes
  • Verify logo, favicon, fonts, and theme in the browser
  • Use a social preview checker to confirm the OG image
  • UI Components: For customizing UI elements (buttons, cards, modals, etc.), refer to the NuxtUI