A modern full-stack application built with Vue 3 frontend and Nest.js backend, managed with pnpm workspace.
full-stack-workspace/ ├── apps/ │ ├── frontend/ # Vue 3 + TypeScript + Element Plus │ └── backend/ # Nest.js + TypeScript + Express ├── packages/ # Shared packages (if any) ├── pnpm-workspace.yaml # pnpm workspace configuration └── package.json # Root package.json
cd /workspace
pnpm install
.env.example to .env in the backend directorypnpm dev
Frontend (Vue 3):
cd apps/frontend
pnpm dev
The frontend will be available at http://localhost:3000
Backend (Nest.js):
cd apps/backend
pnpm dev
The backend will be available at http://localhost:3001 API documentation available at http://localhost:3001/api
Build all applications:
pnpm build
Build individual applications:
cd apps/frontend
pnpm build
cd apps/backend
pnpm build
Run tests for all packages:
pnpm test
Run linting for all packages:
pnpm lint
Run formatting for all packages:
pnpm format
The backend provides Swagger/OpenAPI documentation available at:
VITE_API_BASE_URL=http://localhost:3001
NODE_ENV=development PORT=3001 FRONTEND_URL=http://localhost:3000 DB_HOST=localhost DB_PORT=3306 DB_USERNAME=root DB_PASSWORD=password DB_DATABASE=fullstack_app JWT_SECRET=your-super-secret-jwt-key-change-this-in-production
pnpm dev - Start both frontend and backend in development modepnpm build - Build all applicationspnpm test - Run tests for all packagespnpm lint - Run linting for all packagespnpm format - Run formatting for all packagespnpm dev - Start development serverpnpm build - Build for productionpnpm preview - Preview production buildpnpm dev - Start development server with hot reloadpnpm build - Build for productionpnpm start - Start production serverpnpm test - Run testsThis project is licensed under the MIT License.