Skip to content

boyney123/eventcatalog

Repository files navigation

πŸ“– EventCatalog

Discover, Explore and Document your Event Driven Architectures.

MIT License PRs Welcome

All Contributors

Watch on GitHub Star on GitHub


header

Features: Website generator for Event Driven Architectures, Markdown driven, Document Events/Services/Schemas, Event Versioning, Event/Service Owners, Schema Changelogs, and more...

Read the Docs | Edit the Docs | View Demo


Core Features

  • πŸ”Ž 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

The problem

Event-Driven Architectures allow us to scale, be agile and keep 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:

This solution

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

Getting Started

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

Demo

Here is an example of a Retail system using events and services. Everything you see is driven by markdown files

app.eventcatalog.dev

You can see the markdown files that generated the website in the GitHub repo under examples.

Contributing

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.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

David Boyne
David Boyne

πŸ’» πŸ–‹ 🎨 πŸ’‘ πŸ€” πŸ“–
Benjamin Otto
Benjamin Otto

πŸ’» πŸ€” πŸ“– πŸ›
Tiago Oliveira
Tiago Oliveira

πŸ“– πŸ›
Jay McGuinness
Jay McGuinness

πŸ“–
David Khourshid
David Khourshid

πŸ“–
thim81
thim81

πŸ€” πŸ› πŸ’»
Muthu
Muthu

πŸ›
Dan Tavelli
Dan Tavelli

πŸ“–
steppi91
steppi91

πŸ“–
Donald Pipowitch
Donald Pipowitch

πŸ› πŸ’»
Ken
Ken

πŸ“–
Rodolfo Toro
Rodolfo Toro

πŸ’»
Drew Marsh
Drew Marsh

πŸ’»
Dec Kolakowski
Dec Kolakowski

πŸ’» πŸ“–
Yevhenii Dytyniuk
Yevhenii Dytyniuk

πŸ’»
lcsbltm
lcsbltm

πŸ’»
Matt Martz
Matt Martz

πŸ’»
Michel Grootjans
Michel Grootjans

πŸ’»
Arturo Abruzzini
Arturo Abruzzini

πŸ’»
Ad L'Ecluse
Ad L'Ecluse

πŸ’»
Rafael Renan Pacheco
Rafael Renan Pacheco

πŸ’» πŸ“–
Luis Diego
Luis Diego

πŸ’»
Daniel Ruf
Daniel Ruf

πŸ“–
Fredrik Johansson
Fredrik Johansson

πŸ’»
Naresh Kumar Reddy Gaddam
Naresh Kumar Reddy Gaddam

πŸ’»
Andre Deutmeyer
Andre Deutmeyer

πŸ’»
Pebbz
Pebbz

πŸ’»
Alexander Holbreich
Alexander Holbreich

πŸ“–
JosΓ© Delgado
JosΓ© Delgado

πŸ’»
jlee-spt
jlee-spt

πŸ’»
Kim RejstrΓΆm
Kim RejstrΓΆm

πŸ’»
Christophe Gabard
Christophe Gabard

πŸ’»
Carlo Bertini
Carlo Bertini

πŸ’»
David Regla
David Regla

πŸ’»
Marcio Vinicius
Marcio Vinicius

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!

Sponsor

If you like what you see, feel free to sponsor the project.

License

MIT.