EventCatalog November 2024 update
In this blog post we will dive deeper into features that were released in November, why they were built and how they can help you govern your architectures. At the end of the blog post I will share a personal update and what’s planned for December.
Community, sponsors, and project growth
EventCatalog community continues to grow ❤️, now we have 890 Discord members, 409 new Catalogs have been created in November and over 4,000 catalogs built into production this month.
EventCatalog is on track to hit 1.9k stars in November, and a shout out to Carlos Rodrigues and Omid Eidivandi for their support with the project and helping with issues, and community feedback ❤️.
EventCatalog got a new gold sponsor from OSO and Gravitee continue their sponsorship (thank you!) 🙏. This sponsorship helps my goal towards open source sustainability.
EventCatalog is free to use and open source, if you want to support the project checkout the tiers on GitHub or contact me directly at dave@eventcatalog.dev
, we appreciate any support to help project sustainability ❤️
Introducing EventCatalog Studio
EventCatalog is proving to be a great tool to help companies govern and document their event-driven architecture. It’s great to see the project, usage and the community grow. Although this is great for folks that have event-driven architectures to document, we still feel there is a pain point when designing your event-driven architecture.
We feel there is a gap between design to implementation with event-driven architectures.
Many teams use whiteboards to design and explore their event-driven architecture (in person or virtual). During this process many discussions and ideas are captured but lost. Also there is an increasing effort to go from initial design to implementation. We believe there must be better way.
This is why we are building EventCatalog Studio.
EventCatalog Studio is a visual designer for event-driven architectures. EventCatalog Studio can sync with your local EventCatalog, and provide you with an editing experience, ability to collaborate with your teams, experiment ,and create draft designs to get feedback.
With EventCatalog Studio you can design new architectures, draft new ideas, design and explore your schemas, ask questions about your architecture, and much more. Everything is mapped to your EventCatalog.
EventCatalog Studio let’s you walk away from your white board sessions with something tangible, schemas to get your started and code models to help.
We are aiming to get our MVP out in December 2024, and if this is something you could find useful you can sign up to beta access here.
EventCatalog now supports channels
EventCatalog let’s you document your domains, services and messages (commands, queries and events). One core part missing was the ability to document a channel.
In EventCatalog a channel represents the organization and transmission of messages.
Channels in EventCatalog describe how a messages transport between producers and consumers.
Documenting channels in EventCatalog gives your team deeper understand of how your messages are transmitted between producers and consumers, what broker they use and any other information you may find useful.
As EventCatalog is technology agnostic this means you can document any channel and protocol you like including http, amqp, eventbridge, googlepubsub, kafka, mercure, nats, pulsar, redis, sns, solace, sqs and ws (websockets).
Adding channels to EventCatalog
Channels are resources in EventCatalog that you can define in your /channels
directory.
Any message (event, command or query) can be associated to one or many channels.
When you assign a channel to a message, EventCatalog will render these channels between your messages and services (see demo)
Our plugins for AsyncAPI and Amazon EventBridge have been updated, allowing you to document your channels from your specification files.
If you want to learn more, and get started you can read our getting started with channels guide.
Simulating message flow in the visualizer
You can now simulate messages in the EventCatalog visualizer. This new feature let’s you quickly see what type of events are flowing between your services.
To turn on the feature, use the Visualizer Settings and click Simulate Messages.
This is the first version of message simulation, ideas we have is the ability to define frequency flow in your documentation to help your teams understand how busy messages are, and even connecting this to live systems. If you have any ideas or requests please join Discord and let us know.
Services can now send/receive the same message
Sometimes your service will send and receive the same message, previously in EventCatalog this was not possible, but we are happy to share that EventCatalog now supports this.
In EventCatalog you can document what messages your service sends and receives.
When the service sends and receives the same message, EventCatalog visualiser will now represent this.
---
id: OrderService
... # other service frontmatter
receives:
# id of the message this service receives
- id: PaymentProcessed
sends:
# id of the message this service sends
- id: PaymentProcessed
---
<!-- Markdown contents... -->
To learn how do document your services and messages with EventCatalog, you can read our service guide.
OpenAPI Generator 3.0 is now out
You can automate EventCatalog using your OpenAPI files. This plugin let’s you document services and messages (commands, queries and events) through your OpenAPI files. EventCatalog will keep track of changes, versions and let you add documentation to these messages.
The 3.0 plugin now includes:
- Ability to document events, queries and commands (using the x-eventcatalog-message-type extension)
- Ability to define custom names and ids for your messages (using x-eventcatalog-message-id and x-eventcatalog-message-name)
- By default all messages are now documented as queries (previously commands)
If you and your teams have OpenAPI files, you can use EventCatalog to get discoverability for them. To get started you can read the OpenAPI integration guide.
New support levels added
In November we have been working with companies to help them understand the importance of governance with event-driven architecture and getting them started.
We offer a range of support including internal talks, internal workshops, and hands on catalog builds.
If you are interested in working with us you can reach out on LinkedIn or email at hello@eventcatalog.dev
Want to learn more about event-driven architectures?
We have created free resources for you to dive deeper into event-driven architectures called EDA Visuals. EDA visuals are designs I have made with extra resources. You can view them and download the book for free!
What’s next in December
In December we will be continuing the work for EventCatalog Studio and getting an initial beta version out. If you want to keep up to date and get access you can sign up here.
We will continue to review feature requests and work backwards from the community. If you have any feature requests, ideas or bugs please let us know on Discord.
Towards the end of the month we will be taking time off to recharge and focus on what’s next for 2025. I feel EventCatalog has a huge roadmap and vision ahead and we are only just getting started ❤️.