Per-builder typography

Each builder picks a display, body and mono face from a curated list, loaded at runtime for the portal only.

What it is

Three type slots because a document needs three voices: display for the builder's name, project name and headings; body for everything the customer reads; mono for labels, counters, quantities and dollar figures. The list is curated rather than the whole of Google Fonts, and every face is chosen to still look like a construction document. Condensed industrial faces lead the display list.

Also called: choose my fonts · portal font · brand typeface

See it
Per-builder typography
🔒ridgelinepostframe.com/project/portal317
Riding Arena
Framing · on schedule
The font picker showing Oswald, Big Shoulders, Barlow Condensed with their character notes. src/lib/portalFonts.ts. Sample data — no customer information appears here.
How it works
  1. 1The chosen families are resolved at runtime and loaded from the Google Fonts CSS API in one request
  2. 2The provider sets the three portal font variables plus the admin app's names so old markup follows
  3. 3Each face declares its fallback stack for when Google is blocked or slow
  4. 4Weights are kept tight so the portal stays fast
Why we built it

A builder's quote set in a default system font, opened next to their website in their own typeface, reads as two different companies. Each builder picks a title face, a body face and a mono face, resolved per builder when the page is served rather than baked in for everyone. The list is curated rather than open, because a builder choosing from 1,800 families will land on something that hurts to read, and it is their customers who have to read it.

The problem
  • Build-time font binding preventing per-tenant typography
  • Unbounded font choice producing bad documents
Sound familiar?
What you get
The portal reads in the builder's own typographic voice
The curated list keeps every choice looking like a building document

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →