vite-react-ts-tailwind-tanstack-query-eslint-prettier
vite-react-ts-tailwind-tanstack-query-eslint-prettier copied to clipboard
This is a start repository which has all the essential tools that I use in my personal and professional projects.
Vite + React + Typescript + Tanstack Query + Tailwind + Eslint + Prettier
This is a starter template to get you going with the must-have libraries for every project.
The starter includes the following libraries:
@tanstack/react-queryaxiostailwindclassnamestailwind-mergeeslintand the libraries for the airbnb configprettier
Also, relative paths are setup in the tsconfig.json file so that you can easily import anything you need relatively.
How to use this starter
Clone the repository:
https://github.com/Tenacity-Dev/vite-react-ts-tailwind-tanstack-query-eslint-prettier.git
cd into the repository:
cd vite-react-ts-tailwind-tanstack-query-eslint-prettier
To make this repository yours:
rm -rf .git && git init && npm init
git add .
git commit -m "Initial commit"
Install dependencies:
npm install
Start the local server:
npm run web
React + TypeScript + Vite
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- @vitejs/plugin-react uses Babel for Fast Refresh
- @vitejs/plugin-react-swc uses SWC for Fast Refresh
Expanding the ESLint configuration
If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:
- Configure the top-level
parserOptionsproperty like this:
export default {
// other rules...
parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
project: ['./tsconfig.json', './tsconfig.node.json'],
tsconfigRootDir: __dirname,
},
}
- Replace
plugin:@typescript-eslint/recommendedtoplugin:@typescript-eslint/recommended-type-checkedorplugin:@typescript-eslint/strict-type-checked - Optionally add
plugin:@typescript-eslint/stylistic-type-checked - Install eslint-plugin-react and add
plugin:react/recommended&plugin:react/jsx-runtimeto theextendslist