apps/api boots a NestJS application with: Zod-validated environment configuration (schema in @dorfteich/shared, fails fast listing every invalid variable), structured pino request logging via nestjs-pino (pretty in development, JSON otherwise, auth headers redacted), a global exception filter producing the uniform ApiErrorBody shape, and GET /api/v1/healthz. Vitest runs Nest through SWC for decorator metadata; supertest covers healthz and the 404 error shape. Closes #2 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
12 lines
342 B
TypeScript
12 lines
342 B
TypeScript
import swc from 'unplugin-swc';
|
|
import { defineConfig } from 'vitest/config';
|
|
|
|
// NestJS relies on decorator metadata, which esbuild (Vitest's default
|
|
// transformer) cannot emit — SWC (configured via .swcrc) can.
|
|
export default defineConfig({
|
|
plugins: [swc.vite({ module: { type: 'es6' } })],
|
|
test: {
|
|
environment: 'node',
|
|
},
|
|
});
|