Getting Started with Rust
Rust is the native language for HORUS. You get direct access to the full API — zero-copy shared memory, real-time scheduling, compile-time safety, and maximum performance.
Your Learning Path
Step 1: Install HORUS
curl -fsSL https://raw.githubusercontent.com/softmata/horus/release/install.sh | bash
See Installation for platform-specific instructions and troubleshooting.
Step 2: Build Your First App
Follow the Quick Start — build a publisher and subscriber in 10 minutes.
Step 3: Build Something Real
Building Your Second Application — a 3-node sensor pipeline with filtering and display.
Step 4: Learn the Concepts
- Nodes: The Building Blocks — how nodes work
- Topics: How Nodes Talk — pub/sub communication
- Scheduler: Running Your Nodes — execution model
- Execution Classes — Rt, Compute, Event, AsyncIo, BestEffort
Step 5: Go Deeper
- Tutorials — step-by-step guides (IMU sensor, motor controller, full robot integration)
- Recipes — copy-paste patterns for common tasks
- Rust API Reference — complete method reference
Why Rust for HORUS?
- Zero-copy IPC — shared memory topics with no serialization overhead
- Compile-time safety — the borrow checker catches data races before they reach your robot
- Real-time capable — dedicated threads with SCHED_FIFO, budget enforcement, deadline monitoring
- Full API access — every HORUS feature is available in Rust first
node!macro — write nodes in 5 lines instead of 30
Common Mistakes
New to HORUS? Check Common Mistakes before you get stuck.
Need Help?
- Troubleshooting — fix installation and runtime errors
- Choosing a Language — not sure if Rust is right for your project?