Skip to main content
🔥

kindling

Push code. Your laptop builds it. Your laptop runs it.

A Kubernetes operator that turns your laptop into a personal CI/CD environment. Push to GitHub, build locally via Kaniko, deploy ephemeral staging environments — all on localhost, in seconds.

terminal
$ kindling init ▸ Creating Kind cluster ✅ Kind cluster created ▸ Installing ingress + registry ✅ Ingress and registry ready ▸ Deploying operator ✅ Controller is running 🎉 kindling is ready! $ kindling generate -k sk-... -r . ▸ Analyzing repository ✅ Found 3 Dockerfiles, 4 manifests ▸ Generating workflow with AI 🤖 Provider: openai, Model: o3 ✅ Workflow written to dev-deploy.yml $ git push 🏗️ Building → registry:5000/app:abc123 ✅ Built & pushed 📦 Deploying with postgres + redis ✅ http://you-app.localhost

Everything you need for local dev staging

One operator. One CLI. From git push to running app on localhost.

Zero Cloud CI Minutes

Your laptop is the runner. No queuing behind other jobs, no paying for compute you already own. Builds happen locally in seconds.

🤖

AI-Generated Workflows

Point kindling generate at any repo. It scans Dockerfiles, docker-compose, Helm charts, and source code, then produces a complete GitHub Actions workflow.

📦

15 Auto-Provisioned Dependencies

Declare postgres, redis, rabbitmq, kafka, elasticsearch, and 10 more in your workflow. The operator provisions them and injects connection URLs automatically.

🔨

Kaniko Builds — No Docker Daemon

Images are built inside the cluster using Kaniko. No Docker-in-Docker, no privileged containers. Layer caching makes rebuilds fast.

🌐

Instant localhost Staging

Every push deploys a full staging environment with Deployment, Service, and Ingress — accessible at http://you-app.localhost immediately.

🔐

Secrets & OAuth Built In

Manage API keys with kindling secrets. Need OAuth callbacks? kindling expose creates a public HTTPS tunnel with one command.

How it works

1

Bootstrap

kindling init creates a Kind cluster with an in-cluster registry, ingress controller, and the kindling operator.

2

Connect

kindling runners registers a self-hosted GitHub Actions runner bound to your repo and username.

3

Generate

kindling generate scans your repo and uses AI to produce a complete workflow with builds, deploys, and dependencies.

4

Push & Deploy

git push triggers the workflow. Your laptop builds the image and deploys a full staging environment on localhost.

Quick start

# Install
brew install kindling-sh/tap/kindling
# — or build from source —
git clone https://github.com/kindling-sh/kindling.git
cd kindling && make cli
sudo mv bin/kindling /usr/local/bin/

# Bootstrap a local cluster
kindling init

# Register a GitHub Actions runner
kindling runners -u <github-user> \
  -r <owner/repo> -t <pat>

# AI-generate a workflow for your app
kindling generate -k <api-key> -r /path/to/app

# Push and watch it deploy
git push origin main

# Access your app
curl http://<user>-<app>.localhost

Prerequisites

  • Docker Desktop — container runtime
  • Kind — local Kubernetes clusters
  • kubectl — Kubernetes CLI

Supported languages

GoTypeScriptPythonJavaRustRubyPHPC#Elixir

Supported AI providers

OpenAI (o3, gpt-4o)Anthropic (Claude)