Preflight validation
Check schemas, references, capabilities, and resource integrity before the backend starts.
General simulation development framework
FastSim composes configuration, registries, scenarios, plugins, and UniRoboSim providers into one deterministic run that can be validated and locked before physics starts.
Enter the same compiled application through configuration, Python, plugins, or services.
schema: fastsim/2
name: quickstart
backend: pybullet
runtime:
launch_profile: headless
physics_hz: 60
control_hz: 30
seed: 7
scenario:
scene:
objects:
cube:
use: object://fastsim/quickstart-cube
pose:
xyz_m: [0.0, 0.0, 0.5]
schema: fastsim-project/1
installed_packages: false
registries:
- name: quickstart
path: components/index.yaml
schema: fastsim-registry-index/1
components:
object://fastsim/quickstart-cube:
stable: 1.0.0
releases:
1.0.0:
manifest: cube.yaml
sha256: 97ad65f0a045ae0d6bf8b3d70e370f65b738c394078ccd178f32ce8f23a6932f
schema: fastsim-component/1
id: object://fastsim/quickstart-cube
version: 1.0.0
kind: object
variants:
pybullet:
resources:
model:
uri: ../assets/cube.urdf
format: model/vnd.urdf+xml
role: simulation
Resolve, validate, and lock Run, Project, Registry, and Lock before launch.
Check schemas, references, capabilities, and resource integrity before the backend starts.
Trace every effective value to defaults, Project, Run, or a command-line override.
ExecutionPlan and Run Lock freeze resolution; run outputs publish atomically.
Declare backend, runtime policy, Scenario, and plugin selection.
Constrain registries, trust, network, and cache boundaries.
Publish resolvable components with stable identities and version constraints.
Compose Scene, behavior, evaluation declarations, and plugin inputs.
Freeze components, resources, compiled-plan digests, and full provenance so the same input can be inspected item by item.
Use visible, headless, or headless-physics to state how the provider starts and advances.
Select data, control, debugging, remote service, and agent-interface capabilities from static manifests.
Stage and validate integrity before atomically publishing verifiable artifacts for offline consumers.
Plugins declare capabilities through static manifests and receive only scoped services allowed by the compiled plan.
EXTENSIBLE CORE
Packages declare identity, version, roles, and services through static manifests before entering Registry and Lock; Plugin Host creates only instances explicitly selected by the compiled plan.
Inspect identity, version, roles, services, Scenario inputs, resources, and provider requirements before importing plugin code, rejecting missing dependencies and capability conflicts during compilation.
Grant Scene, Geometry, Control, and Output with least authority per instance, generation, and binding, reclaim it with the lifecycle, and deny undeclared native provider objects.
Official capability packages and extension points
Official plugins provide Mission, recording and replay, models, teleoperation, debugging, services, and agent interfaces.
Execute ordered Missions across navigation, arm motion, and attachment actions.
UniRoboSim stabilizes application interfaces while preserving real backend differences.
Run, Registry, Scenario, and plugins depend only on public UniRoboSim capabilities, never native backend objects.
Provider · Session · World · Scene · State · Sensor · Physical Control
Simulation providers
Choose a platform and Provider to generate one matching install, verification, and first-run flow.