A gateway that enables reactive, event-driven communication between frontend clients and stateless microservices.
RIG (Reactive Interaction Gateway) is an open-source gateway that facilitates reactive, event-driven communication between frontend applications and backend microservices. It solves the problem of building low-latency, interactive user experiences by eliminating frontend polling and supporting various synchronous and asynchronous request patterns. By acting as a middleware layer, it decouples clients from backend complexity while maintaining statelessness.
Developers and architects building modern web applications with microservices backends who need real-time updates, flexible client-server communication patterns, and a lightweight integration layer.
RIG offers a non-invasive, standards-based approach that doesn't require embedding SDKs into applications, making it easy to adopt and replace. Its support for multiple message brokers and communication patterns provides flexibility without locking users into specific technologies.
Create low-latency, interactive user experiences for stateless microservices.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Forwards backend events from brokers like Kafka to subscribed clients in real-time, making frontends reactive without constant polling, as highlighted in the README's event forwarding feature.
Supports synchronous, asynchronous, and hybrid request-response modes, allowing adaptation to various microservice communication needs without locking into a single approach.
Built on open standards with no required SDKs, ensuring it doesn't leak into application code and remains easy to adopt or replace, per the philosophy section.
Includes out-of-the-box capabilities for production use, though specifics are documented externally, reducing the need for custom implementations.
Relies heavily on external systems like Kafka or NATS for event forwarding, adding infrastructure complexity and potential points of failure.
Critical setup and feature details are linked to external documentation, which can hinder quick onboarding and troubleshooting compared to all-in-one READMEs.
Only supports specific message brokers (Kafka, NATS, Kinesis), potentially requiring workarounds or additional tools for teams using other systems like RabbitMQ or Redis.