# Workspace ## Overview pnpm workspace monorepo using TypeScript. Each package manages its own dependencies. ## Stack - **Monorepo tool**: pnpm workspaces - **Node.js version**: 24 - **Package manager**: pnpm - **TypeScript version**: 5.9 - **API framework**: Express 5 - **Database**: PostgreSQL + Drizzle ORM - **Validation**: Zod (`zod/v4`), `drizzle-zod` - **API codegen**: Orval (from OpenAPI spec) - **Build**: esbuild (CJS bundle) ## Structure ```text artifacts-monorepo/ ├── artifacts/ # Deployable applications │ └── api-server/ # Express API server ├── lib/ # Shared libraries │ ├── api-spec/ # OpenAPI spec + Orval codegen config │ ├── api-client-react/ # Generated React Query hooks │ ├── api-zod/ # Generated Zod schemas from OpenAPI │ └── db/ # Drizzle ORM schema + DB connection ├── scripts/ # Utility scripts (single workspace package) │ └── src/ # Individual .ts scripts, run via `pnpm --filter @workspace/scripts run