Problem
The admin panel has two separate branding systems:
- General Settings → Site Identity — logo, favicon, site name (already configurable from the admin UI)
astro.config.mjs → admin: { logo, favicon, siteName } — white-label config (new in 0.7.0)
These are disconnected. The admin panel doesn't use the Site Identity values that are already set in General Settings. Users expect that uploading a logo in Site Identity would brand the admin panel too.
Proposal
The admin panel should fall back to Site Identity values (logo, favicon, site name) when no explicit admin config is provided in astro.config.mjs. Priority order:
astro.config.mjs → admin: { logo } (explicit override, highest priority)
- General Settings → Site Identity → Logo (already stored in DB)
- EmDash default branding (current behavior, lowest priority)
This way:
- Agencies using
admin config keep full control
- Everyone else gets their branding "for free" without touching config files
- No breaking change — just a smarter default
Context
As a user, I already uploaded my logo and favicon in General Settings. I was surprised the admin panel still showed EmDash branding. The data is already there — it just needs to be read.
Problem
The admin panel has two separate branding systems:
astro.config.mjs→admin: { logo, favicon, siteName }— white-label config (new in 0.7.0)These are disconnected. The admin panel doesn't use the Site Identity values that are already set in General Settings. Users expect that uploading a logo in Site Identity would brand the admin panel too.
Proposal
The admin panel should fall back to Site Identity values (logo, favicon, site name) when no explicit
adminconfig is provided inastro.config.mjs. Priority order:astro.config.mjs→admin: { logo }(explicit override, highest priority)This way:
adminconfig keep full controlContext
As a user, I already uploaded my logo and favicon in General Settings. I was surprised the admin panel still showed EmDash branding. The data is already there — it just needs to be read.