A self-contained platform for deploying apps with plain language and Claude, running entirely within k3s on a single EC2 instance.
https://github.com/davidbmar/2026-FEB-21-K3-App-Builder-Claude-proto · public · shipped
An internal developer tool that allows users to describe an application in natural language, have Claude generate the code, build it into a container, and deploy it to a preview or production environment on a local Kubernetes cluster. It isolates each app in its own namespace with resource quotas and network policies.
git clone https://github.com/davidbmar/2026-FEB-21-K3-App-Builder-Claude-proto cd 2026-FEB-21-K3-App-Builder-Claude-proto chmod +x scripts/*.sh ./scripts/install-k3s.sh ./scripts/setup-registry.sh export ANTHROPIC_API_KEY=sk-ant-... ./scripts/bootstrap-cluster.sh
flowchart TD
User[User Browser] -->|HTTP Request| Traefik[Traefik Ingress Controller]
Traefik -->|builder.IP.nip.io| BuilderUI[Builder UI Service]
Traefik -->|app-preview.IP.nip.io| PreviewSvc[Preview Service]
Traefik -->|app-prod.IP.nip.io| ProdSvc[Production Service]
subgraph k3s Cluster
BuilderUI --> BuildOps[Build Operations]
BuildOps -->|docker build| DockerHost[Docker Daemon]
DockerHost -->|Push Image| LocalRegistry[Local Registry :5050]
BuildOps -->|kubectl apply| K8sAPI[k3s API Server]
K8sAPI -->|Manage Pods| PreviewDeploy[Preview Deployment]
K8sAPI -->|Manage Pods| ProdDeploy[Production Deployment]
PreviewDeploy --> PreviewPod[Preview Pod]
ProdDeploy --> ProdPod[Production Pod]
PreviewPod --> PreviewSvc
ProdPod --> ProdSvc
end
BuildOps -->|Stream Code| ClaudeAPI[Anthropic Claude API]
The platform is built using Python (FastAPI) for the backend logic, integrating with the Anthropic API for code generation. It uses Docker for building container images and pushes them to a local Docker registry. k3s manages the runtime, networking (via Traefik), and isolation. Jinja2 templates are used to generate Kubernetes manifests dynamically.
sequenceDiagram
participant U as User
participant B as Builder UI
participant C as Claude Ops
participant A as Anthropic API
participant D as Docker Host
participant R as Local Registry
participant K as k3s/Kubectl
U->>B: Describe App & Click Generate
B->>C: Request Code Generation
C->>A: Stream Prompt to Claude
A-->>C: Stream Code Chunks
C-->>B: Stream Code to UI
U->>B: Click Build & Deploy Preview
B->>D: docker build .
D->>R: Push Image (app:timestamp)
B->>K: Apply Namespace & Manifests
K->>K: Create Deployment/Pod
K-->>B: Deployment Ready
B-->>U: Show Preview URL
Clone the repository, install k3s and a local registry using provided scripts, set your ANTHROPIC_API_KEY, and run the bootstrap script. Access the UI via a nip.io domain pointing to your EC2 instance's public IP.