Skip to content

x-name15/moodle-local_integrationhub

Repository files navigation

Integration Hub for Moodle™

A centralized integration layer for Moodle™ that allows connecting platform events to external services without writing boilerplate code.

Moodle PHP License Published on Moodle.org


Officially published on Moodle.org: local_integrationhub 🎉

Overview

Integration Hub for Moodle™ (MIH) is a local plugin that provides a centralized gateway for external integrations.
It manages HTTP communication, authentication, retries, and error logging from a single dashboard.

This plugin is not affiliated with or endorsed by Moodle Pty Ltd.

Key Features:

  • Service Gateway: Reusable API for plugins.
  • Event Bridge: Map Moodle events to external webhooks without code.
  • Resilience: Circuit breakers, exponential backoff retries, and Dead Letter Queue (DLQ).
  • Monitoring: Real-time dashboard for success rates and latency.
  • Transports: REST, AMQP (RabbitMQ), SOAP.

📚 Documentation

Important

All project specifications, architecture diagrams, and API references are hosted at:

Language Status Link
English 🇬🇧 Documentation Read here
Español 🇪🇸 Documentación Leer aquí

Quick Start

Installation

# 1. Install plugin
cp -r integrationhub /path/to/moodle/local/

# 2. Upgrade Moodle
php admin/cli/upgrade.php

External Dependencies

This dependency is not bundled with the plugin and must be installed manually:

cd local/integrationhub
composer install --no-dev

Note

If Composer dependencies are not installed, AMQP transport will be unavailable but the plugin will continue to function for REST and SOAP integrations.


🗺️ Future Roadmap

The full roadmap is available here: https://mih.mrjacket.dev/docs/roadmap

Upcoming updates:

  • Webhook Firewall
  • Webhook Ingress (receive events from external services)

License: GPL v3

Made with ❤️ by Mr Jacket