react-vite-starter Tailwind Templates

React Vite Starter

React starter powered with vite + redux toolkit + rtkquery + react router + shadcn ui and many more

React Vite Starter

With all batteries included in this project, you can start building React apps with Vite.

This project is a starter template using Vite for fast React development with TypeScript, TailwindCSS, and other modern tools for building, linting, formatting, and testing.

Get Started

# Clone the repository
git clone https://github.com/tejachundru/vite-starter

# Navigate to the project directory
cd vite-starter

# Reset the git repository
rm -rf .git

# Install dependencies
pnpm install

# Setup project
pnpm run bootstrap

# Start development
pnpm run dev

Overview

Built with type safety, scalability, and developer experience in mind. A batteries included Vite + React template.

  • React โš›๏ธ - A modern front-end JavaScript library for building user interfaces based on components
  • Vite โšก - Feature rich and highly optimized frontend tooling with TypeScript support out of the box
  • TypeScript ๐Ÿ”ท - A typed superset of JavaScript designed with large scale applications in mind
  • Tailwind CSS ๐ŸŽจ - A utility-first CSS framework packed with classes to build any web design imaginable
  • ShadCN/ui ๐Ÿงฉ - A UI library with a focus on simplicity and customization
  • ReactRouter ๐Ÿงญ - A lightweight, fully-featured routing library for React
  • RTK Query ๐Ÿ”„ - A toolkit for building RTK Query based applications
  • Zod ๐Ÿ›ก๏ธ - TypeScript-first schema validation with static type inference
  • Vitest โšก - A blazing fast unit test framework powered by Vite
  • React Testing Library ๐Ÿงช - A very light-weight, best practice first, solution for testing React components
  • Playwright ๐ŸŽญ - Enables reliable end-to-end testing for modern web apps
  • pnpm ๐Ÿ“ฆ - A strict and efficient alternative to npm with up to 3x faster performance
  • ESLint ๐Ÿงน - Static code analysis to help find problems within a codebase
  • Prettier โœจ - An opinionated code formatter
  • Storybook ๐Ÿ“š - A frontend workshop for building UI components and pages in isolation
  • react-i18next ๐ŸŒ - A powerful internationalization framework for React/React Native based on i18next
  • Docker ๐Ÿณ - Containerization tool for deploying your vite-react-boilerplate app
  • Husky + Commitizen + Commitlint ๐Ÿถ - Git hooks and commit linting to ensure use of descriptive and practical commit messages
  • ts-reset ๐Ÿ”ง - Improvements for TypeScripts built-in typings for use in applications

Available Scripts

In this project, the following scripts are available:

Script Description
bootstrap Initializes the project with Husky and Playwright
format Formats the code using Prettier
lint Lints the code with ESLint to ensure coding standards are followed
lint:fix Fixes linting issues automatically
dev Starts the development server using Vite
storybook Launches Storybook in development mode to view and test UI components
storybook:build Builds Storybook for production
test Runs unit and end-to-end tests
test:unit Runs only unit tests
test:unit:coverage Runs unit tests with coverage report
test:e2e Runs only end-to-end tests
test:e2e:report Shows the Playwright test report
build Builds the project for production using Vite
preview Starts the preview server with Vite to view the production build locally
commitlint Lints commit messages to ensure they follow the defined conventions
commitizen Initializes Commitizen to assist with conventional commit message formatting

Project Structure

react-vite-starter/
โ”œโ”€โ”€ .storybook/          # Storybook configuration
โ”œโ”€โ”€ e2e/                 # End-to-end tests
โ”œโ”€โ”€ public/              # Static assets
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ assets/          # Images, fonts, etc.
โ”‚   โ”œโ”€โ”€ components/      # Reusable UI components
โ”‚   โ”œโ”€โ”€ hooks/           # Custom React hooks
โ”‚   โ”œโ”€โ”€ lib/             # Utility functions
โ”‚   โ”œโ”€โ”€ locales/         # i18n translations
โ”‚   โ”œโ”€โ”€ pages/           # Page components
โ”‚   โ”œโ”€โ”€ router/          # Routing configuration
โ”‚   โ”œโ”€โ”€ services/        # API services
โ”‚   โ”œโ”€โ”€ store/           # Redux store and slices
โ”‚   โ”œโ”€โ”€ App.tsx          # Main App component
โ”‚   โ””โ”€โ”€ main.tsx         # Entry point

Docker Build

Development

docker build -t my-app -f ./Dockerfile.dev .

Production Image Build

This image is production-optimized using a multi-stage build for a minimal footprint with built-in nginx configuration to efficiently serve your application.

docker build -t my-app -f ./Dockerfile .

To run the Docker container:

docker run -p 8080:80 my-app

Environment Variables

Create a .env file in the root directory with the following variables:

VITE_API_URL=https://api.example.com

Contributing

  1. Fork the repository
  2. Create your feature branch: git checkout -b feature/my-feature
  3. Commit your changes: pnpm run commitizen
  4. Push to the branch: git push origin feature/my-feature
  5. Submit a pull request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Resources for development

Some resources links that can helpful while development

Top categories

Loading Svelte Themes