Skip to content

Recipes

End-to-end scenarios that combine multiple systems. Each recipe gives you the Gradle deps, StoveConfig.kt, and a runnable test shape for a real-world flow. Treat package names, ports, and app-specific property keys as values to adapt.

Recipes complement the Setup Wizard (which composes systems) and the Components reference (which documents each system in isolation).

Working source on GitHub Every recipe on this page is a tightened walkthrough of a project in the Stove repo's recipes/ folder. Clone, open in your IDE, run the documented test task, then adapt the wiring to your application.

Available recipes

  • Order placement flow

    HTTP POST → Postgres write → WireMock external call → Kafka event published.

    Walkthrough · source ↗

Browse the source

Don't see your scenario? Jump straight to the working projects.

JVM · Kotlin3 recipes

Spring showcase (HTTP + Postgres + Kafka + WireMock + tracing), Ktor + Postgres, Ktor + Mongo.

JVM · Java2 recipes

Spring Boot + Postgres, Quarkus basic. e2e tests written in Kotlin against a Java AUT.

JVM · Scala1 recipe

Spring Boot basic. Scala AUT, Kotlin tests.

Polyglot · Goprocess + container

Full Go showcase: HTTP + Postgres + Kafka (sarama / franz / segmentio) + OTel + dashboard + coverage. Single project, both modes via go.aut.mode.

Pattern of a recipe

Every recipe page follows the same review shape:

  1. What you'll test. The business flow.
  2. Systems used. Links to each system's reference page.
  3. Gradle dependencies. Paste-ready.
  4. StoveConfig.kt. Paste-ready.
  5. The test. Paste-ready.
  6. Variations. Ktor / Micronaut / Quarkus / Go equivalents where relevant.
  7. Common pitfalls. What tends to break and how to diagnose it.

Want a recipe for your flow?

If you have a scenario that's not covered, open an issue with a brief description (systems + the assertion you want to make). Recipes are derived from real test suites, so contributions are welcome.