GraphQL Eventbus
Power your event architecture using GraphQL.
Schema Driven
Define your events and their payloads in a GraphQL schema. Use GraphQL documents to consume your events. If you love GraphQL, you will fall in love with this library.
Message Broker agnostic
GraphQL Eventbus lets you use any message broker you want: RabbitMQ, Kafka, NATS, Google PubSub. It just provides an abstraction layer on top your broker using GraphQL SDL.
Code Generation
We provide GraphQL Codegen plugin to generate code for typescript. Never publish or consume events without type safety.
Schema Evolution
Since all the event consumers explicitly specify the fields they want to consume for each event, you can remove or deprecate fields without breaking any event consumers.
Plugins
We provide plugins for logging and monitoring. One line of code and you get prometheus metrics for all the events published and consumed by your services. You can also build your custom plugins.
Testing utilities
The library comes with utilities to easily sample payload for your events and test your event handlers.