Liminal UI starts from a simple idea: your code, your control. Instead of installing closed packages that live in node_modules, you add components by copying their source code into your project. You own the code, you control the styles, and you can change anything.
The philosophy
Traditional libraries ship as npm dependencies: you get compiled components and a public API, but the implementation stays hidden. Customization often means fighting props, CSS variables, or forking the package. Liminal UI inverts this: the CLI copies the source code of each component into your app. There is no black box.
- Full control: Edit components directly to match your design system.
- No lock-in: No dependency on a runtime from us; only React, Ark UI, and Tailwind.
- Type-safe: Components are written in TypeScript with clear types.
- Accessible: Built on Ark UI with ARIA and keyboard support.
How it works
- You run the CLI (
liminal add button) in your project. - The CLI copies the component files into your repo.
- You import from your own paths and use them like any React component.
- You can edit, refactor, or delete the code whenever you want.
There is no "Liminal UI runtime". Once the code is in your project, it's simply your code.
Next steps
Check the documentation to install the CLI and add your first component. To dive deeper into accessibility, read our article on building accessible components.
