@cchiragjain/clear.ui
Version:
React UI Components Library
121 lines (83 loc) • 3.71 kB
Markdown
# @cchiragjain/clear.ui
A modern and lightweight React UI component library built with **TypeScript** and **Tailwind CSS**, designed to accelerate your development workflow.
### 🌟 Features
- **Typed for safety**: Built with TypeScript for a seamless developer experience.
- **Stylish and customizable**: Powered by Tailwind CSS for effortless styling and customization.
- **Ready-to-use**: A variety of pre-built components to kickstart your project.
- **Accessible by design**: Built with accessibility (aria) in mind to ensure inclusivity.
- **Storybook Integration**: Explore live examples and documentation for each component.
## 🚀 Installation
Install the library via npm:
```bash
npm install @cchiragjain/clear.ui
```
- Update tailwind.config.js file.
```javascript
import { myTailwindContent } from "@cchiragjain/clear.ui";
export default {
content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}", myTailwindContent()],
theme: {
extend: {},
},
plugins: [],
};
```
## 📖 Documentation & Live Preview
Explore the full documentation and live component previews at: [**clear.ui.chiragjain.online**](https://clear.ui.chiragjain.online)
## 🧩 Available Components
The library includes the following components:
- **Accordion**: Expandable content panels.
- **Button**: Fully customizable buttons with different variants.
- **Checkbox**: Styled checkboxes for forms.
- **Dialog**: Accessible modal dialogs.
- **DatePicker**: Pick date from a calendar.
- **DateRangePicker**: Pick date ranges from a calendar view.
- **FormField**: Wrapper for handling form fields.
- **HoverCard**: Information on hover.
- **Input**: Text inputs with built-in validation.
- **Label**: Styled labels for inputs.
- **LoadingSpinner**: Minimalist spinner for loading states.
- **MultiSelect**: Select multiple options from a dropdown.
- **RadioGroup**: Grouped radio buttons.
- **RangeSlider**: Sliders for selecting ranges.
- **Select**: Dropdown menus with easy customization.
- **Sidebar**: Collapsible and extendable side navigation.
- **Skeleton**: Placeholder for loading states.
- **Tabs**: Tab-based navigation and content display.
- **TextArea**: Multiline text inputs.
- **Toast**: Notifications and alerts.
## 🛠️ Usage
Here's an example of how to use the library:
```tsx
import { Button } from "@cchiragjain/clear.ui";
const App = () => (
<div>
<Button variant="primary">Click Me</Button>
</div>
);
export default App;
```
Refer to the [storybook documentation](https://clear.ui.chiragjain.online) for detailed examples of each component.
## 🔧 Pending Issues & Future Improvements
- **Dark Mode Support**: Currently, the library does not support dark mode. Adding dark mode is a high-priority enhancement for future releases.
- **More Components**: Expanding the library with additional components like a Tooltip, or Loading Bar.
- **Theming Support**: Allowing global customization of default styles (e.g., colors, fonts) through a theme provider.
- **Setup Proper Build Pipeline**: Currently I created the NPM package by manually copying the files to a separate folder. This could be changed to a single command and a single repo.
Feel free to suggest more improvements by opening an issue or pull request on GitHub.
## 🧑💻 Contributing
Contributions are welcome! If you find any issues or have suggestions for improvements, feel free to open an issue or submit a pull request on GitHub.
## 📦 License
This library is licensed under the MIT License.
### 👤 Author
**Chirag Jain**
[GitHub](https://github.com/cchiragjain) | [LinkedIn](https://linkedin.com/in/cchiragjain)
Happy coding! 🎉