Generate the email signature per brand and language from the register
Context and Problem Statement
Email is the surface every employee uses every day, and the signature is where a brand appears most often outside the sites. The earlier signatures were per-person HTML files kept in a separate repository, each edited by hand, with marks copied in and no shared text. What does the signature contain, how is it built so that every person gets it right, and how does it reach them?
Decision Drivers
Criteria 1 (trust), 2 (one family), 7 (three languages) and 9 (generated and tested) of ADR-0009; ADR-0005 (the endorsement line).
Considered Options
- One template per brand and language generated from the register, filled by a generator on the Brand site, with hosted PNG marks and the recipient’s fonts
- A per-person HTML file kept in a repository, as before
- A central rollout from the mail provider only, with no self-service
Decision Outcome
Proposed: the first option. brand/signature.yaml holds the layout values and the texts;
brand/src/signature.ts writes /signatures/<brand>.<lang>.html for the eleven brands and
three languages, a filled sample beside each, and an index; the Email signature topic shows
the samples and runs the generator.
- Content. The brand’s mark in colour as a PNG hosted on Brand (150 px wide from the 512 px file, so it is sharp on dense screens), the name in bold, the role, the brand’s line (name and area) in its text colour, phone, mobile, email and site, a hairline, the endorsement “Una unidad de AKRIBIS One” with the One lockup (units only; the parent and One are the endorsers), and the company’s legal line.
- Construction. A 480 px table with inline styles: what every mail client renders. The text is set in the recipient’s Arial, because no mail client loads web fonts; the mark is the one element that has to be exact, and it is an image. No background images, floated columns or social icons.
- Colour. Tokens only: ink for the name, neutral 700 for what is secondary, neutral 200 for the hairline, and the brand’s text colour (step 600, at least 4.5:1 on white) for its line and its links. The parent and One use their signature tones.
- Filling. A person’s data is five fields. The generator fills the template in the browser, drops rows whose field is empty, and copies the signature as rich text (for Gmail and Outlook) or as HTML. Nobody edits the HTML by hand; a change to the brand is a rebuild, and the marks update in every sent signature because they are hosted.
- The legal line is one, the company’s, in three languages; proposed until Voice (1.5) and legal review fix it.
- Proof. The tests check that every template exists for every brand and language, uses only palette colours, hosts its images on Brand at addresses the build published, keeps its width, and that the sample fills every placeholder.
Consequences
- Good, because a signature is a brand file like a mark: generated, hosted, the same for all.
- Good, because the units’ signatures carry the endorsement by construction.
- Open: rendering tests in real clients before ratification; a central rollout from the same HTML; a data-protection notice per country.