Skip to content

v1.8.0 — Branding customization

Choose a tag to compare

@chiam-ck chiam-ck released this 05 Jul 07:43
· 234 commits to main since this release
b02bf86

The product "face" becomes operator config — name, theme, logo — edited visually at cockpit → Branding, stored as [branding] in .bss-cli/settings.toml, hot-reloaded everywhere without restarts.

Highlights

  • 6 curated dark themes (phosphor default, amber-crt, ice, magenta, paper, solarized-dark) in the new bss-branding package — single source of truth for portal CSS variables and transactional-email colors, WCAG-contrast test-pinned.
  • Logo: built-in text glyphs ($ ● ▲ ✦ ► + custom 1–3 chars) render everywhere; optional PNG/JPEG/WebP upload replaces the glyph in the browser portal headers (magic-byte gated, ≤256 KB, never SVG). Emails and the CLI keep the glyph.
  • Cockpit Branding screen — swatch picker, mark picker, logo upload, HTMX live preview (writes nothing until Save). CLI parity: bss branding show / themes / set-theme / set-name / set-mark.
  • Version demoted — headers drop vX.Y.Z; a bss-cli v1.8.0 footer footnote carries product attribution (never rebranded).
  • Chat greeting unified — BSS_OPERATOR_NAME becomes an explicit override; unset, the bot greets with [branding].brand_name.
  • New accent_alt slot splits the decorative secondary accent (IDs, tool chrome) from the fixed semantic warn amber; leftover hardcoded phosphor greens converted to palette vars.
  • Self-serve portal gains the ?v= static-asset cache-buster.

Doctrine

CLAUDE.md Phase 0 amendment (settings.toml read rule) + new "Branding (v1.8)" block; 3 new make doctrine-check guards; DECISIONS 2026-07-05; phases/V1_8_0.md. Compose mounts .bss-cli/ read-only into portal-self-serve + subscription.

Upgrade notes

  • docker compose build && docker compose up -d (new env/volumes on portal-self-serve + subscription).
  • BSS_OPERATOR_NAME in .env now pins the chat greeting explicitly — unset it to follow the portal brand.
  • No DB migration.

🤖 Generated with Claude Code