The hands-on playground for the Kora framework.
Clone it, run any module, poke at real endpoints, break things, and see how Kora works — in Java and Kotlin.
Framework · Documentation · Getting Started · Kora Skills
Русская версия: README.ru.md
This is the sandbox for the Kora framework. Every module here is a small, self-contained service that runs one part of Kora end to end — real code, real config, real tests. There is nothing to wire up: check out the repo, start a module, send it a request, then open the source and change something to see what happens.
Everything comes in both Java and Kotlin, so you can play in whichever language you ship.
Even better with an AI agent. Install our kora-skills skill and let your AI agent run these examples, explain what Kora generated, and modify them with you — straight from the official guides and code.
git clone https://github.com/kora-projects/kora-examples.git
cd kora-examples
# start any module — e.g. the HTTP server
./gradlew :kora-java-http-server:runThen hit it, change a handler, and re-run:
curl http://localhost:8080/helloEach example is an independent Gradle module, so you can also just build or test one in isolation:
./gradlew :kora-java-http-server:build # build one module
./gradlew :kora-java-http-server:test # run its tests
./gradlew build # build everythingModules that need infrastructure (PostgreSQL, Kafka, Cassandra, S3, …) ship a docker-compose.yml and a Dockerfile next to their code — bring the dependencies up with docker compose up inside the module first. Every module has its own README.md with the exact commands, ports, and example requests.
Requires JDK 17+; the Gradle wrapper (
./gradlew) is included, so nothing else to install.
- Hello World — the smallest Kora service.
- Getting Started app — the guided first service.
- Dependency Injection intro — how the compile-time graph is wired.
- Full CRUD service — HTTP + JDBC + tests together, closest to a real app.
- Run
./gradlew :<module>:teston any module and openbuild/generated/…to read the code Kora generated for it.
examples/— standalone demonstration services, one per Kora module. Reach for these to play with a single feature in isolation.guides/— companion apps for the step-by-step documentation guides: read the guide, run its app, follow along.
Each row links the same runnable service in both languages.
| Topic | Java | Kotlin |
|---|---|---|
| Hello World | Java | Kotlin |
| Full CRUD service | Java | Kotlin |
CRUD with @KoraSubmodule |
Java | Kotlin |
| Config — HOCON | Java | Kotlin |
| Config — YAML | Java | Kotlin |
| Topic | Java | Kotlin |
|---|---|---|
| HTTP server | Java | Kotlin |
| HTTP client | Java | Kotlin |
| OpenAPI → HTTP server | Java | Kotlin |
| OpenAPI → HTTP client | Java | Kotlin |
| SOAP client | Java | Kotlin |
| Topic | Java | Kotlin |
|---|---|---|
| JDBC | Java | Kotlin |
| R2DBC | Java | Kotlin |
| Vert.x | Java | Kotlin |
| Cassandra | Java | Kotlin |
| Topic | Java | Kotlin |
|---|---|---|
| Kafka | Java | Kotlin |
| gRPC server | Java | Kotlin |
| gRPC client | Java | Kotlin |
| S3 — AWS SDK | Java | Kotlin |
| S3 — MinIO | Java | Kotlin |
| Topic | Java | Kotlin |
|---|---|---|
Resilience (@Retry, @Timeout, @CircuitBreaker, @Fallback) |
Java | Kotlin |
| Cache — Caffeine | Java | Kotlin |
| Cache — Redis | Java | Kotlin |
| Validation | Java | Kotlin |
| Scheduling — JDK | Java | Kotlin |
| Scheduling — Quartz | Java | Kotlin |
| Topic | Java | Kotlin |
|---|---|---|
| Telemetry (metrics, tracing, logs) | Java | Kotlin |
| Camunda 7 engine | Java | Kotlin |
| Camunda 8 Zeebe worker | Java | Kotlin |
Ahead-of-time compiled native builds — see examples/graalvm:
CRUD · JDBC · CRUD · R2DBC · CRUD · Vert.x · CRUD · Cassandra · Kafka
The guides/ tree holds one companion app per documentation guide, in Java and Kotlin — from getting started and dependency injection to databases, HTTP, Kafka, gRPC, resilience, validation, observability, and the three testing styles (JUnit, integration, black-box). Read a guide in the docs and run its app side by side.
- Documentation — kora-docs
- Guides — Getting Started
- Framework source — kora-projects/kora
- AI skill — kora-skills
Licensed under the Apache License 2.0.