Files

29 lines
1.7 KiB
Markdown
Raw Permalink Normal View History

# Changelog
All notable changes to this project will be documented in this file.
## [0.1.0-alpha.0] — 2026-03-12
### Added
- **Monorepo scaffold** — pnpm workspaces with `packages/api`, `packages/web`, `packages/shared`
- **NestJS 11 API shell** — Fastify 5 adapter, health endpoint (`GET /api/health`), ConfigModule with env validation
- **Next.js 15.5.x frontend shell** — App Router, next-intl i18n, Tailwind CSS v4, shadcn/ui base config
- **Prisma 7 schema shell** — PostgreSQL datasource, placeholder model for client generation
- **Shared types package** — `@davinci/shared` with barrel exports, build via TypeScript
- **Turborepo** — build caching and task orchestration across packages
- **Vitest** — test runner for all packages (replaces Jest)
- **ESLint flat config** — TypeScript + Prettier integration, single root config
- **Prettier** — consistent formatting with pre-commit hooks (Husky + lint-staged)
- **Docker** — multi-stage Dockerfile (nginx + NestJS + Next.js), docker-compose for dev
- **nginx** — internal routing `/api/*` → :3001, `/*` → :3000
- **Makefile** — developer command interface matching architecture spec
- **README** — quickstart, project structure, environment variables
- **smoke-test.sh SKIP_WEB** — `SKIP_WEB=1 make smoke` skips web container for API-only workflows
### Fixed
- **Docker healthcheck IPv6** — changed `localhost` to `127.0.0.1` in docker-compose healthcheck URLs (Alpine wget resolves localhost → ::1 IPv6, Fastify listens on IPv4 only)
- **Scalar ESM import (TS1479)** — converted static import of `@scalar/fastify-api-reference` to dynamic `import()` since the package is ESM-only
- **Test import** — added missing `afterEach` to vitest import in `api-docs.setup.spec.ts`