Skip to main content

Branding configuration

Generates the document imported by Portal customisation → Branding → Import configuration. Output a single JSON object. Every field is optional: whatever you omit keeps its current value in the portal. Nothing is written to the database on import — the operator reviews the result in the form and presses Save.

Document

Fields

style

  • bold — Instrument Serif headings, large display type, gradient accents.
  • minimal — headings drop to the body font at reduced sizes, gradients collapse to flat colour.
This is a single switch across the whole portal; there is no per-page override.

Colour format

Colours are space-separated HSL channels, not hex and not hsl(...):
Convert hex to HSL before writing the document. The values are injected straight into CSS custom properties, so an invalid string produces an unstyled portal rather than an error. primary_opposite is the text colour placed on top of primary — it needs to contrast with it, normally white or near-black. Getting this wrong is the most common cause of unreadable buttons.

Speech term boosting

Domain vocabulary that speech-to-text would otherwise mishear. Supply the words a learner will actually say out loud that a general-purpose recogniser gets wrong: clinical terms, drug names, product names, the organisation’s own name. Constraints, enforced on import exactly as the form enforces them:
  • 5 to 50 characters per term. Shorter or longer terms are dropped and reported. This rules out most short abbreviations — ECG is too short to qualify, electrocardiogram is fine.
  • Maximum 100 terms. Beyond that the first 100 are kept and the rest reported.
  • Only supported in some speech languages. The branding tab lists which; a term set for an unsupported language is simply inert.
Quality matters more than quantity. A long list of common words dilutes the boost and can make recognition worse, so prefer 10-40 genuinely domain-specific terms over a hundred generic ones. Write each term as it is spoken, in normal capitalisation.

Rules

  • Reject the document rather than guess if style is not one of the two values.
  • Do not invent colours to fill the palette. Supply only what the brand defines and let the rest keep their current values.
  • Check contrast between primary and primary_opposite before emitting.