Commit Graph

3 Commits

Author SHA1 Message Date
schalli 2c12878cb1 feat(01-01): Next.js app + Docker Compose stack with network segmentation
- Next.js 15 app with Tailwind CSS v4, standalone output for Docker
- Root layout with de locale, page with Tessera placeholder
- Multi-stage Dockerfile for web with monorepo root context
- Docker Compose with 4 services: traefik, web, api, db
- Three segregated networks: frontend-net, backend-net, data-net (internal)
- Traefik v2.11 reverse proxy routing / to web, /api to api
- API strip prefix middleware for clean routing
- PostgreSQL 16-alpine with health checks and named volume
- Fixed API Dockerfile for pnpm monorepo node_modules structure
- Fixed Next.js standalone path for monorepo (apps/web/server.js)
- Fixed Traefik Docker API version compatibility
- Network segmentation: web NOT on data-net, api NOT on frontend-net
2026-06-18 10:17:21 +02:00
schalli 04c78b4bdc feat(01-01): NestJS API with health endpoint and Prisma schema
- NestJS app with ConfigModule and HealthModule
- GET /health endpoint returning {status, timestamp} using HealthResponse type
- Prisma schema with PostgreSQL datasource and Tenant model (multi-tenancy foundation)
- Multi-stage Dockerfile with non-root nestjs user, monorepo root as build context
- Workspace dependency on @tessera/shared for shared types
- Type-check passes successfully
2026-06-18 10:04:08 +02:00
schalli b75d7c3b58 feat(01-01): monorepo scaffold with root configs and shared package
- Root package.json with pnpm workspace, Turborepo, Biome, TypeScript
- pnpm-workspace.yaml defining apps/* and packages/* workspaces
- turbo.json with build, dev, lint, type-check task definitions
- tsconfig.base.json with strict mode and bundler module resolution
- biome.json with formatter and linter configuration
- .gitignore, .env.example, .dockerignore
- @tessera/shared package with APP_NAME constant and HealthResponse type
- pnpm-lock.yaml generated from successful install
2026-06-18 10:02:21 +02:00