Skip to main content

Module project

Module project 

Source
Expand description

Project configuration types

Types for loading and managing mecha10.json project configuration files.

Structs§

ActuatorConfig
BehaviorsConfig
Behavior tree configuration controlling autonomous robot behavior execution.
DockerServicesConfig
Docker services configuration for project-level Docker Compose management
EnvironmentConfig
Configuration for a specific environment
EnvironmentsConfig
Per-environment configuration (dev, staging, prod), with the active environment selected via the MECHA10_ENV environment variable or --env flag.
JointLimitConfig
A single joint’s angle limits, keyed by the actuator node’s joint_id in mecha10.json.
LocomotionLimitsConfig
Motion limits for a differential-drive (or similar) locomotion base.
LoggingConfig
Logging configuration for a single environment, controlling whether node logs are written to local disk. Remote/network log shipping is independent of this setting.
NodeSpec
Parsed node specification from namespaced string format (e.g. @mecha10/listener for a framework node, my-custom for a project node, @someorg/cool-node for a future registry node). The legacy @local/* prefix is no longer supported.
NodesConfig
Map of node identifiers (e.g. @mecha10/listener, my-custom) to their pinned versions.
ProjectConfig
ProjectSimulationConfig
Project-level simulation settings, distinct from the runtime simulation config used during execution.
RobotConfig
TargetEntry
A single target’s configuration: which nodes run on it, and (for robot/remote/rl) which Rust target triple(s) mecha10 build compiles for.
TargetsConfig
Target execution configuration: where nodes run (locally, in simulation, on the robot, or remotely), and, for robot/remote/rl, which Rust target triple(s) builds compile for.
TurnConfig
Resolved TURN server config: relay URL + credentials for a TURN entry in a WebRTC ICE server list. Standalone since mecha10-cli-core doesn’t depend on mecha10-video.

Enums§

NodeRef
A single entry in a target’s node list, either a plain node identifier or a named instance for a node that needs to run as more than one instance under the same target.
NodeSource
Node source type based on namespace prefix
NodeTarget
Target type for node execution

Functions§

is_local_project_node
Whether name is declared as a local project node (NodeSource::Project) according to the mecha10.json at config_path. Never errors: a missing/unparsable config resolves to false.
load_project_config
Load full project config from mecha10.json
load_robot_id
Load robot_id from mecha10.json
reconcile_video_streamer_camera_id
Rewrites video-streamer’s entry in every target’s nodes array to carry the right camera_id, or back to a bare string where no override applies. Each target’s camera_id is derived from whichever camera-producing node is also placed there.
turn_config
Resolve TURN server config: an explicit runtime env var wins, then the build-time-baked default. Returns None when neither is present (including empty), so callers can fall through to a runtime API fetch from mecha10-api.