01 — Friction

Speed is rarely the problem. Agreement is.

A shared library only pays off when everyone reaches for the same part. These are the six ways that stops happening.

  1. Components get copied, not shared

    A pattern is pasted into a new screen and quietly forks. Two months on there are four of it.

  2. Tokens live in three places at once

    The design file, the stylesheet and a utility module each hold a different grey.

  3. Nobody owns the edges

    The happy path gets designed. Empty, loading and error states get invented at build time.

  4. Accessibility arrives as a bug report

    Contrast and focus order are checked after release rather than while the thing is drawn.

  5. The docs describe last year's version

    Usage notes drift from the code until reading them costs more than reading the source.

  6. Every new surface restarts the argument

    With no written rule, each team decides spacing, radius and tone from scratch again.