Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zenwave360/zdl-jvm

ZDL Modeling Language for Event-Driven microservices
https://github.com/zenwave360/zdl-jvm

api-first ddd dsl event-driven-architecture event-storming

Last synced: about 1 month ago
JSON representation

ZDL Modeling Language for Event-Driven microservices

Awesome Lists containing this project

README

        

ZenWave Domain Model Language
=====================================

[![Maven Central](https://img.shields.io/maven-central/v/io.github.zenwave360.zenwave-sdk/zdl-jvm.svg?label=Maven%20Central&logo=apachemaven)](https://search.maven.org/artifact/io.github.zenwave360.zenwave-sdk/zdl-jvm)
[![GitHub release (latest by date)](https://img.shields.io/github/v/release/ZenWave360/zdl-jvm?logo=GitHub)](https://github.com/ZenWave360/zdl-jvm/releases)
[![build](https://github.com/ZenWave360/zdl-jvm/workflows/Build/badge.svg)](https://github.com/ZenWave360/zdl-jvm/actions/workflows/build.yml)
[![coverage](https://raw.githubusercontent.com/ZenWave360/zdl-jvm/badges/jacoco.svg)](https://github.com/ZenWave360/zdl-jvm/actions/workflows/build.yml)
[![branches coverage](https://raw.githubusercontent.com/ZenWave360/zdl-jvm/badges/branches.svg)](https://github.com/ZenWave360/zdl-jvm/actions/workflows/build.yml)
[![GitHub](https://img.shields.io/github/license/ZenWave360/zdl-jvm)](https://github.com/ZenWave360/zdl-jvm/blob/main/LICENSE)

ZDL is a Domain Specific Language (DSL) for Event-Driven Architectures. With Domain Driven Design principles built-in, it can be used to map the discoveries of an [EventStorming](https://www.eventstorming.com/) session.

- Designed to be developer friendly, with a simple and compact syntax.
- It retains the language of the business process discoveries found in Event-Storming sessions.
- And because it's machine-friendly it can be parsed and converted into multiple software artifacts like:
- documentation, drawings, API definitions like OpenAPI and AsyncAPI v2/v3 and multiple backend implementations and its tests.

Further reading:
- [ZDL Domain Language Reference](https://zenwave360.github.io/docs/event-driven-design/zenwave-domain-language)
- [ZenWave SDK](https://zenwave360.github.io/zenwave-sdk/)
- [ZenWave Editor for IntelliJ](https://zenwave360.github.io/plugin/)

![EventStorming ZDL](docs/EvenStorming-ZDL.png)