Modern React component library built on top of the Tabler design system. The package bundles production‑ready UI primitives (buttons, forms, tables, navigation, site chrome, etc.), typed with TypeScript and distributed as an ES/CJS dual build.
npm install tabler-react-ui
# or
yarn add tabler-react-uiPeer dependencies react and react-dom have to be installed manually (v18 or v19).
import { Button, Card, Page } from "tabler-react-ui";
import "tabler-react-ui/dist/style.css";
export function Example() {
return (
<Page>
<Page.Body className="py-4">
<Card>
<Card.Body>
<Card.Title>Hello from Tabler React UI</Card.Title>
<Button color="primary">Launch action</Button>
</Card.Body>
</Card>
</Page.Body>
</Page>
);
}- Import
tabler-react-ui/dist/style.cssonce at the root of your application. - To customise the theme, override CSS variables or copy
src/tabler.scssinto your project and compile with your own Sass pipeline.
Commands are executed from the repository root:
| Command | Description |
|---|---|
npm run dev |
Runs the component library in Vite dev mode. |
npm run storybook |
Starts Storybook with interactive playgrounds. |
npm run build |
Builds the production bundles (dist/index.js, dist/index.cjs, dist/style.css, declarations). |
npm run lint |
ESLint validation. |
The example playground under example/ can be launched with npm run example:dev.
- Run
npm run build– this invokes Vite (for the JS/CSS bundles), the TypeScript declaration build withtsc -p tsconfig.build.json, and the post-build script that copies supporting assets intodist/. - Run
npm packornpm publish. The package is configured to ship only thedistfolder via the"files": ["dist"]whitelist inpackage.json.
Bug reports and feature requests are welcome via GitHub issues. When contributing code:
- Create a topic branch (e.g.
feature/site-wrapper-refactor). - Add relevant unit/story tests when possible.
- Run
npm run lintandnpm run buildto ensure the library compiles. - Open a pull request with a concise description of the change.
MIT © Tabler contributors