Warning
Project in maintenance mode.
Opinionated Vite starter template.
- Vite with React, TypeScript and absolute imports.
- Tailwind CSS v3 with a basic reset for form styles and a Prettier plugin that automatically sorts classes.
- Use ESLint, stylelint and Prettier on VSCode and before you commit with Husky and lint-staged.
- PWA with 17/17 Lighthouse score.
- Write unit and integration tests with Vitest and Testing Library.
- Write e2e tests with Cypress.
- GitHub Actions for automatic dependency updates, CodeQL Analysis, running tests and code coverage with Codecov.
- Deploy to vercel.com with pre-configured SPA fallback.
Use this repository as a GitHub template or use degit to clone to your machine with an empty git history:
npx degit wtchnm/Vitamin#main my-app
Then, install the dependencies:
pnpm install
- If you don't plan to use GitHub Actions, delete the
.githubdirectory. - Clean up the
cypress/e2e/index.spec.tsfile. - Change the
favicon.png,apple-touch-icon.png,android-chrome-192x192.pngandandroid-chrome-512x512.png. favicon.io is a cool tool for generating these assets. - In the
srcfolder, remove the__tests__,apiandcomponentsfolder and thetypes.tsfile. - If you don't plan to use
react-query, remove the query client logic in themain.tsxfile. - Change the title, description and theme color in the
index.htmlandvite.config.ts. The Inter font is included, so remove it if you want. - Modify or delete the
LICENSEfile. - Change the
namefield in package.json.
pnpm dev- start a development server with hot reload.pnpm build- build for production. The generated files will be on thedistfolder.pnpm preview- locally preview the production build.pnpm test- run unit and integration tests related to changed files based on git.pnpm test:ci- run all unit and integration tests in CI mode.pnpm test:e2e- run all e2e tests with the Cypress Test Runner.pnpm test:e2e:headless- run all e2e tests headlessly.pnpm format- format all files with Prettier.pnpm lint- runs TypeScript, ESLint and Stylelint.pnpm validate- runslint,test:ciandtest:e2e:ci.