Skip to content
Browse documentation
On this page

Branding and themes

Change the name, logo, colors and email sender, on both the public site and the app.

Branding lives in two places: the public site reads EmDash's settings, and the app and sign-in pages read src/data/settings.json. Update both.

Rebrand checklist

Where

What to change

CMS settings

Site title, tagline, logo, Site URL, menus

CMS pages

Copy on the home, pricing, about and contact pages

seed/seed.json

The same values, for fresh installs

src/data/settings.json

site.name, site.url and customscripts

wrangler.jsonc

Domain in routes, PUBLIC_URL, EMAIL_FROM

package.json

The PUBLIC_URL in the deploy script

astro.config.mjs

The EmDash email sender and the session cookie name

src/styles/global.css

daisyUI theme colors

src/components/layout/header/Logo.astro, public/

App logo, favicon, icons

Themes

Colors come from daisyUI themes defined in src/styles/global.css:

@plugin "daisyui/theme" {
  name: "light";
  /* … */
  --color-primary: …;
  --color-primary-content: …;
}

Change the color variables to restyle every component at once. Components use semantic classes such as btn-primary and bg-base-200, so they follow the theme without edits. The theme toggle switches between the light and dark themes.

Fonts

Fonts are set in the fonts section of astro.config.mjs and exposed as CSS variables (--font-body and --font-display).