Skip to main content

Just read description

Updated 2 min readMarkdown

I got tired of local microservices turning into a pile of Dockerfiles, Compose files, and nginx configs that nobody wants to maintain. Agents are worse at it than people. They rewrite a Dockerfile, break the Tiltfile, and burn a bunch of tokens fixing plumbing instead of the app. So I built TDK CLI. You keep one service.json next to each service. tdk up generates the local runtime and starts it. Docker runs the containers. Tilt live-reloads them. No local Kubernetes. you keep tdk up writes what runs


services/orders-api/ .autogenerated/ Docker service.json -- tdk up --> Dockerfile | src/ Tiltfile v Traefik routes Tilt watches | v api.shop.localhost A small shop stack looks like this: tdk up shop | +-------------------+-------------------+ | | | orders-api storefront postgres | | | +-------------------+-------------------+ | Traefik | *.shop.localhost The shortest loop: mkdir shop && cd shop tdk project --yes tdk resource orders-api --type backend --stack shop --yes tdk up shop --dry-run tdk up shop tdk doctor checks Docker, Tilt, and ports. tdk ui is a terminal dashboard for the running services. tdk config verify catches drift if someone hand-edits a generated file. It is local dev only. Production stays on Helm, Argo CD, or Kustomize. Core is MIT and does not need a key. You need Docker and Tilt. macOS and Linux work directly. Windows needs WSL2 Ubuntu. Native Windows can inspect, not start the stack. Repo: https://github.com/tdk-landscape/tdk-cli-core If Compose or Tilt already works for you, would a service.json still be worth it, or is that just another file to keep in sync?

No comments yet. Be the first to comment.