@nilll/novaui
v1.0.2
Published
A modern, lightweight CLI tool for initializing UI component libraries with essential dependencies and project structure.
Readme
🚀 NovaUI
A modern, lightweight CLI tool for initializing UI component libraries with essential dependencies and project structure.
✨ Features
- 🏗️ Quick Setup - Initialize your UI project structure in seconds
- 📦 Smart Dependencies - Automatically installs essential packages like
clsxandtailwind-merge - 🎨 Beautiful Output - Gradient-styled CLI with clear progress indicators
- 🔧 Zero Configuration - Works out of the box with sensible defaults
- ⚡ TypeScript Ready - Built with TypeScript for better developer experience
📋 What NovaUI Creates
When you run novaui init, it will:
- Create essential directories:
lib/,components/,src/ - Install core dependencies:
clsx,tailwind-merge - Set up your project structure for component development
- Provide a local registry URL for component management
🚀 Quick Start
Installation
npm install -g @nill/novauiUsage
Navigate to your project directory and run:
novaui initThat's it! Your project structure will be created and dependencies installed automatically.
📁 Project Structure
After running novaui init, your project will have:
your-project/
├── lib/ # Utility functions and shared logic
├── components/ # Your UI components
├── src/ # Source files
└── node_modules/ # Dependencies (clsx, tailwind-merge)🛠️ Built With
- TypeScript - Type-safe development
- Node.js - Runtime environment
- chalk - Terminal styling
- gradient-string - Beautiful gradient text
- tsup - Fast TypeScript bundler
📦 Dependencies Installed
NovaUI automatically installs these essential packages:
clsx- Utility for constructing className strings conditionallytailwind-merge- Merge Tailwind CSS classes without style conflicts
🎯 Perfect For
- React component libraries
- Next.js projects
- TypeScript UI projects
- Tailwind CSS workflows
- Design system development
🔧 Requirements
- Node.js 18 or higher
- npm or yarn package manager
📖 Commands
Currently, NovaUI supports one main command:
novaui init
Initializes a new NovaUI project structure with:
- Essential directories
- Core dependencies
- Development setup
🌐 Registry
NovaUI sets up a local component registry at:
https://noova-ui.vercel.app/registryUse this for managing and sharing your components across projects.
🤝 Contributing
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
📝 License
This project is licensed under the ISC License - see the LICENSE file for details.
🎉 What's Next?
After running novaui init, you can:
- Start building your components in the
components/directory - Add utility functions to the
lib/directory - Organize your source files in the
src/directory - Leverage
clsxandtailwind-mergefor styling
💡 Pro Tips
- Use
clsxto conditionally apply CSS classes - Combine
tailwind-mergewithclsxfor conflict-free styling - Organize components by feature in subdirectories
- Keep utility functions pure and well-tested
Built by @nill with ❤️
