A modern and customizable React component library built with Tailwind CSS v4+, Radix UI, and shadcn/ui.
Designed for accessibility, developer experience, and runtime theming (light/dark).
- ✅ Accessible components powered by Radix UI
- ✅ Utility-first styling with Tailwind CSS v4+
- ✅ Runtime theming with CSS variables (
light
/dark
mode) - ✅ Tree-shakable ESM build
- ✅ Fully typed with TypeScript
- ✅ Live docs with Storybook
Layer | Stack |
---|---|
Components | React + Radix UI |
Styling | Tailwind CSS + shadcn/ui |
Tooling | Vite + TypeScript |
Docs | Storybook |
Testing | Vitest + Testing Library |
Lint/Format | ESLint + Prettier |
CI/CD | GitHub Actions + semantic-release |
npm install @gasbrieo/react-ui
Requires Tailwind CSS v4+ with
@theme inline
.
Import the component and the design tokens:
import { Button } from "@gasbrieo/react-ui";
import "@gasbrieo/react-ui/styles/tokens.css";
export const Example() {
return <Button>Click me</Button>;
}
✅ tokens.css
enables light/dark theme via CSS variables
✅ To toggle dark mode dynamically:
document.documentElement.classList.add("dark"); // or remove("dark")
npm install
npm run dev
To build and preview Storybook locally:
npm run storybook:build
npx serve storybook-static
This project uses semantic-release for fully automated versioning:
- feat: → minor version bump (0.x.0 → 0.(x+1).0)
- fix: → patch version bump (0.0.x → 0.0.(x+1))
- feat!: / BREAKING CHANGE: → major version bump (x.0.0 → (x+1).0.0)
Every merge into main
automatically:
- Updates
CHANGELOG.md
- Creates a GitHub release
- Publishes a new version to npm
See all changes in the CHANGELOG.md.
src/
├── components/ # Component source files
├── utils/ # Utility functions, helpers
├── styles/ # Tokens (light/dark theme)
└── index.ts # Library entrypoint
Explore all components on Storybook Live
This project is licensed under the MIT License – see LICENSE for details.