react-app
June 16, 2026 ยท View on GitHub
A public template repository for personal use. It provides reusable React starters, templates, examples, demos, and scaffolds. Projects created from this template are not limited to personal use and may be adapted for individual, team, or company use.
Suitable For
- single-page application (SPA)
- client-side rendering (CSR)
- admin dashboards, panels, or consoles
- separately deployed frontend applications backed by external APIs or independent backend services
Requirements
- The Node.js version is defined by
.nvmrcandengines.nodeinpackage.json. See Node.js version upgrade. - The required pnpm version is pinned by the
packageManagerinpackage.json.
Install
pnpm install
Development
pnpm run dev
The Vite dev server uses port 3000 by default.
Usage
After creating a project from this template, adjust these files for the actual product:
package.json: Package name, metadata, and scripts..env,.env.example, and.env*: Vite-exposed environment variables required by the project.index.html: Document title, metadata, and root document content.src/@types/vite-env.d.ts: Vite environment variable types and TypeScript IntelliSense.
Replace, trim, or delete the sample pages, default logo, placeholder request wrapper, and sample copy under src/ according to the product goal. See docs/conventions.md for structure and implementation conventions.
Environment Variables
Create a local override file from .env.example:
cp .env.example .env.local
VITE_API_BASE_URL=http://127.0.0.1:3001
When VITE_API_BASE_URL is set, the Vite dev server and Vite preview server proxy /api to that address.
Build
pnpm run build
Preview
pnpm run preview
Lint & Format
pnpm run lint
pnpm run lint:fix
Testing
pnpm run test
pnpm run test:unit
pnpm run test:unit:coverage
pnpm run test:unit:watch
pnpm run test:unit:ui
Conventions
Source structure, naming, dependency direction, and implementation conventions are documented in docs/conventions.md.
Docker
Run a built image locally:
pnpm run docker:run
docker:build and docker:build:multi push images to Docker Hub. Before running them, confirm the target image, credentials, and publishing intent.
docker.yaml builds and pushes the Docker image on pushes to main, tag pushes, or manual workflow dispatch.