This is a modern full-stack application built with Turborepo, featuring a React frontend and Node.js backend.
This monorepo contains the following apps and packages:
frontend
: A React application built with Vite and TypeScriptbackend
: A Node.js API server built with Express and TypeScript
@repo/eslint-config
: Shared ESLint configurations@repo/typescript-config
: Shared TypeScript configurations
- Node.js (>= 18)
- pnpm
pnpm install
To run both frontend and backend in development mode:
pnpm dev
To run individual apps:
# Frontend only
pnpm --filter run frontend dev
# Backend only
pnpm --filter run backend dev
To build all apps:
pnpm build
To build individual apps:
# Frontend only
pnpm --filter run frontend build
# Backend only
pnpm --filter run backend build
To lint all packages:
pnpm lint
To check TypeScript types:
pnpm check-types
- Location:
apps/frontend
- Framework: React 19 with Vite
- Language: TypeScript
- Dev server:
http://localhost:5173
- Location:
apps/backend
- Framework: Express.js
- Language: TypeScript
- Dev server:
http://localhost:5000
- API endpoints:
GET /
- Welcome messageGET /api/health
- Health check
Both frontend and backend projects use shared configurations:
- ESLint: Consistent code linting rules
- TypeScript: Common TypeScript configuration
pnpm dev
- Start development serverspnpm build
- Build all appspnpm lint
- Lint all packagespnpm check-types
- Type check all packagespnpm format
- Format code with Prettier
- Frontend: React, Vite, TypeScript
- Backend: Node.js, Express, TypeScript
- Tooling: Turborepo, ESLint, Prettier
- Package Manager: pnpm