roslibrust
- Software
- Middleware
- Library
An async Rust library for talking to ROS1 and ROS2 systems, built on Tokio, with one trait-based API that works across several transport backends.
Made by RosLibRust.
Source on GitHub: github.com/RosLibRust/roslibrust (opens in a new tab). Facts read at commit a798361 (opens in a new tab).
Licenses
- Code
- MIT (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (MIT) at commit a798361 (opens in a new tab), on 16 Oct 2026.
- Commercial use
- Yes
What it does
- Provides a single trait-based API so the same behaviour code can run over any supported backend, chosen at compile time.
- Supports native ROS2 via rmw_zenoh, native ROS1 via TCPROS, zenoh, rosbridge_server, and a mock backend for testing.
- Requires no ROS1 or ROS2 installation; message types are generated in pure Rust from .msg and .srv files.
- Roslibrust_codegen and roslibrust_codegen_macro generate Rust message types, usable from a build.rs or a macro.
- Minimum supported Rust version is 1.90.
Written by Robotheca from the project's README (opens in a new tab) at commit a798361.
Getting started
- Difficulty
- Intermediate
- How to start
- The project's website (opens in a new tab)
Maintenance
- Status
- Active: a commit in the last 90 days
- Newest commit
- 25 Sept 2026 on master
- Latest release
- None published on GitHub
Checked on GitHub on 16 Oct 2026.
Links
Robots that can run it
No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.