# ADR-001: Monorepo with pnpm Workspaces ## Status Accepted ## Context Fleet Forge requires multiple packages: API server, web dashboard, shared types, and the Go agent. We need a structure that supports shared code, independent builds, and a single repository. ## Decision Use pnpm workspaces for the TypeScript/Node.js packages. The Go agent lives in the same repo but is built independently. ## Rationale - pnpm workspaces provide efficient dependency management with a single lockfile - Workspace references (`workspace:*`) enable local development without publishing - Compatible with Next.js, Express, and Drizzle ORM - The Go agent uses standard Go modules independently ## Consequences - All TS packages share a common `tsconfig.base.json` - Build order is managed via workspace dependency graph - Go agent has its own `go.mod` and is not part of the pnpm workspace