Skip to main content

UniSim

UniSim provides backend-neutral physics contracts and optional engine adapters. The PyPI distribution is unisim-core; the Python import namespace is unisim.

This repository is the extraction target for UniLab's unified physics backend. The 0.1.x line contains the public contract, seven production backend adapters, a deterministic fake backend, a lightweight conformance helper, and benchmark API/result-schema reservations. It does not run benchmark workloads or include engine SDKs in the base install.

Development

make sync       # locked environment plus the MuJoCo test extra
make check      # Ruff + pytest
make package    # source distribution and wheel for local inspection

The TestPyPI and automated production release procedure is documented in docs/release.md.

Engine adapters are optional extras and are loaded lazily. The MuJoCo adapter is available as unisim.MuJoCoBackend after installing the mujoco extra (or through unisim.create_backend("mujoco", scene=...)). Each adapter must document its supported Python/platform/runtime matrix and pass the conformance helper before it is published.

Motrix is available through unisim.MotrixBackend after installing the motrix extra. Drake, MJWarp and Genesis use the same lazy optional boundary; IsaacGym and IsaacSim are external-worker adapters because their vendor SDKs are not redistributable PyPI dependencies. All seven identities are exposed by the factory and fail closed with actionable diagnostics when their runtime is absent. Every adapter exposes the same state/control/reset contract; engine-native model and data objects remain private.

External worker roots can be configured with UNISIM_ISAACGYM_HOME, UNISIM_ISAACGYM_PYTHON, UNISIM_ISAACSIM_HOME, and UNISIM_ISAACSIM_PYTHON. The package also accepts the former UNILAB_* spellings as a migration fallback.

Relationship to UniLab

UniLab retains Hydra configuration, task/env/manager lifecycle, robot assets, RL training, checkpoint, and sim2sim ownership. UniSim must not import UniLab. The final state has one implementation owned by this repository; UniLab only assembles task-owned scene/configuration inputs.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unisim_core-0.1.14.tar.gz (187.1 kB view details)

Uploaded Source

File details

Details for the file unisim_core-0.1.14.tar.gz.

File metadata

  • Download URL: unisim_core-0.1.14.tar.gz
  • Upload date:
  • Size: 187.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for unisim_core-0.1.14.tar.gz
Algorithm Hash digest
SHA256 6290c2d1b440921ebd8a51bfd7160677df4897a0d26614d005ad1d7df95df23b
MD5 737f25c0784447d7914e035a531ea2dc
BLAKE2b-256 6ec9f3a8b96037e41d7af6cf7d676650eff0f5078133937c02617e26f171cfbf

See more details on using hashes here.

Provenance

The following attestation bundles were made for unisim_core-0.1.14.tar.gz:

Publisher: release.yml on unilabsim/unisim

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.14 This release

1 file

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page