Concern
Backend application framework and structure.
Technology
NestJS
Documentation
- Website: https://nestjs.com/
- Repository: https://github.com/nestjs/nest
- Getting started: https://docs.nestjs.com/first-steps
Version
v10
Implementation
The backend is a standard NestJS app created with nest new backend. Beyond the default scaffold, backend/src/app.module.ts is customized to register the unified response behavior: it registers three exception filters (ZodExceptionFilter, HttpExceptionFilter, AllExceptionsFilter) via APP_FILTER and the ResponseInterceptor via APP_INTERCEPTOR. That way every success response is wrapped as { statusCode, data } and every error is normalized to the shared envelope (see pattern responses). Controllers can return raw data and rely on the interceptor and filters for the contract. The backend start:dev script uses nodemon to watch backend/src and shared/dist, so changes in shared code trigger a restart (see monorepo for the full dev workflow).
Integration
runtime / Node.js
NestJS runs on Node.js (see runtime).
http-server / Express
NestJS uses Express as the default HTTP adapter (see http-server).
routing / controller-layer / service-layer
NestJS provides the structure for routing, controllers, and services. Uses configuration for env and repository-layer (Prisma) for data.