Skip to main content

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.