Skip to content

Abilash-19/Awsome-UI-Library-Kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UI Library

A production-ready React UI component library built with TypeScript, Tailwind CSS, and Vite. Designed for enterprise applications with accessibility, theming, and full TypeScript support.

CI npm version License: MIT

Features

  • Modern Stack: Built with React 18+, TypeScript, and Vite
  • 🎨 Tailwind CSS: Utility-first styling with theme customization
  • 🌓 Dark Mode: Built-in dark/light theme support
  • Accessible: ARIA attributes and keyboard navigation
  • 📦 Tree-shakeable: Optimized bundle size with ES modules
  • 🔒 Type-safe: Full TypeScript support with exported types
  • 📖 Storybook: Interactive component documentation
  • Tested: Comprehensive test coverage with Vitest
  • 🚀 CI/CD: Automated testing and publishing

Technology Stack & Packages

Core

  • React (^19.2.0): The library for web and native user interfaces.
  • TypeScript (~5.7.0): Strongly typed programming language that builds on JavaScript.

Build & Styling

  • Vite (^6.0.0): Next Generation Frontend Tooling.
  • Tailwind CSS (^3.4.17): A utility-first CSS framework for rapidly building modern websites.
  • PostCSS (^8.4.49): A tool for transforming CSS with JavaScript.
  • clsx (^2.1.1) & tailwind-merge (^3.4.0): Utilities for constructing className strings conditionally and merging Tailwind classes without conflicts.

Component Development

  • Storybook (^10.2.8): Frontend workshop for building UI components and pages in isolation.

Testing

  • Vitest (^4.0.18): Blazing Fast Unit Test Framework.
  • Testing Library: Simple and complete testing utilities that encourage good testing practices.

Quality Control

  • ESLint (^9.39.1): Statically analyzes your code to quickly find problems.
  • Prettier (^3.8.1): An opinionated code formatter.
  • Husky (^9.1.7): Modern native git hooks made easy.

Installation

npm install @your-org/ui-library
yarn add @your-org/ui-library
pnpm add @your-org/ui-library

Quick Start

import { Button, Input, Modal } from "@your-org/ui-library";
import "@your-org/ui-library/styles.css";

function App() {
  const [isOpen, setIsOpen] = useState(false);

  return (
    <div>
      <Button variant="primary" onClick={() => setIsOpen(true)}>
        Open Modal
      </Button>

      <Input label="Email" type="email" placeholder="your.email@example.com" />

      <Modal isOpen={isOpen} onClose={() => setIsOpen(false)} title="Welcome">
        <p>Hello from the modal!</p>
      </Modal>
    </div>
  );
}

Components

Button

Versatile button component with multiple variants and sizes.

import { Button } from "@your-org/ui-library";

<Button variant="primary" size="md">
  Click me
</Button>;

Variants: primary, secondary, outline, ghost, danger
Sizes: sm, md, lg

Input

Form input component with label, error, and helper text support.

import { Input } from "@your-org/ui-library";

<Input
  label="Username"
  placeholder="Enter username"
  error="Username is required"
/>;

Modal

Accessible modal dialog with portal rendering and keyboard support.

import { Modal } from "@your-org/ui-library";

<Modal isOpen={true} onClose={() => {}} title="Confirmation" size="md">
  <p>Modal content here</p>
</Modal>;

Theming

The library supports custom theming through CSS variables. See THEMING.md for detailed customization options.

:root {
  --color-primary-500: #your-color;
  --color-secondary-500: #your-color;
}

Dark Mode

Enable dark mode by adding the dark class to your root element:

<html className="dark">{/* Your app */}</html>

TypeScript

All components are fully typed with exported interfaces:

import type { ButtonProps, InputProps, ModalProps } from "@your-org/ui-library";

Development

# Install dependencies
npm install

# Run Storybook
npm run storybook

# Run tests
npm test

# Run tests with coverage
npm run test:coverage

# Build library
npm run build

# Lint code
npm run lint

# Type check
npm run typecheck

Documentation

Browser Support

  • Chrome (latest)
  • Firefox (latest)
  • Safari (latest)
  • Edge (latest)

License

MIT © Your Organization

Contributing

Contributions are welcome! Please read our Contributing Guidelines before submitting a pull request.

Support

Changelog

See CHANGELOG.md for release history.

About

A modern, themeable React component library built with TypeScript, Vite, and Tailwind CSS. Fully accessible, customizable, and ready to use.(in development)

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors