> For the complete documentation index, see [llms.txt](https://routemq.cyb0x1.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://routemq.cyb0x1.id/readme.md).

# RouteMQ Framework Documentation

{% hint style="warning" %}
RouteMQ **isn’t production-ready** yet. Use only in test/staging. Known gaps: stability, security hardening, performance tuning, docs. I’ll post updates as we land fixes.
{% endhint %}

<figure><img src="/files/1nKOyGmIdWUhGkUARWLk" alt=""><figcaption></figcaption></figure>

Welcome to the RouteMQ Framework documentation! This guide will help you get started and master all the features of this flexible MQTT routing framework.

## Table of Contents

* [Getting Started](/getting-started.md) - Installation, quick start, and basic setup
* [Core Concepts](/core-concepts.md) - Understanding the framework architecture
* [Configuration](/configuration.md) - Environment variables and setup options
* [Routing](/routing.md) - Route definition, parameters, and organization
* [Controllers](/controllers.md) - Creating and organizing business logic
* [Middleware](/middleware.md) - Request processing and middleware chains
* [Queue System](/queue.md) - Background task processing and pluggable queue drivers
* [Redis Integration](/redis.md) - Caching, sessions, and distributed features
* [Rate Limiting](/rate-limiting.md) - Advanced rate limiting strategies
* [Database](/database.md) - Relational database integration and models
* [Testing](/testing.md) - Writing and running tests
* [Deployment](/deployment.md) - Docker, production setup, and scaling
* [Monitoring](/monitoring.md) - Metrics, health checks, and debugging
* [Security](/security.md) - Vulnerability reporting and security controls
* [Release Conformance](/release-conformance.md) - Release evidence and external checks
* [API Reference](/api-reference.md) - Complete API documentation
* [Examples](/examples.md) - Practical examples and use cases
* [Troubleshooting](/troubleshooting.md) - Common issues and solutions

## Quick Links

* [Installation Guide](/getting-started/installation.md)
* [Your First Route](/getting-started/first-route.md)
* [Configuration Reference](/configuration/environment-variables.md)
* [Queue Drivers](/queue/drivers.md)
* [Integration Tests](/testing/integration-tests.md)
* [Security Policy](https://github.com/ardzz/RouteMQ/blob/master/SECURITY.md)
* [Release Conformance](/release-conformance.md)
* [Best Practices](/best-practices.md)
* [FAQ](/faq.md)

## About RouteMQ

RouteMQ is a flexible MQTT routing framework with middleware support, dynamic router loading, Redis integration, and horizontal scaling capabilities, inspired by web frameworks.

### Key Features

* **Dynamic Router Loading**: Automatically discover and load routes from multiple files
* **Route-based MQTT topic handling**: Define routes using a clean, expressive syntax
* **Middleware support**: Process messages through middleware chains
* **Parameter extraction**: Extract variables from MQTT topics using Laravel-style syntax
* **Shared Subscriptions**: Horizontal scaling with worker processes for high-throughput routes
* **Redis Integration**: Optional Redis support for distributed caching and rate limiting
* **Advanced Rate Limiting**: Multiple rate limiting strategies with Redis backend
* **Optional relational database integration**: Use MySQL or PostgreSQL when your app needs persistent models or database queues
* **Group-based routing**: Group routes with shared prefixes and middleware
* **Context manager for route groups**: Use Python's `with` statement for cleaner route definitions
* **Environment-based configuration**: Flexible configuration through .env files
* **Comprehensive logging**: Built-in logging with configurable levels
