Your local development stack in a single command.
Website · Documentation · Releases
Pyahu CLI provisions a local development stack on a k3d cluster with lightweight Kubernetes manifests the CLI generates for you. One command brings up PostgreSQL, ZITADEL, RabbitMQ, Kafka, Kafka Connect with Debezium, and Kafka UI, with local TLS and predictable endpoints, and without turning your setup into a side project.
It is intentionally lightweight: k3d plus generated resources. Normal operation
does not require kubectl or helm.
$ pyahu init --preset platform
$ pyahu up
✓ Checando dependências locais (137ms)
✓ Cluster pyahu-local criado (8.4s)
✓ Aguardando a API do Kubernetes (3.1s)
✓ Configurando serviços: postgres, zitadel, rabbitmq, kafka, kafka-connect, kafka-ui
✓ Pyahu local stack is ready| Service | Role | Endpoint |
|---|---|---|
| PostgreSQL | Relational database (optional read replicas) | localhost:5432 |
| ZITADEL | Identity & OIDC over local HTTPS | https://zitadel.localhost |
| RabbitMQ | AMQP messaging + management UI | localhost:5672 · https://rabbitmq.localhost |
| Kafka | Event streaming broker (KRaft) | localhost:9092 |
| Kafka Connect | Declarative connectors with Debezium CDC | http://localhost:8083 |
| Kafka UI | Topics, connectors and consumers | https://kafka-ui.localhost |
HTTP UIs go through Traefik on host 80/443 with *.localhost hostnames and a
shared local TLS certificate. TCP services and the Kafka Connect REST API use
dedicated host ports.
Released binaries are published for macOS, Linux, and Windows.
# Install script (macOS and Linux)
curl -fsSL https://cli.pyahu.io/install.sh | sh
# pick an install dir, no sudo
curl -fsSL https://cli.pyahu.io/install.sh | sh -s -- --bin-dir "$HOME/.local/bin"
# Go 1.26+
go install github.com/pyahu/cli/cmd/pyahu@latestOr grab a binary from the releases page. Full instructions, verification and shell completion: Installation docs.
- Docker or Podman, running
- k3d 5.x
pyahu doctor checks these and your local ports before bringing the stack up.
pyahu init --preset platform # write pyahu.yaml (or --preset minimal)
pyahu doctor # validate Docker/Podman, k3d and ports
pyahu up # create the cluster and apply the services
pyahu certs trust # trust the local CA for https://*.localhost
pyahu services # list services and endpoints
eval "$(pyahu env)" # load connection env vars into your shell
pyahu down # tear it all downThe default stack file is pyahu.yaml, discovered from the current directory
upward. See the command reference for every
command and flag.
- Overview & getting started
- Commands
- Configuration
- Kafka Connect & Debezium
- Local certificates
- Backup & restore
The current v1 focus is local infrastructure only. Application deployment, remote clusters, and Telepresence-style workflows are intentionally out of scope.
Contributions are welcome. See CONTRIBUTING.md for the dev setup, build/test commands, and conventions. Please read the Code of Conduct and report security issues per the security policy.
MIT © Pyahu