A modern React project setup with a complete UI component system.
- ⚡ Vite - Fast build tool and development server
- ⚛️ React 19 - Latest React with TypeScript support
- 🎨 Tailwind CSS - Utility-first CSS framework
- 🧩 ShadCN UI - High-quality, accessible component system
- 📦 Class Variance Authority - Component variant management
- 🔧 ESLint - Code linting and formatting
- Node.js (version 18 or higher)
- npm or yarn
- Clone the repository
- Install dependencies:
npm install
Start the development server:
npm run devOpen http://localhost:5173 to view the application in your browser.
Build the project for production:
npm run buildPreview the production build:
npm run previewsrc/
├── components/
│ └── ui/
│ └── button.tsx # ShadCN Button component
├── lib/
│ └── utils.ts # Utility functions (cn helper)
├── App.tsx # Main application component
├── main.tsx # Application entry point
└── index.css # Global styles with Tailwind directives
The project includes a custom Button component built with ShadCN UI principles:
- Multiple variants: default, outline, secondary, ghost, destructive
- Different sizes: default, sm, lg, icon
- Full TypeScript support
- Accessible and keyboard navigable
- React 19 - UI library
- TypeScript - Type safety
- Vite - Build tool
- Tailwind CSS - Styling
- ShadCN UI - Component architecture
- Class Variance Authority - Component variants
- clsx & tailwind-merge - Conditional class names
npm run dev- Start development servernpm run build- Build for productionnpm run lint- Run ESLintnpm run preview- Preview production build