0Pricing
TypeScript Academy · Lesson

TypeScript Project References Explained

Use composite and references settings for multi-package builds.

What Are Project References?

Project references let you split a TypeScript codebase into multiple tsconfig projects that declare dependencies on each other, enabling incremental, isolated builds.

// tsconfig.json (root)
{
  "references": [
    { "path": "./packages/core" },
    { "path": "./packages/ui" }
  ]
}

Composite Projects

Each referenced project must have "composite": true in its tsconfig. This enables declaration caching and dependency tracking.

// packages/core/tsconfig.json
{
  "compilerOptions": {
    "composite": true,
    "declaration": true,
    "outDir": "./dist"
  }
}

All lessons in this course

  1. TypeScript Project References Explained
  2. pnpm Workspaces with TypeScript
  3. Shared Types Package Strategy
  4. Incremental Builds and Cache in Monorepos
← Back to TypeScript Academy