MCPcopy Index your code
hub / github.com/cloudflare/kumo

github.com/cloudflare/kumo @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
2,670 symbols 6,182 edges 482 files 395 documented · 15%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Kumo

Cloudflare's component library for building modern web applications.

Kumo provides accessible, design-system-compliant UI components built on Base UI. It handles keyboard navigation, focus management, and ARIA attributes so you can build accessible applications without thinking through every detail.

image

Installation

pnpm add @cloudflare/kumo

Peer Dependencies

pnpm add react react-dom @phosphor-icons/react

Usage

import { Button, Input, Dialog } from "@cloudflare/kumo";
import "@cloudflare/kumo/styles";

Granular Imports (Tree-Shaking)

import { Button } from "@cloudflare/kumo/components/button";

Base UI Primitives

Kumo re-exports all Base UI primitives for advanced use cases:

import { Popover } from "@cloudflare/kumo/primitives/popover";

CLI

Query component documentation from the command line:

npx @cloudflare/kumo ls          # List all components
npx @cloudflare/kumo doc Button  # Get component docs
npx @cloudflare/kumo docs        # Get all docs

Development

See AGENTS.md for comprehensive development documentation including:

  • Component patterns and styling system
  • Semantic color tokens
  • Development workflows
  • CI/CD pipeline
  • Figma plugin

Quick Start

pnpm install
pnpm dev                    # Start docs site at localhost:4321
pnpm --filter @cloudflare/kumo test

Figma Plugin

# Optional: enable token sync during build
# cp packages/kumo-figma/scripts/.env.example packages/kumo-figma/scripts/.env
# $EDITOR packages/kumo-figma/scripts/.env  # set FIGMA_TOKEN (and optionally FIGMA_FILE_KEY)

pnpm --filter @cloudflare/kumo-figma build
# In Figma: Plugins > Development > Import plugin from manifest...
# Select: packages/kumo-figma/src/manifest.json

Creating Components

pnpm --filter @cloudflare/kumo new-component

Documentation

License

MIT

Extension points exported contracts — how you extend this code

LayoutMixin (Interface)
* Layout mixin properties available on ComponentNode at runtime. * Figma Plugin API includes these properties on Compon
packages/kumo-figma/src/figma-types.d.ts
ServiceWorkerGlobalScope (Interface)
* The **`ServiceWorkerGlobalScope`** interface of the Service Worker API represents the global execution context of a se
packages/kumo-screenshot-worker/worker-configuration.d.ts
Report (Interface)
* Test suite for enforce-variant-standard oxlint rule. * * Since oxlint doesn't provide RuleTester like ESLint, we man
packages/kumo/lint/enforce-variant-standard.test.ts
Colo (Interface)
A point-of-presence row — the kind of raw shape these maps consume.
packages/kumo-docs-astro/src/components/demos/Chart/BubbleMapDemo.tsx
ScreenshotResult (Interface)
* Screenshot result returned by the worker. * * For section-based screenshots (when `captureSections` was true and *
ci/visual-regression/run-visual-regression.ts
CreatePullRequestOptions (Interface)
(no doc)
ci/utils/github-api.ts
CliArgs (Interface)
(no doc)
ci/scripts/create-release-pr.ts
ReportItem (Interface)
(no doc)
ci/reporters/types.ts

Core symbols most depended-on inside this repo

appendChild
called by 403
packages/kumo-figma/src/figma-types.d.ts
log
called by 370
packages/kumo-screenshot-worker/worker-configuration.d.ts
parseTailwindClasses
called by 347
packages/kumo-figma/src/parsers/tailwind-to-figma.ts
getVariableByName
called by 213
packages/kumo-figma/src/generators/shared.ts
resize
called by 183
packages/kumo-figma/src/figma-types.d.ts
error
called by 142
packages/kumo-screenshot-worker/worker-configuration.d.ts
replace
called by 134
packages/kumo-screenshot-worker/worker-configuration.d.ts
resolve
called by 107
packages/kumo/src/components/chart/Maps.tsx

Shape

Function 1,690
Interface 651
Method 235
Class 85
Enum 9

Languages

TypeScript100%

Modules by API surface

packages/kumo-screenshot-worker/worker-configuration.d.ts633 symbols
packages/kumo-figma/src/figma-types.d.ts51 symbols
packages/kumo-figma/src/generators/shared.ts24 symbols
packages/kumo/src/components/sidebar/sidebar.tsx23 symbols
packages/kumo-docs-astro/src/components/demos/ToastDemo.tsx23 symbols
packages/kumo-docs-astro/src/components/demos/Chart/ColorDemo.tsx23 symbols
packages/kumo/src/components/command-palette/command-palette.tsx21 symbols
packages/kumo-docs-astro/src/components/demos/Chart/ChartDemo.tsx21 symbols
packages/kumo-docs-astro/src/components/demos/SelectDemo.tsx20 symbols
packages/kumo/src/components/pagination/pagination.tsx19 symbols
packages/kumo-figma/src/generators/table.ts19 symbols
ci/visual-regression/run-visual-regression.ts19 symbols

For agents

$ claude mcp add kumo \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact