Skip to content

Read the appearance configuration for the frontend boot path

GET
/appearance

Unauthenticated read of the brand / display / body / mono font slot IDs. The frontend calls this at boot to know which fonts to load before the user has signed in. Returns the same shape as the admin endpoint — there are no admin-only fields in AppearanceConfig.

Current appearance config (public)

Per-install brand and typography choices. Each field holds a font catalogue ID (e.g. limelight, inter-variable, system-sans); the frontend resolves the ID to an @font-face declaration at boot. Empty string means the slot uses the frontend’s default.

object
brand_font

Logo / hero font slot. Recommended for display faces (Limelight, Bebas Neue, Playfair Display); body text never uses this slot.

string
display_font

H1–H3 heading slot. Falls back to the body font when empty.

string
body_font

Body / UI text slot. Falls back to the system sans-serif stack when empty.

string
mono_font

Code / tabular numerics slot. Falls back to the system monospace stack when empty.

string
site_name

Display name of this install. Read-only here — it is owned and edited via the Site config (/admin/system/site); it is surfaced on this public boot path so the wordmark, login card, and document titles can render the configured name before the user has signed in. Defaults to “Artist Alley” when the operator hasn’t set one.

string
Example
Artist Alley
demo_mode

True when this install runs in demo mode (env AA_DEMO_MODE=1). Surfaced on the public boot path so the login card can advertise the shared demo credentials and a read-only banner can render once signed in. Absent/false in a normal install — zero footprint when off.

boolean