Skip to content

Navigation Menu

Sign in
Sign up

Repository files navigation

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:

Run locally

Prerequisites

  • Node.js 20+ (recommend using nvm)
  • Yarn (Classic) or npm/pnpm

1) Install dependencies

Using Yarn:

yarn install

Using npm:

npm install

Using pnpm:

pnpm install

2) Start the dev server

yarn dev
# or: npm run dev
# or: pnpm dev

App will be available at http://localhost:5173 (default Vite port).

3) Build and preview production

yarn build
yarn preview
# or: npm run build && npm run preview

4) Lint

yarn lint
# or: npm run lint

Environment and APIs

  • No API keys required. The app uses the public Dog CEO API (https://dog.ceo/api) via SWR.
  • Tailwind CSS v4 is configured via src/index.css.
  • Global state is persisted with Zustand (localStorage).

Expanding the ESLint configuration

If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:

export default tseslint.config([
 globalIgnores(["dist"]),
 {
 files: ["**/*.{ts,tsx}"],
 extends: [
 // Other configs...
 // Remove tseslint.configs.recommended and replace with this
 ...tseslint.configs.recommendedTypeChecked,
 // Alternatively, use this for stricter rules
 ...tseslint.configs.strictTypeChecked,
 // Optionally, add this for stylistic rules
 ...tseslint.configs.stylisticTypeChecked,
 // Other configs...
 ],
 languageOptions: {
 parserOptions: {
 project: ["./tsconfig.node.json", "./tsconfig.app.json"],
 tsconfigRootDir: import.meta.dirname,
 },
 // other options...
 },
 },
]);

You can also install eslint-plugin-react-x and eslint-plugin-react-dom for React-specific lint rules:

// eslint.config.js
import reactX from "eslint-plugin-react-x";
import reactDom from "eslint-plugin-react-dom";
export default tseslint.config([
 globalIgnores(["dist"]),
 {
 files: ["**/*.{ts,tsx}"],
 extends: [
 // Other configs...
 // Enable lint rules for React
 reactX.configs["recommended-typescript"],
 // Enable lint rules for React DOM
 reactDom.configs.recommended,
 ],
 languageOptions: {
 parserOptions: {
 project: ["./tsconfig.node.json", "./tsconfig.app.json"],
 tsconfigRootDir: import.meta.dirname,
 },
 // other options...
 },
 },
]);

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /