Accessible React components,
with your brand and no dependencies.
@amset/ui is a React component library, from a button to a management table. It takes your colour, works with a keyboard and a screen reader, and pulls in not a single npm dependency. It is free and MIT-licensed.
- MIT licence
- React 18 and 19
- TypeScript
- Light and dark theme
- English and Spanish
Invoiced this month
12.480 €
+8.4%up
Unpaid orders
4
Of 128 this month
- 204
- components, each with its own page
- 678
- CSS variables you can change
- 2,134
- icons, all with the same stroke
- 7
- whole screens to copy
- 0
- npm dependencies
Zero npm dependencies
Your brand, one command
Accessible, and measured
You only pay for what you use
Up and running in three steps
Works with Vite, Next and webpack. In Next, one provider takes every link through its router. There is no stylesheet to import: each component brings its own.
Create it or set it up
A new app with the library in place, or the library in yours. All it needs is React.
npx amset-ui create my-app # in an existing project:npx amset-ui initUse it
Components are used through their API: variant, tone and size, without writing classes.
import { Button, TextField } from '@amset/ui' <TextField label="Email" type="email" /><Button variant="solid" tone="accent">Save</Button>Give it your colour
Hand over your palette in hex and the command writes the theme, in light and dark.
npx amset-ui themeOn public npm soon. Until then it installs from the AMSET package registry: the Get started guide walks through it. Installation guide
More than components
What comes in the same package, 0.17.1.
npx amset-ui creates an app, sets the library up in yours, diagnoses it, migrates your code and generates your theme.AGENTS.md, llms.txt, api.json, a skill, the MCP server and the tokens in Figma.npx amset-ui migrate rewrites your code when the library renames something.What an application needs, piece by piece
From the button to the table with filters, the calendar or the shopping cart. Every component has its own page with when to use it and when not to, the keyboard, what a screen reader announces and a working example.
19 components
26 components
21 components
14 components
16 components
3 components
6 components
18 components
14 components
2 components
19 components
7 components
12 components
9 components
12 components
Running, not in a screenshot
Everything you see here is a real component from the library: press, sort, filter and choose.
Dates
Status
Choice
Actions
People
A whole assistant, not loose pieces
Messages, reasoning, tools, attachments, suggestions and an engine picker, working together. Type something, press a suggestion or attach a file: what it answers is a script, everything else is the library.
Made to work, not to show off
AMSET builds it for its own products and uses it every day, so what you see here is what those products run.
The AMSET assistant
Online shops
Management dashboards
Built for the prompt-to-UI era For agents
The package describes itself for your coding assistant (Claude Code, Cursor or any other): AGENTS.md, llms.txt, the real props in api.json, a skill, and the @amset/mcp MCP server.
You ask your editor
Build me an admin panel to manage users with a paginated table, a dynamic filter and an edit drawer, using the corporate palette #00d4ff.
And the AI writes code with
- Real components and props, read from the
@amset/uiyour project has installed (api.json), not made up. - Code compiled against the library before you get it: a prop that does not exist does not pass.
- Accessibility built in: labels, keyboard and focus already handled.
- Your brand applied through a theme generated from your colour, rejected if it fails contrast.
Which files the package ships, how to use them, and the MCP server: For agents and tools
Latest release
What arrived in the latest version, taken from the changelog in the package.
0.17.1, released October 19, 2026
Flagno longer breaks hydration when the server already had its regionmigrateanddoctorsee the old stylesheets imported from CSSnpx amset-ui create: a new application with the library already set up- Blocks: seven complete screens that
npx amset-ui addcopies into the project useLocale()is exportedTablewithonRowPress: the row also opens with Enter.
Frequently asked questions
Want to try it?
Start with a single component and read its page: how to use it, when and when not to, the keyboard and accessibility.
