$ show tilt-dev/tilt
Tilt is a local development orchestration tool for Kubernetes and Docker Compose microservice environments. The Go binary evaluates a Starlark-based Tiltfile, watches the filesystem, builds container images, applies changes to a cluster or docker-compose stack, streams logs, and presents state through both a terminal HUD and a React web UI. The architecture is a single CLI/daemon combining a controller-runtime-style apiserver with custom v1alpha1 resource types, a Redux-like central store with actions and reducers, engine subscribers that react to state changes, and reconcilers per resource type. Key entry points are cmd/tilt/main.go, internal/cli/* for command handling, internal/engine/upper.go for the main event loop, and internal/controllers/core/* for reconciliation. External dependencies include Docker daemons/buildx, Kubernetes API servers, docker-compose, git, and optional Tilt Cloud analytics/telemetry endpoints. The codebase is exceptionally large and well-tested, though it carries visible dual-paradigm debt: older store/engine patterns coexist with newer apiserver/controller patterns, and many feature flags are marked obsolete.
The LLM identified 5 files worth highlighting for reuse:
A self-contained .dockerignore parser supporting standard Go filepath.Match patterns, negations, and absolute-path anchoring. It is a clean, well-tested utility that could be extracted into another build or file-watching project with minimal changes, and it demonstrates non-obvious handling of the tricky exclusion/negation semantics used by Docker builds.
Uses reflection to recursively locate embedded PodSpec, ObjectMeta, Container, and LabelSelector fields across arbitrary Kubernetes object shapes, including unstructured and typed objects. This solves the recurring Kubernetes problem of normalizing heterogeneous APIs and is reusable in any tooling that needs to inspect or mutate Kubernetes resources without knowing every concrete type.
A small framework for building Starlark interpreters with modular plugins, stateful plugins, load interception, and path-aware environments. It is the foundation of Tilt's Tiltfile DSL but is generic enough to be extracted for other Starlark-based configuration languages. The plugin contract and fixture helpers make it a strong example of embedding an interpreter safely behind a clean API.
Applies composable log filters (source, resource, level, since, tail, JSON mode) with an optimized fast path for the common all-lines case. It is isolated from UI concerns and shows deliberate engineering around high-throughput log streaming, checkpointing, and filtered readers. The same filtering semantics are mirrored in the TypeScript UI, making this a solid reference for dual-language log filtering.
A terminal layout and rendering engine built on tcell, providing boxes, windows, text wrapping, scrolling, and modal compositing. It is a self-contained UI toolkit with extensive golden-file tests and demonstrates non-trivial terminal rendering craftsmanship. Any Go project needing a structured TUI would benefit from extracting this component.