A modern, lightweight React starter template powered by Vite for lightning-fast development. Built with the latest React 19, Tailwind CSS 4, and essential UI libraries to kickstart your next project.
- ⚡ Vite - Next-generation frontend tooling with blazing fast HMR
- ⚛️ React 19 - Latest React with improved performance and features
- 🎨 Tailwind CSS 4 - Utility-first CSS framework with native CSS configuration
- 🌊 Flowbite React - Beautiful component library built on Tailwind
- 🎯 React Router 7 - Declarative routing for React applications
- 🔔 Sonner - Elegant toast notifications
- 📦 Modern Package Manager Support - Works with npm, yarn, pnpm, and Bun
| Technology | Version |
|---|---|
| React | ^19.1.1 |
| React DOM | ^19.1.1 |
| Vite | Latest |
| Tailwind CSS | ^4.1.14 |
| @tailwindcss/vite | ^4.1.14 |
| Flowbite | ^3.1.2 |
| Flowbite React | ^0.12.9 |
| React Router | ^7.9.3 |
| React Icons | ^5.5.0 |
| Sonner | ^2.0.7 |
Before you begin, ensure you have one of the following package managers installed:
- Node.js (v18 or higher) with npm
- Yarn (v1.22 or higher)
- pnpm (v8 or higher)
- Bun (v1.0 or higher) - Recommended for fastest performance
curl -fsSL https://bun.sh/install | bashAfter installation, restart your terminal or run:
source ~/.bashrc # or ~/.zshrc for zsh usersgit clone https://github.com/ismailjosim/basic-react-starter-package.gitcd basic-react-starter-packageChoose your preferred package manager:
Using Bun (Fastest):
bun installUsing npm:
npm installUsing Yarn:
yarn installUsing pnpm:
pnpm installStart the development server with hot module replacement:
Using Bun:
bun run devUsing npm:
npm run devUsing Yarn:
yarn devUsing pnpm:
pnpm devThe application will be available at http://localhost:5173 (default Vite port).
basic-react-starter-package/
├── .flowbite-react/ # Flowbite React configuration
├── node_modules/ # Project dependencies
├── public/ # Static assets
├── src/
│ ├── assets/ # Images, fonts, and other static assets
│ ├── components/ # Reusable React components
│ ├── configs/ # Configuration files
│ ├── contexts/ # React Context providers
│ ├── layout/ # Layout components
│ ├── pages/ # Page components
│ ├── providers/ # Custom providers
│ ├── routes/ # Routing configuration
│ ├── utils/ # Utility functions and helpers
│ ├── App.jsx # Root component
│ ├── index.css # Global styles with Tailwind directives
│ └── main.jsx # Application entry point
├── .gitignore # Git ignore file
├── bun.lock # Bun lock file
├── eslint.config.js # ESLint configuration
├── index.html # HTML entry point
├── package.json # Project dependencies and scripts
├── README.md # Project documentation
└── vite.config.js # Vite configuration
| Command | Description |
|---|---|
dev |
Start development server with HMR |
build |
Build production-ready optimized bundle |
preview |
Preview production build locally |
lint |
Run ESLint to check code quality |
This project uses Tailwind CSS v4 which introduces a new configuration approach using native CSS. Instead of a JavaScript config file, Tailwind 4 uses CSS-based configuration in your stylesheets.
Customize your design system in src/index.css:
@import "tailwindcss";
/* Custom theme configuration */
@theme {
--color-primary: #3b82f6;
--color-secondary: #8b5cf6;
/* Add your custom design tokens here */
}This starter includes Flowbite React components. Import and use them in your components:
import { Button, Card } from 'flowbite-react';
function MyComponent() {
return (
<Card>
<Button>Click me</Button>
</Card>
);
}components/- Reusable UI componentspages/- Page-level componentslayout/- Layout wrappers and templatescontexts/- React Context for state managementproviders/- Custom provider componentsroutes/- React Router configurationconfigs/- Application configuration filesutils/- Helper functions and utilitiesassets/- Static files (images, fonts, etc.)
- React Documentation
- Vite Documentation
- Tailwind CSS v4 Documentation
- Flowbite React Documentation
- React Router Documentation
- Bun Documentation
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is open source and available under the MIT License.
Ismail Josim
- GitHub: @ismailjosim
If this starter pack helped you, please give it a ⭐️!
Happy Coding! 🚀