Rust is for Robotics
List of (awesome) Rust libraries for Robotics. If you know something awesome (or your project), please let me know from here.
ROS
ROS related libraries.
- rosrust - Pure Rust implementation of a ROS client library.
- ros2_rust - Rust bindings for ROS2
- roslibrust - Pure Rust implementation of a rosbridge client.
- r2r - Minimal ROS2 Rust bindings
- rclrust - Yet another ROS2 Rust client
- RustDDS - Rust implementation of Data Distribution Service
- rosbag - Reading rosbag files in pure Rust
- rustros_tf - A rust implementation of the Tf library.
- ros_pointcloud2 - The safe way of using PointCloud2 messages in ROS1 and ROS2.
- optimization-engine - Fast & Accurate Embedded Optimization for next-generation Robotics and Autonomous Systems
AI
- bonsai-bt - A Behavior Tree implementation in Rust
Framework
- copper - Copper is a user-friendly robotics framework designed for creating fast and reliable robots. Copper is to robots what a game engine is to games.
- dora-rs - A fast and simple robotics frameworks for AI.
- OpenRR - Open Rust Robotics
- Zenoh - A high performance and extremely low overhead Pub/Sub/Query protocol. Quickly becoming the protocol of choice for Robot-to-Anything communication.
gRPC
gRPC A high performance, open source universal RPC framework.
- CleanIt - Open-source Autonomy Software in Rust-lang with gRPC for the Roomba series robot vacuum cleaners.
Math and Geometry
Math related libraries for Robotics.
- nalgebra - Linear algebra library for Rust.
- ncollide - 2 and 3-dimensional collision detection library in Rust.
- kdtree - K-dimensional tree in Rust for fast geospatial indexing.
- k - k: Kinematics Library for rust-lang.
- static-math - Safe and fast mathematical operations with static arrays in Rust programming language thinked for robotics
- ndarray - N-dimensional tensor arithmetic library, inspired by python’s NumPy.
Path Planning
Path planning libraries.
- pathfinding - Pathfinding library for rust
- rrt - RRT (Rapidly-exploring Random Tree) library in Rust
- openrr-planner - Collision Avoidance Path Planning in Rust-lang
- rs-opw-kinematics - Analytical inverse and forward kinematics for the 6DOF robots with spherical wrist.
Simulation
Physics simulation for robots
- rapier - 2 and 3-dimensional rigid body physics engine for Rust.
- Rust zmqRemoteApi - A Rust ZeroMQ remote API client for coppeliasim robotics simulator
Visualization
Graphic and visualization for Robotics.
- kiss3d - Keep it simple, stupid 3d graphics engine for Rust.
- urdf-viz - URDF visualizer
- rerun — A logging SDK and visualizer for computer vision and robotics
File Loading
Import/Export various files related with Robotics
- assimp-rs (open-asset-importer) - Rust bindings for the Assimp library.
- mcap - Rust library for reading and writing MCAP log files
- urdf-rs - URDF Loader for Rust
- pcd-ros - Read point cloud data from PCD file format
Device Driver
Robotics releated sensor/motor drivers
- libsweep - Rust wrapper for Scanse Sweep LIDAR libsweep
- freenect-rs - Freenect wrapper for rust
- rplidar-rs - Slamtec RPLIDAR public SDK for Rust
- hls_lfcd_lds_rs - ROBOTIS HLDS HLS-LFCD-LDS SDK for RUST
- dynpick-force-torque-sensor - Wacoh-tech 6-axis force sensor (Dynpick) driver
- leptrino-force-torque-sensor - Leptrino 6-axis force sensor driver
- realsense-rust - RealSense Bindings for Rust