All projects
Component Libraries
Valhalla UI
The Challenge
Reusing components across projects kept failing at the theme boundary: colours were hard-coded, focus states were inconsistent, and every fork drifted.
The Solution
Split behaviour from appearance. Primitives handle interaction and accessibility; a documented token contract in CSS variables handles the look. Rebranding is a stylesheet, not a fork.
screenshot / demo video
Technologies Used
TypeScript
Strict generics on polymorphic components.
ARIA APG patterns
Keyboard and screen-reader tested against the APG.
CSS custom properties
Runtime theming with zero JavaScript cost.
Vitest + Testing Library
Behaviour coverage on every primitive.
