§ Corrective

/typeface

Typography corrections — typeface, scale, hierarchy, and craft.

What it does

Inter on a white background with blue accents — that’s the typography signature of AI-generated UI, inherited from training data rather than chosen. /typeface replaces the inheritance with type that fits the product: a deliberate typeface, a scale that establishes hierarchy, and the dozens of craft details (smart quotes, tabular figures, asymmetric heading margins, letter-spacing on all-caps) that accumulate into perceived quality.

Like the other correctives, it uses a smart-default autonomy model: small craft fixes — smart quotes, tabular figures, line-height normalization — get applied directly. Character-level shifts — replacing the project’s typeface, changing the scale ratio, introducing a second face — are surfaced for your approval before executing.

Interactive

Hero — text

Mindfulness for real life

Find your stillpoint.

Five-minute practices designed to fit into the spaces of an ordinary day. Take a breath. Begin where you are.

Pull-quote section

A few minutes for yourself are the ones you give back to everyone else.

A note we hold close

When to use it

  • Typography feels generic, defaulted, or inconsistent across the project.
  • The interface uses Inter, Roboto, or system-ui as an apparent default rather than a deliberate choice.
  • Type hierarchy is weak — headings and body text don’t read as meaningfully different.
  • Spacing around type feels uneven: inconsistent line-heights, arbitrary margins, no clear vertical rhythm.
  • Craft details are missing — straight quotes instead of smart quotes, numeric data misaligned, no letter-spacing on all-caps labels.
  • A /survey has flagged typography issues and you want them addressed systematically.

How to use it

/typeface

By default /typeface runs a full audit covering typeface, scale, hierarchy, measure, leading, and craft details. Pass a scope argument to focus on one area — scale, hierarchy, measure, leading, rhythm, craft — or describe what you want fixed in plain language. Spruce stays focused on the requested area without drifting into adjacent typography concerns.

  • /typeface scale
  • /typeface craft

Anti-patterns it addresses

  • Inter, Roboto, or system-ui as silent defaults — typefaces that haven’t been chosen so much as inherited from training data.
  • Weak type hierarchy where h2 and body text differ by just a few pixels and a slight weight bump.
  • Symmetric heading margins that obscure which content the heading introduces.
  • Inconsistent line-heights — body text at 1.4 in one component and 1.75 in another, with no system.
  • Straight quotes (' ") in prose, three-period ellipses where a single character (…) belongs, hyphens used where en-dashes or em-dashes do.
  • Lining figures in tables and pricing — numerals that don’t align vertically because they aren’t tabular.
  • All-caps labels with default tracking — 0 letter-spacing where 0.05–0.1em would establish rhythm.

See also