A powerful and interactive CLI tool to quickly bootstrap React, Vite, or Next.js projects with your preferred CSS frameworks and optional packages. Skip the tedious setup and get straight to coding!
- π― Multiple Framework Support: Choose from React (CRA), Vite, or Next.js
- π¨ CSS Framework Integration: Tailwind CSS, MUI, shadcn/ui, Bootstrap React, or none
- π¦ Popular Packages: Pre-configured optional packages like Axios, Zod, React Hook Form, and more
- π οΈ Package Manager Choice: Support for npm, yarn, and pnpm
- β‘ TypeScript Ready: Option to use TypeScript in all frameworks
- π« No Hanging: Robust error handling and timeout protection
- π¨ Beautiful CLI: Colorful and interactive prompts with loading spinners
npx react-starter-cli-kitThat's it! The CLI will guide you through the setup process.
npm install -g react-starter-cli-kit
react-starter-cli-kit| Framework | Template | TypeScript Support |
|---|---|---|
| React (CRA) | create-react-app | β |
| Vite | react-ts / react | β |
| Next.js | App Router | β |
| CSS Framework | Description | Auto-configured |
|---|---|---|
| Tailwind CSS | Utility-first CSS framework | β |
| MUI | React component library | β |
| shadcn/ui | Re-usable components built with Radix UI and Tailwind | β |
| Bootstrap React | Bootstrap components for React | β |
| None | Skip CSS framework setup | - |
Choose from a curated list of popular React packages:
- axios - Promise-based HTTP client
- react-query/tanstack-query - Data fetching and caching
- react-hook-form - Performant forms with easy validation
- formik - Form library with validation
- zod - TypeScript-first schema validation
- yup - Schema validation library
- moment - Date manipulation library
- dayjs - Lightweight date library
- lucide-react - Beautiful & consistent icons
- react-icons - Popular icon libraries for React
- framer-motion - Motion library for React
npx react-starter-cli-kitFollow the interactive prompts:
- Enter project name:
my-awesome-app - Select framework:
next - TypeScript:
Yes - CSS framework:
tailwind - Optional packages:
axios, zod, react-hook-form - Package manager:
npm
The CLI will:
- Create the project with your chosen framework
- Set up the CSS framework with proper configuration
- Install selected optional packages
- Initialize git repository
- Provide next steps to run your project
After running the CLI, your project will have:
my-app/
βββ src/
βββ public/
βββ package.json
βββ tailwind.config.js # If Tailwind is selected
βββ components.json # If shadcn/ui is selected
βββ ... (framework-specific files)
- Uses
@tailwindcss/viteplugin for optimal Tailwind integration - Fast development server and build times
- Modern build tooling
- App Router by default
- Optimized for production
- Built-in TypeScript support
- Custom shadcn/ui configuration for Next.js
- Battle-tested setup
- Comprehensive tooling
- Easy to eject if needed
We welcome contributions! Here's how you can help:
-
Clone the repository
git clone https://github.com/deveshlashkari/react-starter-cli.git cd react-starter-cli -
Install dependencies
npm install
-
Build the project
npm run build
-
Test locally
npm start # or link globally npm link react-starter-cli
- New Framework: Add support in
src/lib/framework.ts - CSS Framework: Add configuration in
src/lib/css.ts - Optional Packages: Update the choices in
src/cli.tsand add installation logic insrc/lib/packages.ts
- 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
- Node.js 16+
- npm, yarn, or pnpm
If you get "command not found" error:
npm install -g react-starter-cli-kitOn macOS/Linux, you might need:
sudo npm install -g react-starter-cli-kitThe CLI includes 2-minute timeouts for framework installations. If you're on a slow connection, the process might timeout. Simply run the command again.
- Initial release
- Support for React, Vite, and Next.js
- CSS framework integration (Tailwind, MUI, shadcn/ui, Bootstrap)
- Optional package installation
- Interactive CLI with beautiful prompts
This project is licensed under the MIT License - see the LICENSE file for details.
Devesh Lashkari
- GitHub: @deveshlashkari
- LinkedIn: deveshlashkari
Give a βοΈ if this project helped you!
- Create React App team
- Vite team
- Next.js team
- Tailwind CSS team
- shadcn/ui creator
- GitHub Copilot for AI-powered development assistance
- Visual Studio Code for being an amazing development environment
- All the amazing package maintainers
Made with β€οΈ by Devesh Lashkari