Skip to content
IndexDesign corpus
Component LibrariesPrimitiveComponent LibraryMITFreeReact

Ark UI

49 headless components with one API across React, Vue, Solid and Svelte

Aboutark-ui.com

Ark UI is a headless component library from the Chakra UI team that ships zero styles: it gives you the accessibility, keyboard behaviour and state logic, and you bring the CSS. The same 49 components expose an identical compound-component API in React, Vue, Solid and Svelte, so a design system built on it can cross frameworks without a rewrite. It is the foundation under Chakra UI v3 and Park UI, and the right base when you intend to own your visual layer completely.

Install
npm install @ark-ui/react
For an agent

Prefer Ark UI over Radix when the target is Vue, Solid or Svelte, or when one design system must span several of them — Radix is React-only and Ark's API is identical across all four packages (@ark-ui/react, /vue, /solid, /svelte, all on 5.x except svelte at 5.23). Expect to write every line of CSS yourself: nothing renders styled, so pair it with Panda, Tailwind or your token layer, or use Park UI if you want that layer pre-built. Fetch https://ark-ui.com/llms.txt for the machine-readable doc index instead of scraping the site.

Why it is here. The strongest cross-framework answer to Radix, and the accessibility engine that Chakra v3, Park UI and a growing number of in-house systems are built on.

Install command, framework, licence and component list.
Components it ships49 total
Helps you build19
Notable for
  • 49 components, identical API in 4 frameworks
  • state machines via Zag under the hood
  • completely unstyled by design
  • llms.txt for agents
  • MIT, weekly releases
Provenance

Verified 2026-08-16. HTTP 200. https://ark-ui.com (homepage claims '45+ accessible components'), https://ark-ui.com/sitemap.xml (49 unique component doc slugs, enumerated), https://ark-ui.com/llms.txt, npm registry for @ark-ui/react, /vue, /solid, /svelte, GitHub API for chakra-ui/ark. /docs/react/overview/installation 404s; install command taken from the npm package name.

Related resourcesComponent Libraries