AddThisFeature

Typography Scale

Replace ad-hoc font sizes with a small set of named type steps.

moderate Design Systems

What it adds

A fixed set of type steps, each pairing a size with its weight, line height, and letter spacing.

What your agent is told to do

5
  1. 1

    Collect every distinct font size, weight, and line height currently used in the app and reduce them to a small set of steps. A codebase with nineteen sizes almost always has six real ones and thirteen accidents.

  2. 2

    Bind line height and letter spacing to each step rather than leaving them to be set per component, because the same size at two different line heights reads as two different styles.

  3. 3

    Keep adjacent steps far enough apart to be told apart at a glance. Steps a single pixel apart give authors a decision they cannot make correctly and produce inconsistency by themselves.

  4. 4

    Separate the semantic element from the visual step: a heading level is about document structure, and the step it renders at is a layout decision. A section heading that needs to look small must not become a lower heading level to get there.

  5. 5

    How each step behaves between viewport sizes is owned by Fluid Typography; this feature owns which steps exist and what belongs to each. Define the steps first, then let the fluid rules interpolate them.

Edge cases it handles

7
  • Steps that sit too close together are indistinguishable in use, so authors pick arbitrarily and the scale stops meaning anything.
  • Translated copy runs longer than the English it replaced, so every step must be checked with long German compounds and with scripts that need more vertical space than Latin.
  • Heading levels convey structure and must not be chosen for their size; the scale has to make it possible to render an h3 at a small step without demoting it to h5.
  • Line height and weight that read well on a light background can look thin or heavy inverted, so each step needs checking in every theme rather than only the default one.
  • Scripts with tall ascenders and deep descenders, and text with diacritics, will clip in any step whose line height was tuned to lowercase Latin.
  • User-generated content arrives with its own markup and must be mapped onto the scale, or a pasted document introduces sizes that exist nowhere in the system.
  • The scale must survive the browser's own text-size setting and page zoom, which rules out expressing steps in units that ignore the user's preference.

Definition of done

9
  • The app renders text from a fixed set of named steps with no ad-hoc font sizes remaining in components.
  • Each step defines its size, weight, line height, and letter spacing together.
  • Adjacent steps are visually distinguishable side by side.
  • Heading level and visual step are chosen independently of one another.
  • Every step is legible in each theme and does not clip diacritics or descenders.
  • The scale responds to browser text-size settings and zoom.
  • Viewport interpolation is delegated to Fluid Typography rather than duplicated here.
  • The feature matches the existing design system.
  • No existing functionality is broken.

Related features

How it works

  1. 1

    Copy the link

    Grab the Markdown instruction URL for this feature.

  2. 2

    Give it to your AI

    Paste it into Claude Code, Cursor, v0, Lovable — whatever you build with.

  3. 3

    It inspects, then implements

    Your agent reads your existing app first, then adds the feature to fit it.

Works with your stack

These instructions are written to adapt. They tell the agent to detect your framework, match your existing design system, and reuse what you already have — rather than assuming a particular stack.

Need it tighter than that? Customize the feature and tell it exactly what you're running.