Open Source · Apache License 2.0

Stop managing Kafka with tickets and scripts.

Resource as Code for Apache Kafka Apache Iceberg and beyond.

Declare topics, ACLs, schemas, quotas, and connectors as YAML. Review in pull requests. Jikkou reconciles your Git repository against your real clusters. No state file, no drift, no tickets.

5+Kafka platforms
20+resource types
CLI + APIdual interface
Apache-2.0license
kafka-topic.yaml YAML
apiVersion: kafka.jikkou.io/v1
kind: KafkaTopic
metadata:
  name: 'orders-events'
spec:
  partitions: 6
  replicas: 3
  configs:
    retention.ms: 604800000
    min.insync.replicas: 2
Terminal
$ jikkou diff --files kafka-topic.yaml
+ CREATE  KafkaTopic/orders-events (partitions: 6, replicas: 3)

$ jikkou apply --files kafka-topic.yaml
 Validating resources…
 Computing changes…
CHANGED  KafkaTopic/orders-events

✓ Reconciliation completed. 1 changed, 0 failed
Who it's for

Built for the team that runs Kafka for everyone else

Platform teams
50 app teams, and every topic request is a ticket.

Give teams a paved path: YAML + pull request + CI. You keep the guardrails: naming rules, replication minimums, and partition limits, enforced on every change.

DevOps & SRE
Nobody remembers why that topic has 96 partitions.

Your whole Kafka configuration, versioned in Git and diffed against reality. Out-of-band changes show up; history explains itself.

App teams
We just want to ship, not learn Kafka administration.

Self-service topics and schemas inside platform-enforced validations. A pull request instead of a ticket queue.

Workflow

Describe. Diff. Apply.

A reconciliation loop, not a script: Jikkou computes the difference between your Git repository and the real cluster, and applies only what changed.

1 · YAML

Describe

Define topics, ACLs, schemas, quotas, and connectors in declarative YAML, with Jinja templating for the 300 topics that differ by one value.

2 · jikkou diff

Diff

Preview every change against the actual cluster state, in the pull request, before anything happens. Validations catch policy violations here.

3 · jikkou apply

Apply

Reconcile the desired state. Only the necessary changes are applied: created, altered, deleted, reported.

Why Jikkou

The parts that actually change your week

Stateless reconciliation & drift detection

No state file to protect or migrate. Every diff compares Git against the real cluster, so the topic someone "fixed" by hand during an incident shows up tomorrow morning instead of at the next audit.

Multi-cluster fleet apply

Provider groups target your whole estate (on-prem, Confluent Cloud, Aiven, MSK) with one command. Same YAML, five clusters, zero copy-paste.

{}

Templating at scale

Jinja templates + per-environment values files. One definition for the 300 topics that differ by a name and a number.

GitOps-native

YAML in Git, diff in the pull request, apply in CI. Review, audit trail, and rollback come free with your existing workflow.

Dry-run mode

See exactly what would happen. Nothing touches production unreviewed.

Validation policies

Naming, min ISR, and partition limits, enforced before anything is applied.

▸_

CLI + REST API server

Native binaries for CI; an API server for team-wide automation.

Extensible providers

A Java API to manage any resource, not just Kafka.

Coverage

One model, every platform

Apache Kafka Confluent Cloud Amazon MSK Aiven Redpanda Schema Registry Kafka Connect AWS Glue
Beyond Kafka

The engine is platform-agnostic

Apache Iceberg tables, views, and namespaces: same model, same workflow, same pull request. Your platform's next system can be a provider away.

apiVersion: iceberg.jikkou.io/v1
kind: IcebergTable
metadata:
  name: 'analytics.orders'
spec:
  schema:
    fields:
      - name: 'order_id'
        type: long
Community

Built in the open

20+contributors
8resource providers
v1.xstable and actively maintained

Running Jikkou in production? Tell us: your story helps the project more than anything. Real-world usage reports guide the roadmap and help other teams adopt with confidence.

Share on GitHub Discussions →

Your next topic is a pull request away.

Install in one command. Export your existing cluster in ten minutes.

$ sdk install jikkou