Skip to content

The problem

ROS (Robot Operating System) is the de facto standard for robot software. But shipping a ROS node means shipping a full ROS environment - build tools, C++ dependencies, and platform-specific compilation. That friction makes rapid prototyping harder and deployment to constrained environments impossible.

Install

pip install metaros

Version

1.0.0

Quickstart

Three files: a broker, a publisher, and a subscriber. No build step, no package manifest, no cmake.

Start the broker

from metaros import Broker

broker = Broker(host='localhost', port=5555)
broker.start()  # Runs until Ctrl+C

Publish messages

from metaros import Publisher
from metaros.messages import std_msgs

pub = Publisher('/chatter', std_msgs.String, broker='localhost:5555')
pub.publish(std_msgs.String(data='Hello, ROS!'))
pub.close()

Subscribe to topics

from metaros import Subscriber
from metaros.messages import std_msgs

def callback(msg):
    print(f"Received: {msg.data}")

sub = Subscriber('/chatter', std_msgs.String, callback, broker='localhost:5555')
sub.spin()  # Blocks and processes messages

Message types

Ships with the core ROS message definitions. Import and use them directly.

std_msgs

String, Int32, Float64, Bool, Header

geometry_msgs

Point, Pose, Twist, Vector3, Quaternion

sensor_msgs

Image, LaserScan, Imu, CameraInfo, PointCloud2

nav_msgs

Odometry, Path, OccupancyGrid

How it works

ZeroMQ for transport, MessagePack for serialization. The broker is a lightweight message router - publishers and subscribers connect to it over TCP, and it handles topic registration and message delivery.

Publishers send (topic, message_type, payload) tuples to the broker.

The broker maintains a topic registry and forwards messages to all subscribers of that topic.

Subscribers receive messages on their registered topics and invoke their callbacks.

No shared memory, no DDS, no C++ bridge. Just sockets and serialization.

Platform support

Linux

Tested on Ubuntu 20.04, 22.04, Arch

macOS

Tested on macOS 12, 13, 14

Windows

Tested on Windows 10, 11

Recognition

Best Capstone Project Award

PES University, Department of Computer Science, 2025

US Patent Application

Filed January 2025 - Pure-Python robotics middleware architecture

Published Survey Paper

CDSR 2025 - Lightweight ROS implementations for resource-constrained systems