explaingit

dora-rs/dora

Analysis updated 2026-07-03

3,754RustAudience · developerComplexity · 3/5LicenseSetup · moderate

TLDR

A fast Rust framework for robotics and AI pipelines that connects nodes (camera, model, motor controller) via a YAML dataflow graph, claiming 10-17x faster performance than ROS2.

Mindmap

mindmap
  root((dora))
    What it does
      Robotics pipelines
      Real-time dataflows
      Multi-node AI apps
    How it works
      YAML graph config
      Shared memory passing
      Apache Arrow format
    Features
      Multi-language nodes
      Live reload
      Distributed deploy
      ROS2 bridge
    Tech Stack
      Rust
      Python
      Apache Arrow
    Audience
      Robotics engineers
      AI systems devs
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a real-time robot perception pipeline connecting a camera node, YOLO detection node, and motor command node using a YAML config.

USE CASE 2

Replace a slow ROS2 Python pipeline with Dora for faster data passing between AI model inference nodes.

USE CASE 3

Deploy a multi-node robotics application across several machines over SSH using a single Dora CLI command.

USE CASE 4

Prototype a robotics AI system mixing Python and Rust nodes, reloading Python logic live without restarting the app.

What is it built with?

RustPythonCC++Apache ArrowZenoh

How does it compare?

dora-rs/doradeuxfleurs-org/garagefindomain/findomain
Stars3,7543,7673,736
LanguageRustRustRust
Setup difficultymoderatehardmoderate
Complexity3/54/53/5
Audiencedeveloperops devopsops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Needs Rust toolchain for Rust nodes, available via pip for Python nodes, ROS2 bridge requires a ROS2 install.

Apache 2.0, free for any use including commercial, keep the license notice.

In plain English

Dora is a Rust framework for building real-time robotics and AI applications. It is designed around the concept of dataflows: you describe your application as a directed graph of nodes, where each node does a specific job (reading a camera, running a detection model, sending motor commands), and Dora handles passing data between them efficiently. This graph is written in a YAML file, making it easy to visualize and reconfigure the pipeline without changing code. Performance is a central focus. The framework claims to be 10 to 17 times faster than the equivalent Python setup in ROS2, which is the standard middleware used in the robotics industry. It achieves this by using shared memory to pass large data between nodes on the same machine, skipping unnecessary copying, and using Apache Arrow as its internal data format, which avoids serialization overhead. Nodes running on different machines communicate automatically over a network protocol called Zenoh. Developing with Dora does not lock you into a single language. Nodes can be written in Rust, Python, C, or C++, and you can mix languages freely in one dataflow. Python nodes can be reloaded live while the application is running, which speeds up iteration. The framework also ships with a library of ready-made nodes for common robotics tasks: cameras, object detection with YOLO, large language models, and text-to-speech. The single command-line tool covers the full development cycle: running locally, deploying to a cluster of machines over SSH, inspecting live data streams, recording and replaying sessions for testing, and monitoring per-node CPU and memory usage across all machines in a terminal dashboard. It also includes a bridge for working with ROS2, the existing industry standard, so Dora nodes and ROS2 nodes can exchange messages. For production use, Dora supports per-node restart policies with backoff, dynamic addition and removal of nodes from a running system, optional soft real-time scheduling, and distributed tracing through OpenTelemetry. The framework is available via the Rust package registry and Python's pip, and installers are provided for macOS, Linux, and Windows.

Copy-paste prompts

Prompt 1
Using dora-rs/dora, write a YAML dataflow config that connects a camera node, a YOLO object detection node, and a result logger node.
Prompt 2
Show me how to write a Python node for dora-rs/dora that receives camera frames and runs an object detection model.
Prompt 3
How do I deploy a Dora dataflow across two machines over SSH using the Dora CLI?
Prompt 4
Explain how dora-rs/dora uses shared memory and Apache Arrow to be faster than a standard ROS2 Python pipeline.

Frequently asked questions

What is dora?

A fast Rust framework for robotics and AI pipelines that connects nodes (camera, model, motor controller) via a YAML dataflow graph, claiming 10-17x faster performance than ROS2.

What language is dora written in?

Mainly Rust. The stack also includes Rust, Python, C.

What license does dora use?

Apache 2.0, free for any use including commercial, keep the license notice.

How hard is dora to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is dora for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub dora-rs on gitmyhub

Verify against the repo before relying on details.