A template to kickstart modern React projects with the latest technologies and best practices.
- ⚡️ Vite - Ultra-fast build tool
- ⚛️ React 19 - Latest React version with new features
- 📝 TypeScript - Static typing for JavaScript
- 🛣️ React Router - Routing for React
- 💅 Tailwind CSS - Utility-first CSS framework
- 📏 ESLint - Linter for JavaScript and TypeScript
- 💖 Prettier - Code formatter
- ✅ Testing Suite:
- Vitest - Unit Testing
- Testing Library - Component Testing
- Playwright - E2E Testing
- 🔄 CI/CD:
- GitHub Actions - Automated workflows
- Husky - Git hooks made easy
- Node.js 20+
- npm
npx degit carlosazaustre/vite-template-react-czstr my-react-app
cd my-react-app
npm install
npm run dev # Start development server
npm run build # Build for production
npm run preview # Preview production build
npm run test # Run unit tests
npm run test:e2e # Run end-to-end tests
npm run lint # Run linter
The project includes configuration for:
- TypeScript (
tsconfig.json
) - ESLint (
.eslintrc.cjs
) - Prettier (
.prettierrc
) - Vite (
vite.config.ts
) - Tailwind CSS (
tailwind.config.js
) - Vitest (
vitest.config.ts
) - Playwright (
playwright.config.ts
) - GitHub Actions (
.github/workflows/ci.yml
) - Husky (
.husky/
)
This template includes GitHub Actions workflows that automatically run on push to main and pull requests:
- Runs unit tests with Vitest
- Runs component tests with Testing Library
- Runs E2E tests with Playwright in headless mode
- Ensures code style with ESLint and Prettier
Using Husky, the following Git hooks are configured:
- pre-commit: Runs ESLint and Prettier
If you find this template useful, please consider sponsoring my work.
This project is licensed under the MIT License. See the LICENSE file for details.
Contributions are welcome. Please open an issue or submit a pull request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'feat: add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request