MCPcopy Index your code
hub / github.com/ZettaScaleLabs/hiroz

github.com/ZettaScaleLabs/hiroz @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
4,297 symbols 14,283 edges 362 files 1,307 documented · 30%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Hiroz

High-performance Interoperable Robotics on Zenoh

Built by the Zenoh team at ZettaScale


Overview

Hiroz is a Zenoh-native ROS 2 stack that:

  • Provides a pure-Rust ROS 2 implementation built directly on Zenoh
  • Preserves portability for RCL-C/CPP/Py-based applications
  • Delivers optimized performance for Rust users
  • Interoperates seamlessly with Zenoh RMW-based ROS 2

ROS 2 without ROS. Full compatibility. Zero ROS package dependencies.

Hiroz Architecture

Status

Hiroz is experimental software. It is tested with ROS 2 Jazzy, Humble, Kilted, and Lyrical. We make no guarantees with respect to other official distributions.

Documentation

Read the Book for comprehensive documentation including:

  • Installation and build instructions
  • Examples and tutorials
  • API reference
  • Feature flags and configuration
  • Contributing guidelines

Local Development: mdbook serve book

License

View license

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for details.

Extension points exported contracts — how you extend this code

CdrSerializedSize (Interface)
Size in bytes of the CDR-serialized form, given the current stream alignment position. [53 implementers]
crates/hiroz-cdr/src/traits.rs
SizeEstimation (Interface)
Accurate size estimation for ROS message serialization to SHM. This module provides the trait definition for size estim [12 …
crates/hiroz-msgs/src/size_estimation.rs
MessageTypeInfo (Interface)
Trait for ROS messages that provides message metadata This trait supports both compile-time (static) and runtime (dynami [12 …
crates/hiroz/src/ros_msg.rs
Message (Interface)
Message interface (compatible with hiroz.Message) [17 implementers]
crates/hiroz-go/testdata/add_two_ints_srv.go
IntoPyErr (Interface)
Trait for converting Rust errors to Python exceptions [3 implementers]
crates/hiroz-py/src/error.rs
Waitable (Interface)
(no doc) [4 implementers]
crates/rmw-zenoh-rs/src/traits.rs
DynKeyExprFormatter (Interface)
Object-safe companion to [`KeyExprFormatter`] for runtime-provided formats. Implement this trait to supply a custom wir [1 …
crates/hiroz-protocol/src/format/mod.rs
ResolvedMessageExt (Interface)
Extension trait for ResolvedMessage to get TypeDescription [1 implementers]
crates/hiroz-codegen/src/resolver.rs

Core symbols most depended-on inside this repo

clone
called by 723
crates/hiroz/src/action/server.rs
build
called by 406
crates/hiroz/src/shm.rs
P
called by 352
crates/hiroz-codegen-go/generator.go
field
called by 341
crates/hiroz/src/dynamic/schema.rs
iter
called by 231
crates/hiroz/src/dynamic/message.rs
build
called by 221
crates/hiroz-py/src/node.rs
as_ref
called by 156
crates/rmw-zenoh-rs/src/type_support.rs
push
called by 132
crates/hiroz-cdr/src/buffer.rs

Shape

Function 1,839
Method 1,413
Class 850
Struct 71
Enum 69
Interface 44
TypeAlias 8
FuncType 3

Languages

Rust80%
Go12%
Python7%
C++1%
TypeScript1%
C1%

Modules by API surface

crates/rmw-zenoh-rs/bindings.rs134 symbols
crates/rmw-zenoh-rs/src/bindings.rs89 symbols
crates/rmw-zenoh-rs/src/rmw.rs70 symbols
crates/hiroz/src/action/server.rs65 symbols
crates/hiroz/src/node.rs59 symbols
crates/hiroz/src/time.rs57 symbols
crates/hiroz/src/msg.rs54 symbols
crates/hiroz-go/hiroz/action.go52 symbols
crates/hiroz/src/pubsub.rs47 symbols
crates/hiroz/src/service.rs46 symbols
crates/hiroz-cdr/src/primitives.rs45 symbols
crates/hiroz-cdr/src/deserializer.rs45 symbols

For agents

$ claude mcp add hiroz \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact