A component library that serves multiple brands has two failure modes. The first is
rigidity: the library is built for one brand, and every other brand works around
it, producing inconsistency and parallel implementations. The second is
fragmentation: the library tries to accommodate every brand's specifics directly,
and the component API becomes so configurable that it stops enforcing anything.
The solution to both is a clean separation between behavior and appearance. Components own their behavior: keyboard
navigation, focus management, ARIA attributes, interaction patterns. Visual styling is supplied through the token
system, which each brand can configure independently. A modal behaves the same way across every brand. It looks
different because the tokens it references resolve to different values depending on which brand context it's rendered
in.
This isn't a novel approach. It's the approach that lets systems scale without fragmenting. The work is in executing
it consistently across every component in the library.