An open-source, scalable, and production-ready UI component library built with React, TypeScript, and Tailwind CSS.
Note
This project is built and maintained with the assistance of AI code agents, leveraging state-of-the-art agentic workflows for rapid development and high-quality implementation.
- 💎 Modern Design: Modern aesthetics with glassmorphism, smooth animations, and curated color palettes.
- ⚡ Performance: Built on Vite with tree-shakeable exports.
- 🎨 Tailwind Powered: Full customization via
tailwind.config.tsand design tokens. - 🌓 Dark Mode: Built-in support for light and dark modes with a simple context provider.
- 🧩 Scalable Structure: Atomic component design with compound patterns.
- ♿ Accessible: ARIA-compliant components with keyboard navigation support.
- 🧪 Tested: Unit tests using Vitest and React Testing Library.
- 📚 Documented: Interactive documentation using Storybook.
- React 19
- TypeScript
- Tailwind CSS 3
- Vite
- class-variance-authority (CVA)
- clsx + tailwind-merge
- Framer Motion
- Storybook
- Vitest
yarn installTo use these packages in another project, you can install them directly from NPM:
yarn add @altrugenix/uiIf you are using the scoped packages individually, you can also install them like this:
yarn add @altrugenix/buttonWe use Changesets for versioning and releases.
- Create a new changeset:
yarn change
- Follow the prompts to select the packages and version type (patch, minor, major).
- Commit the generated changeset file.
- Push to
main. - A "Version Packages" PR will be automatically created/updated.
- Merging this PR will trigger an automatic release to NPM.
Run the development server for the docs app:
yarn devRun the interactive documentation:
yarn storybookRun unit tests:
yarn test.
├── apps/
│ └── docs/ # Documentation application (Vite + React)
├── packages/
│ ├── ui/ # Main entry point and aggregator for the UI library
│ ├── core/ # Core design tokens, ThemeProvider, and base types
│ ├── utilities/ # Shared animation wrappers and utility components
│ └── [component]/ # Scoped packages (e.g., button, accordion, modal, etc.)
├── .github/
│ └── workflows/ # CI/CD pipelines (Release, Deploy, Linting, etc.)
├── .changeset/ # Version management and changelog configuration
└── .yarn/ # Yarn Modern (v4) configuration
import { Button } from "@altrugenix/ui";
import { Mail } from "lucide-react";
export const MyComponent = () => (
<Button
variant="primary"
size="md"
leftIcon={<Mail className="h-4 w-4" />}
onClick={() => console.log("Clicked!")}
>
Send Email
</Button>
);MIT