A production-ready React starter template with modern tooling and best practices baked in. Clone, configure, and start building your next amazing project in minutes! Added a beautifully crafted common component with Zod validation.
- β‘οΈ Lightning Fast - Powered by Vite for instant HMR and optimized builds
- π― TypeScript Ready - Full TypeScript support with type checking
- π¨ Modern React - React 18+ with hooks and latest features
- π ESLint Configured - Comprehensive linting rules pre-configured
- π§ Developer Experience - Fast Refresh, clear error overlays, and optimized workflows
- π¦ Production Optimized - Minification, code splitting, and tree shaking out of the box
- ποΈ Best Practices - Structured project layout following industry standards
- π Extensible - Easy to add routing, state management, and styling libraries
Before you begin, ensure you have the following installed:
- Node.js (v18 or higher) - Download here
- npm (v9+) or yarn (v1.22+) or pnpm (v8+)
Get up and running in 3 simple steps:
git clone https://github.com/bdipesh/react_starter.git
cd react_starternpm install
# or
yarn install
# or
pnpm installnpm run dev
# or
yarn dev
# or
pnpm devπ Open http://localhost:5173 in your browser to see your app!
| Command | Description |
|---|---|
npm run dev |
Starts the development server with hot reload |
npm run build |
Creates an optimized production build |
npm run preview |
Preview the production build locally |
npm run lint |
Run ESLint to check code quality |
react_starter/
βββ public/ # Static assets
βββ src/
β βββ assets/ # Images, fonts, and other assets
β βββ components/ # Reusable React components
β βββ App.tsx # Main App component
β βββ main.tsx # Application entry point
β βββ index.css # Global styles
βββ ..eslintrc.cjs # ESLint configuration
βββ tsconfig.json # TypeScript configuration
βββ vite.config.ts # Vite configuration
βββ package.json # Project dependencies and scripts
The project uses TypeScript with strict mode enabled for better type safety. Configuration can be adjusted in:
tsconfig.json- App TypeScript configtsconfig.node.json- Node/Vite TypeScript config
ESLint is pre-configured with React-specific rules. Customize rules in ..eslintrc.cjs to match your team's coding standards.
Vite configuration can be modified in vite.config.ts. The starter includes:
- React plugin with Fast Refresh
- Optimized development experience
- Production build optimizations
npm install react-router-domZustand (Lightweight):
npm install zustandTailwind CSS:
npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -pReact Query:
npm install @tanstack/react-queryAxios:
npm install axiosCreate an optimized production build:
npm run buildThe build artifacts will be stored in the dist/ directory. These files are:
- β Minified and optimized
- β Code-split for better performance
- β Ready to deploy to any static hosting service
npm run previewThis starter can be deployed to various platforms:
- GitHub Pages - Use
gh-pagespackage - AWS Amplify - Connect your repository
- Firebase Hosting - Use Firebase CLI
- Cloudflare Pages - Push to Git and deploy
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
- Fork the Project
- 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
- β Component-based architecture for reusability
- β TypeScript for type safety and better DX
- β ESLint for consistent code quality
- β Fast Refresh for instant feedback during development
- β Optimized builds with automatic code splitting
- β Modern ES6+ syntax support
After setting up your project, consider:
- AlreadyConfig - Configuration of UI, fetch, and state management. You can focus on your app idea. All things are set here.
- Testing - Add Jest and React Testing Library
- CI/CD - Configure GitHub Actions for automated deployments
Dipesh B
- GitHub: @bdipesh
Give a βοΈ if this project helped you! It helps others discover this starter template.
Built with β€οΈ by developers, for developers