Skip to content
forked from absmach/supermq

Industrial IoT Messaging and Device Management Platform

License

Notifications You must be signed in to change notification settings

ianmuchyri/supermq

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SuperMQ

Planetary event-driven infrastructure

Made with ❤️ by Abstract Machines

Build Status Check License Header Check Generated Files Go Report Card Coverage License Matrix

Introduction 📖

SuperMQ is a distributed, highly scalable, and secure open-source cloud platform for messaging and event-driven architecture (EDA). It is a planetarily distributed, highly scalable, and secure platform that serves as a robust foundation for building advanced real-time and reactive systems.

Why SuperMQ Stands Out 🚀

SuperMQ bridges the gap between various network protocols (HTTP, MQTT, WebSocket, CoAP, and more) to provide a seamless messaging experience. Whether you're working on IoT solutions, real-time data pipelines, or event-driven systems, SuperMQ has you covered. 🌐✨

Key Features 🌟

  • Multi-Protocol Connectivity: HTTP, MQTT, WebSocket, CoAP, and more! 🌉
  • Secure by Design: Mutual TLS (mTLS) with X.509 Certificates, JWT support, and multi-protocol authorization. 🔒
  • Fine-Grained Access Control: Support for ABAC and RBAC policies. 📜
  • Multi-Tenant: Manage multiple domains seamlessly. 🏢
  • Multi-User: Unlimited organizational hierarchies for user management. 👥
  • Application Management: Group and share messaging clients for streamlined operations. 📱
  • Ease of Use: Simple and powerful communication channel management, grouping, and sharing. ✨
  • Personal Access Tokens (PATs): Scoped and revocable tokens for enhanced security. 🔑
  • Observability: Integrated logging and instrumentation with Prometheus and OpenTelemetry. 📈
  • Event Sourcing: Build robust and scalable architectures. ⚡
  • Edge and IoT Ready: Supports MQTT and CoAP protocols for seamless IoT gateway and sensor communication and management. 🌍
  • Developer-Friendly: SDKs, CLI tools, and comprehensive documentation to get you started. 👩‍💻👨‍💻
  • Production-Ready: Container-based deployment using Docker and Kubernetes. 🐳☸️

Installation 🛠️

Clone the repository and start SuperMQ services:

git clone https://github.com/absmach/supermq.git
cd supermq
docker compose -f docker/docker-compose.yml --env-file docker/.env up

Or use the Makefile for a simpler command:

make run

For production deployments, check our Kubernetes guide. ⚙️

Usage 📤📥

Using the CLI:

make cli
./build/supermq-cli status

This command retrieves the status of the SuperMQ server and outputs it to the console.

Using HTTP with Curl:

curl -X GET http://localhost:8080/status

This request fetches the server status over HTTP and provides a JSON response.

See our CLI documentation for more details.

Documentation 📚

The official documentation is hosted at SuperMQ docs page.

Documentation is auto-generated, check out the instructions in the docs repository. If you spot an error or a need for corrections, please let us know - or even better: send us a PR! 💌

Community and Contributing 🤝

Thank you for your interest in SuperMQ and the desire to contribute!

  1. Take a look at our open issues. The good-first-issue label is specifically for issues that are great for getting started.
  2. Checkout the contribution guide to learn more about our style and conventions.
  3. Make your changes compatible to our workflow.

Join our community:

Professional Support 💼

Need help deploying SuperMQ or integrating it into your system? Reach out to Abstract Machines for professional support and guidance.

License 📜

SuperMQ is open-source software licensed under the Apache License 2.0. Contributions are welcome!

Acknowledgments 🙌

Special thanks to the amazing contributors who make SuperMQ possible. Check out the MAINTAINERS file to see the team behind the magic.

Ready to build the future of messaging and event-driven systems? Let's get started! 🚀

About

Industrial IoT Messaging and Device Management Platform

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 98.4%
  • Shell 1.1%
  • Other 0.5%