finds.dev

MRPT/mrpt

The Mobile Robot Programming Toolkit (MRPT)

View on GitHubHomepage ↗

★ 2,169C++BSD-3-Clauseupdated Oct 2026

// the take

MRPT is a two-decade-old C++ framework for mobile robotics covering SLAM, probabilistic state estimation, mapping, and sensor I/O, with Python bindings and ROS2 packaging. It's aimed at robotics researchers and engineers who need battle-tested implementations of particle filters, pose-graph SLAM, and occupancy grids rather than rolling their own.

The SLAM and probabilistic stack (RBPF, Monte Carlo localization, pose-graph optimization) is the real deal — this isn't a toy implementation, it's been used in published research and production robots for 20 years. ROS2 packaging is current and spans five distros (Humble through Rolling) with per-package binary build matrices, so you're not stuck patching together an unofficial port. The module split in 3.0 (mrpt_core, mrpt_io, mrpt_serialization, etc. via colcon) means you can pull in just the pieces you need instead of linking the entire toolkit.

The README is almost entirely CI badge tables — five ROS2 distros times several packages times architectures — which buries any actual explanation of the API or how to get started outside the ROS2 install path. The codebase still carries a lot of pre-3.0 weight: wxWidgets GUI apps with CodeBlocks .cbp project files and XPM icon resources sit next to the modernized core, so you'll hit inconsistent tooling and build systems depending on which corner you touch. With ~15+ separate module libraries plus apps and 3rdparty vendored dependencies (googletest, libfreenect, rplidar_sdk as submodules), the dependency surface and build complexity are nontrivial — this is not a drop-in single-header library, expect a real afternoon getting it built outside of apt/ROS.

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

// at a glance

Stars
2,169
Forks
660
Language
C++
License
BSD-3-Clause
Last commit
19 Oct 2026

// nearby

If mrpt isn't quite it.

All repos →