tdk-landscape/tdk-cli-core

TDK CLI starts your services on your laptop. Not a deploy, not a Compose file. One service.json, then tdk up. No Kubernetes.

Starlark

14

423 commits

updated Oct 1, 2026

See the code

See what people are saying

README

TDK CLI — start services on your laptop

TDK CLI starts your services on your laptop. It is not a deploy and not a Compose file: define each service in service.json, then run tdk up. No Kubernetes is needed on the machine.

Stability: 1.x local dev. Generated files are a contract; verify with tdk config verify. Core CLI is MIT and needs no key. Premium is optional.

Docker runs the containers. Tilt watches services and live-updates containers while you code. TDK CLI writes the configuration Tilt uses. Production deployment stays with Helm, Argo CD, or Kustomize.

Website · Quickstart · Examples · Awesome TDK · Demo · Report a bug

Quick start

mkdir shop && cd shop
tdk project --yes
tdk resource orders-api --type backend --stack shop --yes
tdk up shop
curl http://api.shop.localhost/api/orders-api/health

TDK scaffolding a backend and a frontend, then listing the stack

Scaffolding a backend and frontend, then listing the stack.

If Helm, Compose, or your existing Tilt setup already gives you a working local environment, keep using it. TDK CLI is for engineers managing several services who want a clear local service contract and one command to start the stack.

See how TDK CLI works alongside Helm, the service schema, and the project configuration schema.

npm version CI Quickstart E2E ERP fixture scale E2E Example apps E2E Known Vulnerabilities Socket Badge License: MIT

Installation

Install the CLI from npm (requires Node.js 22.12+) or use the prebuilt binary (no Node.js or Bun required):

npm install -g @tdk-landscape/tdk-cli-core
# or install the prebuilt binary
curl -fsSL https://tdk-landscape.github.io/install.sh | sh

tdk up shop --dry-run previews selected local services and URLs before starting containers. The default starter is Bun/TypeScript; TDK's core role is running local containers through Docker + Tilt, not providing a Node.js application framework. See the one-backend example.

When not to use TDK

  • Your existing Compose or Tilt workflow already gives you a working local environment.
  • Helm is your whole development workflow and you do not want local services on Docker.
  • You do not want service.json manifests and generated local configuration.

Docs

Requirements and support

For the local runtime, install Docker (Desktop, OrbStack, or Colima; Engine 25+, Compose 2.20+) and Tilt. Bun 1.2+ is used by the default generated services. TDK selects host ports from bounded fallback ranges for HTTP, HTTPS, and Postgres; set TDK_HTTP_PORT, TDK_HTTPS_PORT, or TDK_POSTGRES_PORT to override them. TDK supports macOS, Linux, and Windows through WSL2 Ubuntu; native Windows supports CLI inspection only. Run tdk doctor to check local readiness. See WSL2 setup.

On native Windows, tdk --version, tdk doctor, and tdk up --dry-run are inspect-only commands. tdk up exits 2 with “Landscape startup needs Ubuntu on WSL2. Native Windows is inspect-only.”

License matrix

CapabilityFreePremium
tdk up, scaffold, Traefik, Postgres, Tilt live update, golden layersyesyes
Verdaccio, DDD scaffold, Sablier idle stopnokey
Playwright, C4, AGENTS.mdfree if generated in-repoonly if the implementation is downloaded with a key

Core stays free. Premium is a separate key for the extras above; no key required to run tdk up.

Ecosystem map: examples, articles, related tools, and notes live in awesome-tdk-framework. Star this repo (tdk-cli-core) if the CLI is what you run; use the awesome list to browse the rest.

Contributing and license

Contributions are welcome. Start with CONTRIBUTING.md and the contributor guide. Report security issues using SECURITY.md.

TDK is MIT-licensed; see LICENSE.

bun
cli
developer-experience
developer-productivity
developer-tools
development-environment
devops
docker
docker-compose
hacktoberfest
hacktoberfest2026
hot-reload
local-development
microservices
tilt
typescript

tdk-landscape/tdk-cli-core

TDK CLI starts your services on your laptop. Not a deploy, not a Compose file. One service.json, then tdk up. No Kubernetes.

Starlark

14

423 commits

updated Oct 1, 2026

See the code

See what people are saying

README

TDK CLI — start services on your laptop

TDK CLI starts your services on your laptop. It is not a deploy and not a Compose file: define each service in service.json, then run tdk up. No Kubernetes is needed on the machine.

Stability: 1.x local dev. Generated files are a contract; verify with tdk config verify. Core CLI is MIT and needs no key. Premium is optional.

Docker runs the containers. Tilt watches services and live-updates containers while you code. TDK CLI writes the configuration Tilt uses. Production deployment stays with Helm, Argo CD, or Kustomize.

Website · Quickstart · Examples · Awesome TDK · Demo · Report a bug

Quick start

mkdir shop && cd shop
tdk project --yes
tdk resource orders-api --type backend --stack shop --yes
tdk up shop
curl http://api.shop.localhost/api/orders-api/health

TDK scaffolding a backend and a frontend, then listing the stack

Scaffolding a backend and frontend, then listing the stack.

If Helm, Compose, or your existing Tilt setup already gives you a working local environment, keep using it. TDK CLI is for engineers managing several services who want a clear local service contract and one command to start the stack.

See how TDK CLI works alongside Helm, the service schema, and the project configuration schema.

npm version CI Quickstart E2E ERP fixture scale E2E Example apps E2E Known Vulnerabilities Socket Badge License: MIT

Installation

Install the CLI from npm (requires Node.js 22.12+) or use the prebuilt binary (no Node.js or Bun required):

npm install -g @tdk-landscape/tdk-cli-core
# or install the prebuilt binary
curl -fsSL https://tdk-landscape.github.io/install.sh | sh

tdk up shop --dry-run previews selected local services and URLs before starting containers. The default starter is Bun/TypeScript; TDK's core role is running local containers through Docker + Tilt, not providing a Node.js application framework. See the one-backend example.

When not to use TDK

  • Your existing Compose or Tilt workflow already gives you a working local environment.
  • Helm is your whole development workflow and you do not want local services on Docker.
  • You do not want service.json manifests and generated local configuration.

Docs

Requirements and support

For the local runtime, install Docker (Desktop, OrbStack, or Colima; Engine 25+, Compose 2.20+) and Tilt. Bun 1.2+ is used by the default generated services. TDK selects host ports from bounded fallback ranges for HTTP, HTTPS, and Postgres; set TDK_HTTP_PORT, TDK_HTTPS_PORT, or TDK_POSTGRES_PORT to override them. TDK supports macOS, Linux, and Windows through WSL2 Ubuntu; native Windows supports CLI inspection only. Run tdk doctor to check local readiness. See WSL2 setup.

On native Windows, tdk --version, tdk doctor, and tdk up --dry-run are inspect-only commands. tdk up exits 2 with “Landscape startup needs Ubuntu on WSL2. Native Windows is inspect-only.”

License matrix

CapabilityFreePremium
tdk up, scaffold, Traefik, Postgres, Tilt live update, golden layersyesyes
Verdaccio, DDD scaffold, Sablier idle stopnokey
Playwright, C4, AGENTS.mdfree if generated in-repoonly if the implementation is downloaded with a key

Core stays free. Premium is a separate key for the extras above; no key required to run tdk up.

Ecosystem map: examples, articles, related tools, and notes live in awesome-tdk-framework. Star this repo (tdk-cli-core) if the CLI is what you run; use the awesome list to browse the rest.

Contributing and license

Contributions are welcome. Start with CONTRIBUTING.md and the contributor guide. Report security issues using SECURITY.md.

TDK is MIT-licensed; see LICENSE.

bun
cli
developer-experience
developer-productivity
developer-tools
development-environment
devops
docker
docker-compose
hacktoberfest
hacktoberfest2026
hot-reload
local-development
microservices
tilt
typescript

Languages

Starlark

41.9%

TypeScript

33.4%

Python

14.5%

Shell

6.2%

CSS

1.6%

Handlebars

1.5%