Discover, Explore and Document your Event Driven Architectures.
- 🔎 Discover Events
- 📃 Document Events
- 📊 Visualise Events & Services
- ⭐ Supports any Event Schema
- 🗂️ Code Examples (Any Language)
- 🗄️ Event and Schema Versioning
- 📑 Event changelogs
- ⭐ And much more...
All powered by markdown
Event-Driven Architectures allow us to scale, be agile and keen our architecture decoupled.
When starting off with Event-Driven Architectures we spend time discovering our core business events, writing code to match them and maintain versions going forward.
Over a period of time more events are added to our domain, requirements change, and our architecture scales.
As more events, services and schemas get added to our domains they can be hard for our teams to discover and explore.
Discovery and documentation is a key part to scalable Event Driven Architecture and EventCatalog helps you maintain documentation for them.
EventCatalog was built to help document your EDA and help your teams explore and understand events, schemas and much more.
Read more on these blogposts:
Think of EventCatalog as a website generator that allows you to document your event architectures with markdown files.
Markdown files are quite a popular tool to help us document content, so why not use markdown files to document our events, services and schemas?
EventCatalog is focused on discovery and documentation and allows you to:
- Document Events/Schemas/Code Examples and more...
- Visually shows relationships between upstream/downstream services using your Events
- Allows you to version your documentation and supports changelogs
- Add owners to events and services so your teams know who owns which parts of your domain
- And much more...
EventCatalog is technology agnostic, which means you can integrate the Catalog with any EDA technology of your choice and any schema format.
EventCatalog supports a Plugin Architecture which will let you generate documentation from your systems.
You can read more on how it works on the website
You should be able to get setup within minutes if you head over to our documentation to get started 👇
➡️ Get Started
Or run this command to build a new catalog
npx @eventcatalog/create-eventcatalog@latest my-catalog
Here is an example of a Retail system using events and services. Everything you see is driven by markdown files
You can see the markdown files that generated the website in the GitHub repo under examples.
If you have any questions, features or issues please raise any issue or pull requests you like. We will try my best to get back to you.
Thanks goes to these wonderful people (emoji key):
David Boyne 💻 🖋 🎨 💡 🤔 📖 |
Benjamin Otto 💻 🤔 📖 🐛 |
Tiago Oliveira 📖 🐛 |
Jay McGuinness 📖 |
David Khourshid 📖 |
thim81 🤔 🐛 💻 |
Muthu 🐛 |
Dan Tavelli 📖 |
steppi91 📖 |
Donald Pipowitch 🐛 💻 |
Ken 📖 |
Rodolfo Toro 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!
If you like what you see, feel free to sponsor the project.
MIT.