Kumo

Design system for Cloudflare with design tokens, UI components, and a component library

Why we like it

Kumo is a pragmatic, modern take, and two choices stand out. Rather than re-implementing behavior, it builds on Base UI primitives and re-exports them, so keyboard navigation, focus management and ARIA come from a tested foundation. And it treats coding agents as first-class: a CLI serves component docs on demand, and an AGENTS.md encodes the token rules and hard 'never do' constraints an agent should follow.

It's a modern toolchain, Vite, Tailwind and TypeScript, with granular imports, aimed at Cloudflare-style dashboards and apps, plus a Figma plugin for the design-to-code direction.

Where it fits

Kumo fits React and Tailwind teams who want accessible primitives plus real agent tooling from the start. Its token architecture is now documented properly too: semantic tokens named by role rather than hue, a surface hierarchy from canvas to contrast, data-mode for light and dark through CSS light-dark(), and data-theme for themes like FedRAMP, all generated from one config.

It's still young, created in late 2025, so we'd watch how it settles before building a large product on it.

Ideas to borrow

  1. 01.

    AI-readiness

    Ship an AGENTS.md that encodes your token rules and hard 'never do' constraints for coding agents, paired with a CLI that serves component docs on demand.

  2. 02.

    Architecture

    Layer your visual style on an accessible primitive library (here, Base UI), so accessibility is inherited rather than rebuilt.

Screenshots

Fig. 1Kumo's component registry page, describing a machine-readable JSON file of every component's props, variants, examples and tokens for AI agents, reachable from the CLI or an HTTP endpoint.
Fig. 2Kumo's design skill, an installable agent skill that sets out numbered product design rules such as 14px content text and sentence case headings, each shown with a recommended example beside ones to avoid.
Fig. 3Kumo's color usage rules, setting correct semantic token classes against raw Tailwind colors and noting that a no-primitive-colors lint rule flags the raw ones.

Further reading

Related