Skip to content

RyanAngelo/IronBabel

Repository files navigation

Iron Babel

IronBabel is a protocol bridge, not just an API gateway. It connects HTTP APIs to gRPC, GraphQL, WebSockets, MQTT, AMQP/RabbitMQ, and ZeroMQ in one lightweight runtime.

Features

  • Protocol translation between:
    • REST/HTTP ↔ GraphQL
    • REST/HTTP ↔ gRPC
    • HTTP ↔ AMQP publish/consumer webhook flows
    • WebSockets ↔ HTTP/SSE
    • WebSockets ↔ REST polling
    • HTTP ↔ MQTT publish/webhook flows
  • Automatic schema discovery and generation
  • Request/response transformation
  • Developer-friendly configuration
  • Comprehensive monitoring and metrics via built-in admin dashboard
  • Advanced features like rate limiting and circuit breaking

Monitoring Dashboard

IronBabel Monitoring Dashboard

The built-in admin dashboard is available at http://<host>:<port>/admin/ and provides real-time request metrics, latency percentiles, error rates, per-route stats, and a draft configuration editor with transport templates for common route and listener setups.

Project Structure

The project is organized into several key components:

  • config/: Configuration management
  • core/: Core gateway functionality
  • gateway/: Protocol-specific gateway implementations
  • protocols/: Individual protocol implementations
  • schema/: Schema management and generation
  • transform/: Data transformation utilities
  • utils/: Common utilities and helpers

Getting Started

  1. Ensure you have Rust installed (version 1.75 or later)
  2. Clone the repository
  3. Build the project:
    cargo build
  4. Run tests:
    cargo test

Configuration

Configuration can be provided through:

  • YAML/TOML files
  • Environment variables
  • Command-line arguments

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Cross-protocol API gateway

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors