ZenWave Platform
I created ZenWave SDK to help me think about software, talk about software, and validate software before writing any code. ZDL compresses the design of a service so it fits in your head.
Then the SDK generates all the boring parts that are already present in the model.
Four years in production,
open sourced from day one,
funded by the time it saved me and my team.
The platform, the architectural world model, is where I take this further: making the big picture visible and navigable, for people and agents.
-
ZenWave IntelliJ Plugin
Architecture navigation and visualization layer for ZenWave models inside your IDE.
-
ZenWave SDK
Generate Spring Boot services from domain models, business flows and API contracts.
-
ZFL Flow Language
Model business processes and event flows connected to APIs, events, schemas and services.
-
ZDL Modeling Language
Model bounded contexts, aggregates, commands, events and APIs as structured domain artifacts.
-
AsyncAPI Generator for Spring Cloud Stream / Spring Kafka
Generate strongly typed Java and Kotlin code from AsyncAPI specifications.
-
EventCatalog Generator
WIP generator for publishing OpenAPI, AsyncAPI and ZenWave models as browsable EventCatalog.dev documentation.
-
Terraform / asyncapi-ops
Provision Kafka and Schema Registry infrastructure from AsyncAPI contracts.
Reference Architectures
-
Arcadia Editions
A fictional board game retailer built to explore event-driven architecture end-to-end, from discovery and modeling to APIs, events and running services.
-
AsyncAPI Shopping Cart
Define AsyncAPI and Avro contracts, then derive Kafka producers and consumers for a multi-module event-driven application.
-
Order Fulfillment Kotlin
Capture ubiquitous language in ZDL and derive a Kotlin Spring Boot service with REST APIs, domain events and generated implementation.
-
Clinical Tool Modulith
Model multiple bounded contexts and derive a modular monolith where domain boundaries, APIs and persistence stay aligned.
AsyncAPI Contributions
-
TSC and Ambassador Work
Contributing to the AsyncAPI ecosystem through technical governance, community advocacy and practical feedback from real event-driven architecture work. I also organized AsyncAPI Conference on Tour Madrid 2023.
-
Generators and Tooling
Contributions across generation, preview and developer tooling, including AsyncAPI Studio and VSCode Preview work as part of the broader ecosystem.
Other OSS
-
JSON Schema Ref Parser
Standalone JSON Schema reference parsers for JVM and Kotlin Multiplatform, used across ZenWave SDK, the IntelliJ plugin and other tooling.
-
Spring Modulith Events for Spring Cloud Stream
Externalize Spring Modulith domain events through Spring Cloud Stream to any supported broker. Used by the AsyncAPI Generator for Transactional Outbox integration.