Roboticks SDK
The Roboticks SDK is a modern C++17 framework for building modular robotics applications with distributed messaging, structured logging, and lifecycle management.Key Features
Modular Architecture
Build applications as composable modules with well-defined interfaces
Auto Code Generation
YAML configurations auto-generate C++ boilerplate code
Distributed Messaging
Pub/sub messaging with QoS support
Lifecycle Management
Built-in task lifecycle hooks for clean startup and shutdown
Core Packages
| Package | Description |
|---|---|
roboticks-runtime | Process lifecycle management and execution |
roboticks-messaging | Distributed pub/sub messaging with QoS |
roboticks-logging | Structured logging with file and console sinks |
roboticks-task | Task-based execution model with lifecycle hooks |
roboticks-module | Module system for auto-registration |
roboticks-sessions | Session management for robot instances |
roboticks-fleet | Fleet-wide coordination |
Project Structure
Quick Start
Convention Over Configuration
The SDK uses naming conventions to minimize boilerplate:| Component | Convention | Example |
|---|---|---|
| Module Directory | modules/{ModuleName}/ | modules/HelloWorldModule/ |
| Config File | config/{Name}.yaml | config/HelloWorld.yaml |
| Task Files | src/{Name}Task.{hpp,cpp} | src/HelloWorldTask.cpp |
| Generated Code | build/generated/{Name}Task.generated.hpp | Auto-created |