v0.5.0

Released: July 24, 2026


TypeScript 6

The whole stack moves to TypeScript 6.0: the CLI, @tsdevstack/nest-common, all templates, and the clients that npx tsdevstack generate-client produces. Everything was verified end to end on TS 6.0.3, from fresh template installs through build, typecheck, lint, tests, and a running local stack.

New projects

Nothing to do. Projects scaffolded after this release get TypeScript 6 out of the box, with tsconfigs written for the new compiler defaults: explicit types lists (TS6 no longer auto-includes every @types package), explicit rootDir (TS6 no longer infers it), and no baseUrl (removed in TS6).

Existing projects keep working

No forced migration. Every path an existing project receives updates through was checked against TypeScript 5:

  • Updating @tsdevstack/nest-common: the published declaration files are unchanged and the package declares no TypeScript version requirement.
  • Updating the CLI: it ships self-contained and never compiles your code with its own compiler.
  • Regenerating a client: the client package moves to module: "nodenext" and typescript: "~6.0.0", but it still builds with your installed TS 5.x and still emits CommonJS. Your services stay on their pinned TypeScript.
  • Adding a new service: a TS6 service coexists with TS5 services in the same monorepo. npm resolves the right compiler per workspace.
  • No Node.js version bump is required anywhere.

Migrating an existing project (optional)

Per NestJS service:

  1. Bump devDependencies: "typescript": "~6.0.0", "typescript-eslint": "^8.63.0".
  2. In tsconfig.json: remove "baseUrl", add "rootDir": ".", add "types": ["node", "jest"] (plus "multer" and a @types/multer devDependency if the service handles file uploads), and add "strict": false to keep the behavior your project was generated with.
  3. In tsconfig.build.json: make sure "rootDir": "./src" and "include": ["src"] are set.
  4. Change the docs:generate script to ts-node --transpile-only scripts/generate-openapi.ts. The old inline compiler options are a hard error under TS6, and without this fix npx tsdevstack sync cannot rebuild the Kong config.

For the Next.js frontend: remove "baseUrl" and prefix every paths entry with ./. Then run npm install and regenerate your clients.

One version note: hold service TypeScript ranges at ~6.0.0 for now. typescript-eslint supports TS 6.0 but not yet 6.1, and the tilde range keeps a future 6.1 release from arriving before the lint stack is ready for it.

Under the hood

Package builds moved to rslib 0.23, so declaration files are now emitted by the TS 6 compiler as well, and the repo runs a single TypeScript version across compiler, tests, and lint. The nest service template also drops a stray unused variable that failed lint on every fresh scaffold.

Action

Nothing required. New scaffolds get TypeScript 6 automatically. To move an existing project, follow the migration steps above at your own pace; staying on TypeScript 5 remains fully supported.