{"id":13504019,"url":"https://github.com/bytebeamio/rumqtt","last_synced_at":"2025-05-11T11:13:22.653Z","repository":{"id":37394595,"uuid":"215238831","full_name":"bytebeamio/rumqtt","owner":"bytebeamio","description":"The MQTT ecosystem in rust","archived":false,"fork":false,"pushed_at":"2025-04-17T04:54:20.000Z","size":3518,"stargazers_count":1786,"open_issues_count":113,"forks_count":270,"subscribers_count":23,"default_branch":"main","last_synced_at":"2025-04-23T15:59:45.747Z","etag":null,"topics":["asyncio","emqx","hivemq","iot","mqtt","mqtt-ecosystem","rust","tokio"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bytebeamio.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-10-15T07:49:25.000Z","updated_at":"2025-04-23T15:33:41.000Z","dependencies_parsed_at":"2024-01-11T18:09:19.391Z","dependency_job_id":"74e6cf24-ecce-445b-b7d7-23e2bd933d83","html_url":"https://github.com/bytebeamio/rumqtt","commit_stats":{"total_commits":725,"total_committers":94,"mean_commits":7.712765957446808,"dds":0.8110344827586207,"last_synced_commit":"2377e4e2c57bbcbdb1b2d5372556f8b3977b03b5"},"previous_names":["tekjar/rumq"],"tags_count":45,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bytebeamio%2Frumqtt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bytebeamio%2Frumqtt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bytebeamio%2Frumqtt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bytebeamio%2Frumqtt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bytebeamio","download_url":"https://codeload.github.com/bytebeamio/rumqtt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253554098,"owners_count":21926614,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asyncio","emqx","hivemq","iot","mqtt","mqtt-ecosystem","rust","tokio"],"created_at":"2024-07-31T23:00:52.549Z","updated_at":"2025-05-11T11:13:22.635Z","avatar_url":"https://github.com/bytebeamio.png","language":"Rust","funding_links":[],"categories":["Libraries","Rust","库 Libraries"],"sub_categories":["Network programming","网络编程 Network programming"],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg alt=\"rumqtt Logo\" src=\"docs/rumqtt.png\" width=\"60%\" /\u003e\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://github.com/bytebeamio/rumqtt/actions/workflows/ci.yml\"\u003e\n    \u003cimg alt=\"build status\" src=\"https://github.com/bytebeamio/rumqtt/actions/workflows/ci.yml/badge.svg\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://coveralls.io/github/bytebeamio/rumqtt?branch=main\"\u003e\n    \u003cimg src=\"https://coveralls.io/repos/github/bytebeamio/rumqtt/badge.svg?branch=main\" alt=\"Coverage Status\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://discord.gg/mpkSqDg\"\u003e\n    \u003cimg alt=\"Discord chat\" src=\"https://img.shields.io/discord/633193308033646605?style=flat\"\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\u003cbr/\u003e\n\n## What is rumqtt?\n\nrumqtt is an opensource set of libraries written in rust-lang to implement the MQTT standard while striving to be simple, robust and performant.\n\n| Crate | Description | version |\n| -- | -- | -- |\n| [rumqttc](./rumqttc/)| A high level, easy to use mqtt client | [![crates.io page](https://img.shields.io/crates/v/rumqttc.svg)](https://crates.io/crates/rumqttc) |\n| [rumqttd](./rumqttd/) | A high performance, embeddable MQTT broker |[![crates.io page](https://img.shields.io/crates/v/rumqttd.svg)](https://crates.io/crates/rumqttd) |\n\n\n# Contents\n\n* [Installation and Usage](#installation-and-usage)\n    * [rumqttd](#rumqttd)\n        * [Run using docker](#run-using-docker)\n        * [Prebuild binaries](#prebuilt-binaries)\n        * [Install using cargo](#install-using-cargo)\n        * [Install using AUR](#install-using-aur)\n        * [Compile from source](#compile-from-source)\n    * [rumqttc](#rumqttc)\n* [Features](#features)\n    * [rumqttd](#rumqttd-1)\n    * [rumqttc](#rumqttc-1)\n* [Community](#community)\n* [Contributing](#contributing)\n* [License](#license)\n\n# Installation and Usage\n\n## rumqttd\n\n### Run using docker\n\nrumqttd can be used with docker by pulling the image from docker hub as follows:\n```bash\ndocker pull bytebeamio/rumqttd\n```\n\nTo run rumqttd docker image you can simply run:\n```bash\ndocker run -p 1883:1883 -p 1884:1884 -it bytebeamio/rumqttd\n```\n\nOr you can run `rumqttd` with the custom config file by mounting the file and passing it as argument:\n```bash\ndocker run -p 1883:1883 -p 1884:1884 -v /absolute/path/to/rumqttd.toml:/rumqttd.toml -it rumqttd -c /rumqttd.toml\n```\n\n\u003cbr/\u003e\n\n### Prebuilt binaries\n\nFor prebuilt binaries checkout our [releases](https://github.com/bytebeamio/rumqtt/releases), download suitable binary for your system and move it to any directory in your [PATH](https://en.wikipedia.org/wiki/PATH_(variable)).\n\n\u003cbr/\u003e\n\n### Install using cargo\n\n```\ncargo install --git https://github.com/bytebeamio/rumqtt rumqttd\n```\n\ndownload the demo config file\n\n```\ncurl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/bytebeamio/rumqtt/main/rumqttd/rumqttd.toml \u003e rumqttd.toml\n```\n\nand run the broker using\n\n```\nrumqttd --config rumqttd.toml\n```\n\nNote: Make sure to you correct rumqttd.toml file for a specific version of rumqttd\n\n\u003cbr/\u003e\n\n### Install using AUR\n\n```\nparu -S rumqttd-bin\n```\n\nreplace `paru` with whatever AUR helper you are using.\n\nNote: Configuration is found in `/etc/rumqtt/config.toml` and systemd service name `rumqtt.service`\n\n\u003cbr/\u003e\n\n### Compile from source\n\nClone the repo using git clone.\n\n```\ngit clone --depth=1 https://github.com/bytebeamio/rumqtt/\n```\n\nChange directory to that folder and run\n\n```\ncd rumqtt\ncargo run --release --bin rumqttd -- -c rumqttd/rumqttd.toml -vvv\n```\n\n\u003cbr/\u003e\n\nfor more information look at rumqttd's [README](https://github.com/bytebeamio/rumqtt/blob/main/rumqttd/README.md)\n\n## rumqttc\n\nAdd rumqttc to your project using\n\n```\ncargo add rumqttc\n```\n\n\u003cbr/\u003e\n\nfor more information look at rumqttc's [README](https://github.com/bytebeamio/rumqtt/blob/main/rumqttc/README.md)\n\n\n# Features\n\n## \u003ca id=\"rumqttd-1\"\u003e\u003c/a\u003e rumqttd\n\n- [x] MQTT 3.1.1\n- [x] QoS 0 and 1\n- [x] Connection via TLS\n- [x] Retransmission after reconnect\n- [x] Last will\n- [x] Retained messages\n- [x] QoS 2\n- [ ] MQTT 5\n\n\n# \u003ca id=\"rumqttc-1\"\u003e\u003c/a\u003e rumqttc\n\n- [x] MQTT 3.1.1\n- [x] MQTT 5\n\n# Community\n\n- Follow us on [Twitter](https://twitter.com/bytebeamhq)\n- Connect with us on [LinkedIn](https://www.linkedin.com/company/bytebeam/)\n- Chat with us on [Discord](https://discord.gg/mpkSqDg)\n- Read our official [Blog](https://bytebeam.io/blog/)\n\n# Contributing\nPlease follow the [code of conduct](docs/CoC.md) while opening issues to report bugs or before you contribute fixes, also do read our [contributor guide](CONTRIBUTING.md) to get a better idea of what we'd appreciate and what we won't.\n\n# License\n\nThis project is released under The Apache License, Version 2.0 ([LICENSE](./LICENSE) or http://www.apache.org/licenses/LICENSE-2.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbytebeamio%2Frumqtt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbytebeamio%2Frumqtt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbytebeamio%2Frumqtt/lists"}