robot_descriptions


Namerobot_descriptions JSON
Version 1.20.0 PyPI version JSON
download
home_pageNone
SummaryImport open source robot description as Python modules.
upload_time2025-07-15 13:32:33
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseNone
keywords robot description urdf mjcf
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Robot descriptions in Python

[![Build](https://img.shields.io/github/actions/workflow/status/robot-descriptions/robot_descriptions.py/test.yml?branch=main)](https://github.com/robot-descriptions/robot_descriptions.py/actions)
[![Coverage](https://coveralls.io/repos/github/robot-descriptions/robot_descriptions.py/badge.svg?branch=main)](https://coveralls.io/github/robot-descriptions/robot_descriptions.py?branch=main)
[![Conda Version](https://img.shields.io/conda/vn/conda-forge/robot_descriptions.svg?color=blue)](https://anaconda.org/conda-forge/robot_descriptions)
[![PyPI version](https://img.shields.io/pypi/v/robot_descriptions?color=blue)](https://pypi.org/project/robot_descriptions/)
[![PyPI downloads](https://img.shields.io/pypi/dm/robot_descriptions?color=blue)](https://pypistats.org/packages/robot_descriptions)
[![Contributing](https://img.shields.io/badge/PRs-welcome-green.svg)](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/CONTRIBUTING.md)

Import open source robot descriptions as Python modules.

Importing a description for the first time automatically downloads and caches files for future imports. Most [Awesome Robot Descriptions](https://github.com/robot-descriptions/awesome-robot-descriptions) are available. All of them load successfully in respectively MuJoCo (MJCF) or Pinocchio, iDynTree, PyBullet and yourdfpy (URDF).

## Installation

### From conda-forge

```console
conda install -c conda-forge robot_descriptions
```

### From PyPI

```console
pip install robot_descriptions
```

## Usage

The library provides `load_robot_description` functions that return an instance of a robot description directly usable in the corresponding software. For example:

```python
from robot_descriptions.loaders.pinocchio import load_robot_description

robot = load_robot_description("upkie_description")
```

Loaders are implemented for the following robotics software:

| Software                                                     | Loader                                   |
|--------------------------------------------------------------|------------------------------------------|
| [iDynTree](https://github.com/robotology/idyntree)           | `robot_descriptions.loaders.idyntree`    |
| [MuJoCo](https://github.com/deepmind/mujoco)                 | `robot_descriptions.loaders.mujoco`      |
| [Pinocchio](https://github.com/stack-of-tasks/pinocchio)     | `robot_descriptions.loaders.pinocchio`   |
| [PyBullet](https://pybullet.org/)                            | `robot_descriptions.loaders.pybullet`    |
| [RoboMeshCat](https://github.com/petrikvladimir/RoboMeshCat) | `robot_descriptions.loaders.robomeshcat` |
| [yourdfpy](https://github.com/clemense/yourdfpy/)            | `robot_descriptions.loaders.yourdfpy`    |

Loading will automatically download the robot description if needed, and cache it to a local directory.

### Show a description

You can display a robot description directly from the command line:

```console
python -m robot_descriptions show_in_meshcat go2_description
```

A `robot_descriptions` alias for `python -m robot_descriptions` is also available.

### Import as submodule

You can also import a robot description directly as a submodule of `robot_descriptions`:

```python
from robot_descriptions import my_robot_description
```

The import will automatically download the robot description if you don't have it already, and cache it to a local directory. The submodule then provides the following paths:

<dl>
    <dt>
        <code>URDF_PATH</code> / <code>MJCF_PATH</code>
    </dt>
    <dd>
        Path to the main URDF/MJCF file of the robot description.
    </dd>
    <dt>
        <code>PACKAGE_PATH</code>
    </dt>
    <dd>
        Path to the root of the robot description package.
    </dd>
    <dt>
        <code>REPOSITORY_PATH</code>
    </dt>
    <dd>
        Path to the working directory of the git repository hosting the robot description.
    </dd>
</dl>

Some robot descriptions include additional fields. For instance, the `iiwa14_description` exports `URDF_PATH_POLYTOPE_COLLISION` with more detailed collision meshes.

## Examples

Loading a robot description:

- [iDynTree](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_idyntree.py)
- [MuJoCo](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_mujoco.py)
- [Pinocchio](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_pinocchio.py)
- [PyBullet](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_pybullet.py)
- [RoboMeshCat](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_robomeshcat.py)
- [yourdfpy](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_yourdfpy.py)

Visualizing a robot description:

- [MeshCat](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_meshcat.py)
- [MuJoCo](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_mujoco.py)
- [PyBullet](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_pybullet.py)
- [RoboMeshCat](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_robomeshcat.py)
- [yourdfpy](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_yourdfpy.py)

## Descriptions

Available robot descriptions ([gallery](https://github.com/robot-descriptions/awesome-robot-descriptions#gallery)) are listed in the following categories:

- [Arms](#arms)
- [Bipeds](#bipeds)
- [Dual arms](#dual-arms)
- [Drones](#drones)
- [Educational](#educational)
- [End effectors](#end-effectors)
- [Humanoids](#humanoids)
- [Mobile manipulators](#mobile-manipulators)
- [Quadrupeds](#quadrupeds)
- [Wheeled](#wheeled)

The DOF column denotes the number of actuated degrees of freedom.

### Arms

| Name                          | Robot                 | Maker                    | Format     | License      |
|-------------------------------|-----------------------|--------------------------|------------|--------------|
| `arx_l5_mj_description`       | L5                    | ARX                      | MJCF       | BSD-3-Clause |
| `edo_description`             | e.DO                  | Comau                    | URDF       | [BSD-3-Clause](https://github.com/ianathompson/eDO_description/blob/17b3f92f834746106d6a4befaab8eeab3ac248e6/LICENSE) |
| `fanuc_m710ic_description`    | M-710iC               | Fanuc                    | URDF       | BSD-3-Clause |
| `fr3_mj_description`          | FR3                   | Franka Robotics          | MJCF       | Apache-2.0   |
| `gen2_description`            | Gen2                  | Kinova                   | URDF       | BSD-3-Clause |
| `gen3_description`            | Gen3                  | Kinova                   | URDF       | MIT          |
| `gen3_lite_description`       | Gen3 Lite             | Kinova                   | URDF       | BSD-3-Clause |
| `gen3_mj_description`         | Gen3                  | Kinova                   | MJCF       | BSD-2-Clause |
| `iiwa14_description`          | iiwa 14               | KUKA                     | URDF       | BSD-3-Clause |
| `iiwa14_mj_description`       | iiwa 14               | KUKA                     | MJCF       | BSD-3-Clause |
| `iiwa7_description`           | iiwa 7                | KUKA                     | URDF       | MIT          |
| `low_cost_robot_arm_mj_description` | Low-cost robot arm | Alexander Koch | MJCF | [Apache-2.0](https://github.com/google-deepmind/mujoco_menagerie/blob/ef4d04fbb7451d30b39c2aff7e49df737bb46815/low_cost_robot_arm/LICENSE) |
| `panda_description`           | Panda                 | Franka Robotics          | URDF       | Apache-2.0   |
| `panda_mj_description`        | Panda                 | Franka Robotics          | MJCF       | Apache-2.0   |
| `piper_description`           | PiPER                 | AgileX                   | URDF       | MIT          |
| `piper_mj_description`        | PiPER                 | AgileX                   | MJCF       | MIT          |
| `poppy_ergo_jr_description`   | Poppy Ergo Jr         | Poppy Project            | URDF       | GPL-3.0      |
| `sawyer_mj_description`       | Sawyer                | Rethink Robotics         | MJCF       | Apache-2.0   |
| `so_arm100_description`       | SO-ARM100             | The Robot Studio         | URDF       | Apache-2.0   |
| `so_arm100_mj_description`    | SO-ARM100             | The Robot Studio         | MJCF       | Apache-2.0   |
| `so_arm101_description`       | SO-ARM101             | The Robot Studio         | URDF       | Apache-2.0   |
| `so_arm101_mj_description`    | SO-ARM101             | The Robot Studio         | MJCF       | Apache-2.0   |
| `ur10_description`            | UR10                  | Universal Robots         | URDF       | Apache-2.0   |
| `ur10e_mj_description`        | UR10e                 | Universal Robots         | MJCF       | BSD-3-Clause |
| `ur3_description`             | UR3                   | Universal Robots         | URDF       | Apache-2.0   |
| `ur5_description`             | UR5                   | Universal Robots         | URDF       | Apache-2.0   |
| `ur5e_mj_description`         | UR5e                  | Universal Robots         | MJCF       | BSD-3-Clause |
| `viper_mj_description`        | ViperX                | Trossen Robotics         | MJCF       | BSD-3-Clause |
| `widow_mj_description`        | WidowX                | Trossen Robotics         | MJCF       | BSD-3-Clause |
| `xarm7_mj_description`        | xArm7                 | UFACTORY                 | MJCF       | BSD-3-Clause |
| `yam_description`             | YAM                   | I2RT Robotics            | URDF       | MIT          |
| `yam_mj_description`          | YAM                   | I2RT Robotics            | MJCF       | MIT          |
| `yam_description`             | YAM                   | I2RT Robotics            | URDF       | MIT          |
| `z1_description`              | Z1                    | UNITREE Robotics         | URDF       | BSD-3-Clause |
| `z1_mj_description`           | Z1                    | UNITREE Robotics         | MJCF       | BSD-3-Clause |

### Bipeds

| Name                          | Robot                 | Maker                    | DOF | Format     |
|-------------------------------|-----------------------|--------------------------|-----|------------|
| `bolt_description`            | Bolt                  | ODRI                     | 6   | URDF       |
| `cassie_description`          | Cassie                | Agility Robotics         | 16  | URDF       |
| `cassie_mj_description`       | Cassie                | Agility Robotics         | 16  | MJCF       |
| `rhea_description`            | Rhea                  | Gabrael Levine           | 7   | URDF       |
| `spryped_description`         | Spryped               | Benjamin Bokser          | 8   | URDF       |
| `upkie_description`           | Upkie                 | Tast's Robots            | 6   | URDF       |

### Dual arms

| Name                          | Robot                 | Maker                    | DOF | Format     |
|-------------------------------|-----------------------|--------------------------|-----|------------|
| `aloha_mj_description`        | Aloha 2               | Trossen Robotics         | 14  | MJCF       |
| `baxter_description`          | Baxter                | Rethink Robotics         | 15  | URDF       |
| `nextage_description`         | NEXTAGE               | Kawada Robotics          | 15  | URDF       |
| `poppy_torso_description`     | Poppy Torso           | Poppy Project            | 13  | URDF       |
| `yumi_description`            | YuMi                  | ABB                      | 16  | URDF       |

### Drones

| Name                          | Robot                 | Maker                    | DOF | Format     |
|-------------------------------|-----------------------|--------------------------|-----|------------|
| `cf2_description`             | Crazyflie 2.0         | Bitcraze                 | 0   | URDF       |
| `cf2_mj_description`          | Crazyflie 2.0         | Bitcraze                 | 6   | MJCF       |
| `skydio_x2_description`       | Skydio X2             | Skydio                   | 6   | URDF       |
| `skydio_x2_mj_description`    | Skydio X2             | Skydio                   | 6   | MJCF       |

### Educational

| Name                             | Robot                 | DOF | Format     | License |
|----------------------------------|-----------------------|-----|------------|---------
| `double_pendulum_description`    | Double Pendulum       | 2   | URDF       | BSD-3-Clause |
| `dynamixel_2r_mj_description`    | Dynamixel 2R          | 2   | MJCF       | MIT |
| `finger_edu_description`         | FingerEdu             | 3   | URDF       | BSD-3-Clause |
| `mujoco_humanoid_mj_description` | MuJoCo Humanoid       | 27  | MJCF       | [Apache-2.0](https://github.com/google-deepmind/mujoco/blob/ad0dc0de5e10a075a2c65be629e9a8d557d383a6/LICENSE) |
| `simple_humanoid_description`    | Simple Humanoid       | 29  | URDF       | BSD-2-Clause |
| `trifinger_edu_description`      | TriFingerEdu          | 9   | URDF       | MIT |

### End effectors

| Name                             | Robot                 | Maker                      | Format     | License |
|----------------------------------|-----------------------|----------------------------|------------|---------|
| `ability_hand_description`       | Ability Hand          | PSYONIC, Inc.              | URDF       | [MIT](https://github.com/psyonicinc/ability-hand-api/blob/89407424edfc22faceaedcd7c3ea2b7947cbbb2c/LICENSE)     |
| `ability_hand_mj_description`    | Ability Hand          | PSYONIC, Inc.              | MJCF       | [MIT](https://github.com/psyonicinc/ability-hand-api/blob/89407424edfc22faceaedcd7c3ea2b7947cbbb2c/LICENSE)     |
| `allegro_hand_description`       | Allegro Hand          | Wonik Robotics             | URDF       | [BSD](https://github.com/RobotLocomotion/models/blob/5c027ea961473cb558da30e1a749272a8a9fa3eb/allegro_hand_description/LICENSE.TXT)     |
| `allegro_hand_mj_description`    | Allegro Hand          | Wonik Robotics             | MJCF       | [BSD-2-Clause](https://github.com/google-deepmind/mujoco_menagerie/blob/main/wonik_allegro/LICENSE) |
| `barrett_hand_description`       | BarrettHand           | Barrett Technology         | URDF       | [BSD](https://github.com/jhu-lcsr-attic/bhand_model/blob/937f4186d6458bd682a7dae825fb6f4efe56ec69/manifest.xml) |
| `leap_hand_v1_description`       | LEAP Hand v1          | Carnegie Mellon University | URDF       | MIT |
| `leap_hand_mj_description`       | LEAP Hand             | Carnegie Mellon University | MJCF       | MIT |
| `robotiq_2f85_description`       | Robotiq 2F-85         | Robotiq                    | URDF       | BSD-2-Clause |
| `robotiq_2f85_mj_description`    | Robotiq 2F-85         | Robotiq                    | MJCF       | BSD-2-Clause |
| `robotiq_2f85_v4_mj_description` | Robotiq 2F-85         | Robotiq                    | MJCF       | BSD-2-Clause |
| `shadow_dexee_mj_description`    | Shadow DEX-EE         | The Shadow Robot Company   | MJCF       | Apache-2.0 |
| `shadow_hand_mj_description`     | Shadow Hand           | The Shadow Robot Company   | MJCF       | Apache-2.0 |

### Humanoids

| Name                            | Robot                 | Maker                    | Format     | License |
|---------------------------------|-----------------------|--------------------------|------------|---------|
| `apollo_mj_description`         | Apollo                | Apptronik                | MJCF       | [Apache-2.0](https://github.com/google-deepmind/mujoco_menagerie/blob/bf04290ac7911fa7a39339c7e507792fd464c438/apptronik_apollo/LICENSE) |
| `adam_lite_mj_description`      | Adam Lite             | PNDBotics                | MJCF       | [MIT](https://github.com/google-deepmind/mujoco_menagerie/blob/4035f8e628b7e613d03ba7fdfc6fae3da2f30296/pndbotics_adam_lite/LICENSE) |
| `atlas_drc_description`         | Atlas DRC (v3)        | Boston Dynamics          | URDF       | BSD-3-Clause |
| `atlas_v4_description`          | Atlas v4              | Boston Dynamics          | URDF       | MIT |
| `berkeley_humanoid_description` | Berkeley Humanoid     | Hybrid Robotics          | URDF       | BSD-3-Clause |
| `booster_t1_description`        | Booster T1            | Booster Robotics         | URDF       | [Apache-2.0](https://github.com/BoosterRobotics/booster_gym/blob/687a33d08b08875fe45dc8d91b54db83766df8b9/LICENSE) |
| `booster_t1_mj_description`     | Booster T1            | Booster Robotics         | MJCF       | [Apache-2.0](https://github.com/google-deepmind/mujoco_menagerie/blob/66384c6b8581c811a7b1eb63bcf4fa944fa43602/booster_t1/LICENSE) |
| `draco3_description`            | Draco3                | Apptronik                | URDF       | BSD-2-Clause |
| `elf2_description`              | Elf2                  | BXI Robotics             | URDF       | [Apache-2.0](https://github.com/bxirobotics/robot_models/blob/eabe24ce937f8e633077a163b883e92e8996c36e/LICENSE) |
| `elf2_mj_description`           | Elf2                  | BXI Robotics             | MJCF       | [Apache-2.0](https://github.com/bxirobotics/robot_models/blob/eabe24ce937f8e633077a163b883e92e8996c36e/LICENSE) |
| `ergocub_description`           | ergoCub               | IIT                      | URDF       | BSD-3-Clause |
| `g1_description`                | G1                    | UNITREE Robotics         | URDF       | BSD-3-Clause |
| `g1_mj_description`             | G1                    | UNITREE Robotics         | MJCF       | BSD-3-Clause |
| `gr1_description`               | GR-1                  | Fourier                  | URDF       | [GPL-3.0](https://github.com/FFTAI/Wiki-GRx-Models/blob/351245ac8fa4bf6f4b0c41556e1e6976a438bcef/LICENSE) |
| `h1_description`                | H1                    | UNITREE Robotics         | URDF       | BSD-3-Clause |
| `h1_mj_description`             | H1                    | UNITREE Robotics         | MJCF       | BSD-3-Clause |
| `icub_description`              | iCub                  | IIT                      | URDF       | CC-BY-SA-4.0 ✖️  |
| `jaxon_description`             | JAXON                 | JSK                      | URDF       | CC-BY-SA-4.0 ✖️  |
| `jvrc_description`              | JVRC-1                | AIST                     | URDF       | BSD-2-Clause |
| `jvrc_mj_description`           | JVRC-1                | AIST                     | MJCF       | BSD-2-Clause |
| `n1_description`                | N1                    | Fourier                  | URDF       | [Apache-2.0](https://github.com/FFTAI/Wiki-GRx-Models/blob/f8e683f00d1d99deb882deb9dfce6030095b466a/LICENSE) |
| `n1_mj_description`             | N1                    | Fourier                  | MJCF       | [Apache-2.0](https://github.com/google-deepmind/mujoco_menagerie/blob/f3475402a11acf5ba767a8bec03cc9bea9819d8d/fourier_n1/LICENSE) |
| `op3_mj_description`            | OP3                   | ROBOTIS                  | MJCF       | Apache-2.0 |
| `r2_description`                | Robonaut 2            | NASA JSC Robotics        | URDF       | NASA-1.3 |
| `romeo_description`             | Romeo                 | Aldebaran Robotics       | URDF       | BSD-3-Clause |
| `sigmaban_description`          | SigmaBan              | Rhoban                   | URDF       | MIT |
| `talos_description`             | TALOS                 | PAL Robotics             | URDF       | Apache-2.0 |
| `talos_mj_description`          | TALOS                 | PAL Robotics             | MJCF       | Apache-2.0 |
| `valkyrie_description`          | Valkyrie              | NASA JSC Robotics        | URDF       | NASA-1.3 |

### Mobile manipulators

| Name                          | Robot                 | Maker                    | Format     | License |
|-------------------------------|-----------------------|--------------------------|------------|---------|
| `bambot_description`          | BamBot                | Tim Qian                 | URDF       | [Apache-2.0](https://github.com/timqian/bambot/blob/04d902653794f9f72eeabb09ec90a9af8e397c5b/LICENSE) |
| `eve_r3_description`          | Eve R3                | Halodi                   | URDF       | Apache-2.0 |
| `fetch_description`           | Fetch                 | Fetch Robotics           | URDF       | MIT |
| `ginger_description`          | Ginger                | Paaila Technology        | URDF       | BSD |
| `pepper_description`          | Pepper                | SoftBank Robotics        | URDF       | BSD-2-Clause |
| `pr2_description`             | PR2                   | Willow Garage            | URDF       | BSD |
| `rby1_description`            | RBY1                  | Rainbow Robotics         | URDF       | [MIT](https://github.com/uynitsuj/rby1_description/blob/e4c07203aa0a0d1b6b3b39da105cb00a77e2bc72/LICENSE) |
| `reachy_description`          | Reachy                | Pollen Robotics          | URDF       | Apache-2.0 |
| `stretch_description`         | Stretch RE1           | Hello Robot              | URDF       | CC-BY-SA-4.0 ✖️  |
| `sretch_mj_description`       | Stretch 2             | Hello Robot              | MJCF       | Clear BSD |
| `sretch_3_mj_description`     | Stretch 3             | Hello Robot              | MJCF       | Apache-2.0 |
| `tiago_description`           | TIAGo                 | PAL Robotics             | URDF       | Apache-2.0 |
| `rby1_description`            | RBY1                  | Rainbow Robotics         | 24  | URDF       |


### Quadrupeds

| Name                          | Robot                 | Maker                    | DOF | Format     |
|-------------------------------|-----------------------|--------------------------|-----|------------|
| `a1_description`              | A1                    | UNITREE Robotics         | 12  | URDF       |
| `a1_mj_description`           | A1                    | UNITREE Robotics         | 12  | MJCF       |
| `aliengo_description`         | Aliengo               | UNITREE Robotics         | 12  | URDF       |
| `aliengo_mj_description`      | Aliengo               | UNITREE Robotics         | 12  | MJCF       |
| `anymal_b_description`        | ANYmal B              | ANYbotics                | 12  | URDF       |
| `anymal_b_mj_description`     | ANYmal B              | ANYbotics                | 12  | MJCF       |
| `anymal_c_description`        | ANYmal C              | ANYbotics                | 12  | URDF       |
| `anymal_c_mj_description`     | ANYmal C              | ANYbotics                | 12  | MJCF       |
| `anymal_d_description`        | ANYmal D              | ANYbotics                | 12  | URDF       |
| `b1_description`              | B1                    | UNITREE Robotics         | 12  | URDF       |
| `b2_description`              | B2                    | UNITREE Robotics         | 12  | URDF       |
| `go1_description`             | Go1                   | UNITREE Robotics         | 12  | URDF       |
| `go1_mj_description`          | Go1                   | UNITREE Robotics         | 12  | MJCF       |
| `go2_description`             | Go2                   | UNITREE Robotics         | 12  | URDF       |
| `go2_mj_description`          | Go2                   | UNITREE Robotics         | 12  | MJCF       |
| `hyq_description`             | HyQ                   | IIT                      | 12  | URDF       |
| `laikago_description`         | Laikago               | UNITREE Robotics         | 12  | MJCF, URDF |
| `mini_cheetah_description`    | Mini Cheetah          | MIT                      | 12  | URDF       |
| `minitaur_description`        | Minitaur              | Ghost Robotics           | 16  | URDF       |
| `solo_description`            | Solo                  | ODRI                     | 12  | URDF       |
| `spot_mj_description`         | Spot                  | Boston Dynamics          | 12  | MJCF       |

### Wheeled

| Name                          | Robot                 | Maker                    | Format     | License |
|-------------------------------|-----------------------|--------------------------|------------|---------|
| `rsk_description`             | RSK Omnidirectional   | Robot Soccer Kit         | URDF       | MIT     |
| `rsk_mj_description`          | RSK Omnidirectional   | Robot Soccer Kit         | MJCF       | MIT     |
| `upkie_description`           | Upkie                 | Stéphane Caron           | URDF       | Apache-2.0 |
| `wl_p311d_description`        | WL P311D              | LimX Dynamics            | URDF       | [Apache-2.0](https://github.com/limxdynamics/robot-description/blob/a097533372a08298d45af391cbdfc2fd2dc3da6f/LICENSE) |
| `wl_p311e_description`        | WL P311E              | LimX Dynamics            | URDF       | [Apache-2.0](https://github.com/limxdynamics/robot-description/blob/a097533372a08298d45af391cbdfc2fd2dc3da6f/LICENSE) |

## Contributing

New robot descriptions are welcome! Check out the [guidelines](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/CONTRIBUTING.md) then open a PR.

## Thanks

Thanks to the maintainers of all the git repositories that made these robot descriptions available.

## Citation

If you use this project in your works, please cite as follows:

```bibtex
@software{robot_descriptions_py,
  title = {{robot_descriptions.py: Robot descriptions in Python}},
  author = {Caron, Stéphane and Romualdi, Giulio and Kozlov, Lev and Ordoñez Apraez, Daniel Felipe and Tadashi Kussaba, Hugo and Bang, Seung Hyeon and Zakka, Kevin and Schramm, Fabian and Uru\c{c}, Jafar and Traversaro, Silvio and Castro, Sebastian and Tao, Haixuan Xavier and Jallet, Wilson},
  license = {Apache-2.0},
  url = {https://github.com/robot-descriptions/robot_descriptions.py},
  version = {1.20.0},
  year = {2025}
}
```

Don't forget to add yourself to the BibTeX above and to `CITATION.cff` if you contribute to this repository.

## See also

- [Awesome Robot Descriptions](https://github.com/robot-descriptions/awesome-robot-descriptions): curated list of robot descriptions in URDF, Xacro or MJCF formats.
- [drake\_models](https://github.com/RobotLocomotion/models): collection of URDF and SDF descriptions curated for the Drake framework.
- [MuJoCo Menagerie](https://github.com/google-deepmind/mujoco_menagerie/): collection of MJCF robot descriptions curated for the MuJoCo physics engine.
- [robot\_descriptions.cpp](https://github.com/mayataka/robot_descriptions.cpp): package to use ``robot_descriptions.py`` in C++.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "robot_descriptions",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "St\u00e9phane Caron <stephane.caron@normalesup.org>",
    "keywords": "robot, description, urdf, mjcf",
    "author": null,
    "author_email": "St\u00e9phane Caron <stephane.caron@normalesup.org>",
    "download_url": "https://files.pythonhosted.org/packages/01/4d/1a573eedb132d3dc77232651a6d9286d4944e379dfb26e6cfe1201ac7086/robot_descriptions-1.20.0.tar.gz",
    "platform": null,
    "description": "# Robot descriptions in Python\n\n[![Build](https://img.shields.io/github/actions/workflow/status/robot-descriptions/robot_descriptions.py/test.yml?branch=main)](https://github.com/robot-descriptions/robot_descriptions.py/actions)\n[![Coverage](https://coveralls.io/repos/github/robot-descriptions/robot_descriptions.py/badge.svg?branch=main)](https://coveralls.io/github/robot-descriptions/robot_descriptions.py?branch=main)\n[![Conda Version](https://img.shields.io/conda/vn/conda-forge/robot_descriptions.svg?color=blue)](https://anaconda.org/conda-forge/robot_descriptions)\n[![PyPI version](https://img.shields.io/pypi/v/robot_descriptions?color=blue)](https://pypi.org/project/robot_descriptions/)\n[![PyPI downloads](https://img.shields.io/pypi/dm/robot_descriptions?color=blue)](https://pypistats.org/packages/robot_descriptions)\n[![Contributing](https://img.shields.io/badge/PRs-welcome-green.svg)](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/CONTRIBUTING.md)\n\nImport open source robot descriptions as Python modules.\n\nImporting a description for the first time automatically downloads and caches files for future imports. Most [Awesome Robot Descriptions](https://github.com/robot-descriptions/awesome-robot-descriptions) are available. All of them load successfully in respectively MuJoCo (MJCF) or Pinocchio, iDynTree, PyBullet and yourdfpy (URDF).\n\n## Installation\n\n### From conda-forge\n\n```console\nconda install -c conda-forge robot_descriptions\n```\n\n### From PyPI\n\n```console\npip install robot_descriptions\n```\n\n## Usage\n\nThe library provides `load_robot_description` functions that return an instance of a robot description directly usable in the corresponding software. For example:\n\n```python\nfrom robot_descriptions.loaders.pinocchio import load_robot_description\n\nrobot = load_robot_description(\"upkie_description\")\n```\n\nLoaders are implemented for the following robotics software:\n\n| Software                                                     | Loader                                   |\n|--------------------------------------------------------------|------------------------------------------|\n| [iDynTree](https://github.com/robotology/idyntree)           | `robot_descriptions.loaders.idyntree`    |\n| [MuJoCo](https://github.com/deepmind/mujoco)                 | `robot_descriptions.loaders.mujoco`      |\n| [Pinocchio](https://github.com/stack-of-tasks/pinocchio)     | `robot_descriptions.loaders.pinocchio`   |\n| [PyBullet](https://pybullet.org/)                            | `robot_descriptions.loaders.pybullet`    |\n| [RoboMeshCat](https://github.com/petrikvladimir/RoboMeshCat) | `robot_descriptions.loaders.robomeshcat` |\n| [yourdfpy](https://github.com/clemense/yourdfpy/)            | `robot_descriptions.loaders.yourdfpy`    |\n\nLoading will automatically download the robot description if needed, and cache it to a local directory.\n\n### Show a description\n\nYou can display a robot description directly from the command line:\n\n```console\npython -m robot_descriptions show_in_meshcat go2_description\n```\n\nA `robot_descriptions` alias for `python -m robot_descriptions` is also available.\n\n### Import as submodule\n\nYou can also import a robot description directly as a submodule of `robot_descriptions`:\n\n```python\nfrom robot_descriptions import my_robot_description\n```\n\nThe import will automatically download the robot description if you don't have it already, and cache it to a local directory. The submodule then provides the following paths:\n\n<dl>\n    <dt>\n        <code>URDF_PATH</code> / <code>MJCF_PATH</code>\n    </dt>\n    <dd>\n        Path to the main URDF/MJCF file of the robot description.\n    </dd>\n    <dt>\n        <code>PACKAGE_PATH</code>\n    </dt>\n    <dd>\n        Path to the root of the robot description package.\n    </dd>\n    <dt>\n        <code>REPOSITORY_PATH</code>\n    </dt>\n    <dd>\n        Path to the working directory of the git repository hosting the robot description.\n    </dd>\n</dl>\n\nSome robot descriptions include additional fields. For instance, the `iiwa14_description` exports `URDF_PATH_POLYTOPE_COLLISION` with more detailed collision meshes.\n\n## Examples\n\nLoading a robot description:\n\n- [iDynTree](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_idyntree.py)\n- [MuJoCo](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_mujoco.py)\n- [Pinocchio](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_pinocchio.py)\n- [PyBullet](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_pybullet.py)\n- [RoboMeshCat](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_robomeshcat.py)\n- [yourdfpy](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/load_in_yourdfpy.py)\n\nVisualizing a robot description:\n\n- [MeshCat](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_meshcat.py)\n- [MuJoCo](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_mujoco.py)\n- [PyBullet](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_pybullet.py)\n- [RoboMeshCat](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_robomeshcat.py)\n- [yourdfpy](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/examples/show_in_yourdfpy.py)\n\n## Descriptions\n\nAvailable robot descriptions ([gallery](https://github.com/robot-descriptions/awesome-robot-descriptions#gallery)) are listed in the following categories:\n\n- [Arms](#arms)\n- [Bipeds](#bipeds)\n- [Dual arms](#dual-arms)\n- [Drones](#drones)\n- [Educational](#educational)\n- [End effectors](#end-effectors)\n- [Humanoids](#humanoids)\n- [Mobile manipulators](#mobile-manipulators)\n- [Quadrupeds](#quadrupeds)\n- [Wheeled](#wheeled)\n\nThe DOF column denotes the number of actuated degrees of freedom.\n\n### Arms\n\n| Name                          | Robot                 | Maker                    | Format     | License      |\n|-------------------------------|-----------------------|--------------------------|------------|--------------|\n| `arx_l5_mj_description`       | L5                    | ARX                      | MJCF       | BSD-3-Clause |\n| `edo_description`             | e.DO                  | Comau                    | URDF       | [BSD-3-Clause](https://github.com/ianathompson/eDO_description/blob/17b3f92f834746106d6a4befaab8eeab3ac248e6/LICENSE) |\n| `fanuc_m710ic_description`    | M-710iC               | Fanuc                    | URDF       | BSD-3-Clause |\n| `fr3_mj_description`          | FR3                   | Franka Robotics          | MJCF       | Apache-2.0   |\n| `gen2_description`            | Gen2                  | Kinova                   | URDF       | BSD-3-Clause |\n| `gen3_description`            | Gen3                  | Kinova                   | URDF       | MIT          |\n| `gen3_lite_description`       | Gen3 Lite             | Kinova                   | URDF       | BSD-3-Clause |\n| `gen3_mj_description`         | Gen3                  | Kinova                   | MJCF       | BSD-2-Clause |\n| `iiwa14_description`          | iiwa 14               | KUKA                     | URDF       | BSD-3-Clause |\n| `iiwa14_mj_description`       | iiwa 14               | KUKA                     | MJCF       | BSD-3-Clause |\n| `iiwa7_description`           | iiwa 7                | KUKA                     | URDF       | MIT          |\n| `low_cost_robot_arm_mj_description` | Low-cost robot arm | Alexander Koch | MJCF | [Apache-2.0](https://github.com/google-deepmind/mujoco_menagerie/blob/ef4d04fbb7451d30b39c2aff7e49df737bb46815/low_cost_robot_arm/LICENSE) |\n| `panda_description`           | Panda                 | Franka Robotics          | URDF       | Apache-2.0   |\n| `panda_mj_description`        | Panda                 | Franka Robotics          | MJCF       | Apache-2.0   |\n| `piper_description`           | PiPER                 | AgileX                   | URDF       | MIT          |\n| `piper_mj_description`        | PiPER                 | AgileX                   | MJCF       | MIT          |\n| `poppy_ergo_jr_description`   | Poppy Ergo Jr         | Poppy Project            | URDF       | GPL-3.0      |\n| `sawyer_mj_description`       | Sawyer                | Rethink Robotics         | MJCF       | Apache-2.0   |\n| `so_arm100_description`       | SO-ARM100             | The Robot Studio         | URDF       | Apache-2.0   |\n| `so_arm100_mj_description`    | SO-ARM100             | The Robot Studio         | MJCF       | Apache-2.0   |\n| `so_arm101_description`       | SO-ARM101             | The Robot Studio         | URDF       | Apache-2.0   |\n| `so_arm101_mj_description`    | SO-ARM101             | The Robot Studio         | MJCF       | Apache-2.0   |\n| `ur10_description`            | UR10                  | Universal Robots         | URDF       | Apache-2.0   |\n| `ur10e_mj_description`        | UR10e                 | Universal Robots         | MJCF       | BSD-3-Clause |\n| `ur3_description`             | UR3                   | Universal Robots         | URDF       | Apache-2.0   |\n| `ur5_description`             | UR5                   | Universal Robots         | URDF       | Apache-2.0   |\n| `ur5e_mj_description`         | UR5e                  | Universal Robots         | MJCF       | BSD-3-Clause |\n| `viper_mj_description`        | ViperX                | Trossen Robotics         | MJCF       | BSD-3-Clause |\n| `widow_mj_description`        | WidowX                | Trossen Robotics         | MJCF       | BSD-3-Clause |\n| `xarm7_mj_description`        | xArm7                 | UFACTORY                 | MJCF       | BSD-3-Clause |\n| `yam_description`             | YAM                   | I2RT Robotics            | URDF       | MIT          |\n| `yam_mj_description`          | YAM                   | I2RT Robotics            | MJCF       | MIT          |\n| `yam_description`             | YAM                   | I2RT Robotics            | URDF       | MIT          |\n| `z1_description`              | Z1                    | UNITREE Robotics         | URDF       | BSD-3-Clause |\n| `z1_mj_description`           | Z1                    | UNITREE Robotics         | MJCF       | BSD-3-Clause |\n\n### Bipeds\n\n| Name                          | Robot                 | Maker                    | DOF | Format     |\n|-------------------------------|-----------------------|--------------------------|-----|------------|\n| `bolt_description`            | Bolt                  | ODRI                     | 6   | URDF       |\n| `cassie_description`          | Cassie                | Agility Robotics         | 16  | URDF       |\n| `cassie_mj_description`       | Cassie                | Agility Robotics         | 16  | MJCF       |\n| `rhea_description`            | Rhea                  | Gabrael Levine           | 7   | URDF       |\n| `spryped_description`         | Spryped               | Benjamin Bokser          | 8   | URDF       |\n| `upkie_description`           | Upkie                 | Tast's Robots            | 6   | URDF       |\n\n### Dual arms\n\n| Name                          | Robot                 | Maker                    | DOF | Format     |\n|-------------------------------|-----------------------|--------------------------|-----|------------|\n| `aloha_mj_description`        | Aloha 2               | Trossen Robotics         | 14  | MJCF       |\n| `baxter_description`          | Baxter                | Rethink Robotics         | 15  | URDF       |\n| `nextage_description`         | NEXTAGE               | Kawada Robotics          | 15  | URDF       |\n| `poppy_torso_description`     | Poppy Torso           | Poppy Project            | 13  | URDF       |\n| `yumi_description`            | YuMi                  | ABB                      | 16  | URDF       |\n\n### Drones\n\n| Name                          | Robot                 | Maker                    | DOF | Format     |\n|-------------------------------|-----------------------|--------------------------|-----|------------|\n| `cf2_description`             | Crazyflie 2.0         | Bitcraze                 | 0   | URDF       |\n| `cf2_mj_description`          | Crazyflie 2.0         | Bitcraze                 | 6   | MJCF       |\n| `skydio_x2_description`       | Skydio X2             | Skydio                   | 6   | URDF       |\n| `skydio_x2_mj_description`    | Skydio X2             | Skydio                   | 6   | MJCF       |\n\n### Educational\n\n| Name                             | Robot                 | DOF | Format     | License |\n|----------------------------------|-----------------------|-----|------------|---------\n| `double_pendulum_description`    | Double Pendulum       | 2   | URDF       | BSD-3-Clause |\n| `dynamixel_2r_mj_description`    | Dynamixel 2R          | 2   | MJCF       | MIT |\n| `finger_edu_description`         | FingerEdu             | 3   | URDF       | BSD-3-Clause |\n| `mujoco_humanoid_mj_description` | MuJoCo Humanoid       | 27  | MJCF       | [Apache-2.0](https://github.com/google-deepmind/mujoco/blob/ad0dc0de5e10a075a2c65be629e9a8d557d383a6/LICENSE) |\n| `simple_humanoid_description`    | Simple Humanoid       | 29  | URDF       | BSD-2-Clause |\n| `trifinger_edu_description`      | TriFingerEdu          | 9   | URDF       | MIT |\n\n### End effectors\n\n| Name                             | Robot                 | Maker                      | Format     | License |\n|----------------------------------|-----------------------|----------------------------|------------|---------|\n| `ability_hand_description`       | Ability Hand          | PSYONIC, Inc.              | URDF       | [MIT](https://github.com/psyonicinc/ability-hand-api/blob/89407424edfc22faceaedcd7c3ea2b7947cbbb2c/LICENSE)     |\n| `ability_hand_mj_description`    | Ability Hand          | PSYONIC, Inc.              | MJCF       | [MIT](https://github.com/psyonicinc/ability-hand-api/blob/89407424edfc22faceaedcd7c3ea2b7947cbbb2c/LICENSE)     |\n| `allegro_hand_description`       | Allegro Hand          | Wonik Robotics             | URDF       | [BSD](https://github.com/RobotLocomotion/models/blob/5c027ea961473cb558da30e1a749272a8a9fa3eb/allegro_hand_description/LICENSE.TXT)     |\n| `allegro_hand_mj_description`    | Allegro Hand          | Wonik Robotics             | MJCF       | [BSD-2-Clause](https://github.com/google-deepmind/mujoco_menagerie/blob/main/wonik_allegro/LICENSE) |\n| `barrett_hand_description`       | BarrettHand           | Barrett Technology         | URDF       | [BSD](https://github.com/jhu-lcsr-attic/bhand_model/blob/937f4186d6458bd682a7dae825fb6f4efe56ec69/manifest.xml) |\n| `leap_hand_v1_description`       | LEAP Hand v1          | Carnegie Mellon University | URDF       | MIT |\n| `leap_hand_mj_description`       | LEAP Hand             | Carnegie Mellon University | MJCF       | MIT |\n| `robotiq_2f85_description`       | Robotiq 2F-85         | Robotiq                    | URDF       | BSD-2-Clause |\n| `robotiq_2f85_mj_description`    | Robotiq 2F-85         | Robotiq                    | MJCF       | BSD-2-Clause |\n| `robotiq_2f85_v4_mj_description` | Robotiq 2F-85         | Robotiq                    | MJCF       | BSD-2-Clause |\n| `shadow_dexee_mj_description`    | Shadow DEX-EE         | The Shadow Robot Company   | MJCF       | Apache-2.0 |\n| `shadow_hand_mj_description`     | Shadow Hand           | The Shadow Robot Company   | MJCF       | Apache-2.0 |\n\n### Humanoids\n\n| Name                            | Robot                 | Maker                    | Format     | License |\n|---------------------------------|-----------------------|--------------------------|------------|---------|\n| `apollo_mj_description`         | Apollo                | Apptronik                | MJCF       | [Apache-2.0](https://github.com/google-deepmind/mujoco_menagerie/blob/bf04290ac7911fa7a39339c7e507792fd464c438/apptronik_apollo/LICENSE) |\n| `adam_lite_mj_description`      | Adam Lite             | PNDBotics                | MJCF       | [MIT](https://github.com/google-deepmind/mujoco_menagerie/blob/4035f8e628b7e613d03ba7fdfc6fae3da2f30296/pndbotics_adam_lite/LICENSE) |\n| `atlas_drc_description`         | Atlas DRC (v3)        | Boston Dynamics          | URDF       | BSD-3-Clause |\n| `atlas_v4_description`          | Atlas v4              | Boston Dynamics          | URDF       | MIT |\n| `berkeley_humanoid_description` | Berkeley Humanoid     | Hybrid Robotics          | URDF       | BSD-3-Clause |\n| `booster_t1_description`        | Booster T1            | Booster Robotics         | URDF       | [Apache-2.0](https://github.com/BoosterRobotics/booster_gym/blob/687a33d08b08875fe45dc8d91b54db83766df8b9/LICENSE) |\n| `booster_t1_mj_description`     | Booster T1            | Booster Robotics         | MJCF       | [Apache-2.0](https://github.com/google-deepmind/mujoco_menagerie/blob/66384c6b8581c811a7b1eb63bcf4fa944fa43602/booster_t1/LICENSE) |\n| `draco3_description`            | Draco3                | Apptronik                | URDF       | BSD-2-Clause |\n| `elf2_description`              | Elf2                  | BXI Robotics             | URDF       | [Apache-2.0](https://github.com/bxirobotics/robot_models/blob/eabe24ce937f8e633077a163b883e92e8996c36e/LICENSE) |\n| `elf2_mj_description`           | Elf2                  | BXI Robotics             | MJCF       | [Apache-2.0](https://github.com/bxirobotics/robot_models/blob/eabe24ce937f8e633077a163b883e92e8996c36e/LICENSE) |\n| `ergocub_description`           | ergoCub               | IIT                      | URDF       | BSD-3-Clause |\n| `g1_description`                | G1                    | UNITREE Robotics         | URDF       | BSD-3-Clause |\n| `g1_mj_description`             | G1                    | UNITREE Robotics         | MJCF       | BSD-3-Clause |\n| `gr1_description`               | GR-1                  | Fourier                  | URDF       | [GPL-3.0](https://github.com/FFTAI/Wiki-GRx-Models/blob/351245ac8fa4bf6f4b0c41556e1e6976a438bcef/LICENSE) |\n| `h1_description`                | H1                    | UNITREE Robotics         | URDF       | BSD-3-Clause |\n| `h1_mj_description`             | H1                    | UNITREE Robotics         | MJCF       | BSD-3-Clause |\n| `icub_description`              | iCub                  | IIT                      | URDF       | CC-BY-SA-4.0 \u2716\ufe0f  |\n| `jaxon_description`             | JAXON                 | JSK                      | URDF       | CC-BY-SA-4.0 \u2716\ufe0f  |\n| `jvrc_description`              | JVRC-1                | AIST                     | URDF       | BSD-2-Clause |\n| `jvrc_mj_description`           | JVRC-1                | AIST                     | MJCF       | BSD-2-Clause |\n| `n1_description`                | N1                    | Fourier                  | URDF       | [Apache-2.0](https://github.com/FFTAI/Wiki-GRx-Models/blob/f8e683f00d1d99deb882deb9dfce6030095b466a/LICENSE) |\n| `n1_mj_description`             | N1                    | Fourier                  | MJCF       | [Apache-2.0](https://github.com/google-deepmind/mujoco_menagerie/blob/f3475402a11acf5ba767a8bec03cc9bea9819d8d/fourier_n1/LICENSE) |\n| `op3_mj_description`            | OP3                   | ROBOTIS                  | MJCF       | Apache-2.0 |\n| `r2_description`                | Robonaut 2            | NASA JSC Robotics        | URDF       | NASA-1.3 |\n| `romeo_description`             | Romeo                 | Aldebaran Robotics       | URDF       | BSD-3-Clause |\n| `sigmaban_description`          | SigmaBan              | Rhoban                   | URDF       | MIT |\n| `talos_description`             | TALOS                 | PAL Robotics             | URDF       | Apache-2.0 |\n| `talos_mj_description`          | TALOS                 | PAL Robotics             | MJCF       | Apache-2.0 |\n| `valkyrie_description`          | Valkyrie              | NASA JSC Robotics        | URDF       | NASA-1.3 |\n\n### Mobile manipulators\n\n| Name                          | Robot                 | Maker                    | Format     | License |\n|-------------------------------|-----------------------|--------------------------|------------|---------|\n| `bambot_description`          | BamBot                | Tim Qian                 | URDF       | [Apache-2.0](https://github.com/timqian/bambot/blob/04d902653794f9f72eeabb09ec90a9af8e397c5b/LICENSE) |\n| `eve_r3_description`          | Eve R3                | Halodi                   | URDF       | Apache-2.0 |\n| `fetch_description`           | Fetch                 | Fetch Robotics           | URDF       | MIT |\n| `ginger_description`          | Ginger                | Paaila Technology        | URDF       | BSD |\n| `pepper_description`          | Pepper                | SoftBank Robotics        | URDF       | BSD-2-Clause |\n| `pr2_description`             | PR2                   | Willow Garage            | URDF       | BSD |\n| `rby1_description`            | RBY1                  | Rainbow Robotics         | URDF       | [MIT](https://github.com/uynitsuj/rby1_description/blob/e4c07203aa0a0d1b6b3b39da105cb00a77e2bc72/LICENSE) |\n| `reachy_description`          | Reachy                | Pollen Robotics          | URDF       | Apache-2.0 |\n| `stretch_description`         | Stretch RE1           | Hello Robot              | URDF       | CC-BY-SA-4.0 \u2716\ufe0f  |\n| `sretch_mj_description`       | Stretch 2             | Hello Robot              | MJCF       | Clear BSD |\n| `sretch_3_mj_description`     | Stretch 3             | Hello Robot              | MJCF       | Apache-2.0 |\n| `tiago_description`           | TIAGo                 | PAL Robotics             | URDF       | Apache-2.0 |\n| `rby1_description`            | RBY1                  | Rainbow Robotics         | 24  | URDF       |\n\n\n### Quadrupeds\n\n| Name                          | Robot                 | Maker                    | DOF | Format     |\n|-------------------------------|-----------------------|--------------------------|-----|------------|\n| `a1_description`              | A1                    | UNITREE Robotics         | 12  | URDF       |\n| `a1_mj_description`           | A1                    | UNITREE Robotics         | 12  | MJCF       |\n| `aliengo_description`         | Aliengo               | UNITREE Robotics         | 12  | URDF       |\n| `aliengo_mj_description`      | Aliengo               | UNITREE Robotics         | 12  | MJCF       |\n| `anymal_b_description`        | ANYmal B              | ANYbotics                | 12  | URDF       |\n| `anymal_b_mj_description`     | ANYmal B              | ANYbotics                | 12  | MJCF       |\n| `anymal_c_description`        | ANYmal C              | ANYbotics                | 12  | URDF       |\n| `anymal_c_mj_description`     | ANYmal C              | ANYbotics                | 12  | MJCF       |\n| `anymal_d_description`        | ANYmal D              | ANYbotics                | 12  | URDF       |\n| `b1_description`              | B1                    | UNITREE Robotics         | 12  | URDF       |\n| `b2_description`              | B2                    | UNITREE Robotics         | 12  | URDF       |\n| `go1_description`             | Go1                   | UNITREE Robotics         | 12  | URDF       |\n| `go1_mj_description`          | Go1                   | UNITREE Robotics         | 12  | MJCF       |\n| `go2_description`             | Go2                   | UNITREE Robotics         | 12  | URDF       |\n| `go2_mj_description`          | Go2                   | UNITREE Robotics         | 12  | MJCF       |\n| `hyq_description`             | HyQ                   | IIT                      | 12  | URDF       |\n| `laikago_description`         | Laikago               | UNITREE Robotics         | 12  | MJCF, URDF |\n| `mini_cheetah_description`    | Mini Cheetah          | MIT                      | 12  | URDF       |\n| `minitaur_description`        | Minitaur              | Ghost Robotics           | 16  | URDF       |\n| `solo_description`            | Solo                  | ODRI                     | 12  | URDF       |\n| `spot_mj_description`         | Spot                  | Boston Dynamics          | 12  | MJCF       |\n\n### Wheeled\n\n| Name                          | Robot                 | Maker                    | Format     | License |\n|-------------------------------|-----------------------|--------------------------|------------|---------|\n| `rsk_description`             | RSK Omnidirectional   | Robot Soccer Kit         | URDF       | MIT     |\n| `rsk_mj_description`          | RSK Omnidirectional   | Robot Soccer Kit         | MJCF       | MIT     |\n| `upkie_description`           | Upkie                 | St\u00e9phane Caron           | URDF       | Apache-2.0 |\n| `wl_p311d_description`        | WL P311D              | LimX Dynamics            | URDF       | [Apache-2.0](https://github.com/limxdynamics/robot-description/blob/a097533372a08298d45af391cbdfc2fd2dc3da6f/LICENSE) |\n| `wl_p311e_description`        | WL P311E              | LimX Dynamics            | URDF       | [Apache-2.0](https://github.com/limxdynamics/robot-description/blob/a097533372a08298d45af391cbdfc2fd2dc3da6f/LICENSE) |\n\n## Contributing\n\nNew robot descriptions are welcome! Check out the [guidelines](https://github.com/robot-descriptions/robot_descriptions.py/tree/main/CONTRIBUTING.md) then open a PR.\n\n## Thanks\n\nThanks to the maintainers of all the git repositories that made these robot descriptions available.\n\n## Citation\n\nIf you use this project in your works, please cite as follows:\n\n```bibtex\n@software{robot_descriptions_py,\n  title = {{robot_descriptions.py: Robot descriptions in Python}},\n  author = {Caron, St\u00e9phane and Romualdi, Giulio and Kozlov, Lev and Ordo\u00f1ez Apraez, Daniel Felipe and Tadashi Kussaba, Hugo and Bang, Seung Hyeon and Zakka, Kevin and Schramm, Fabian and Uru\\c{c}, Jafar and Traversaro, Silvio and Castro, Sebastian and Tao, Haixuan Xavier and Jallet, Wilson},\n  license = {Apache-2.0},\n  url = {https://github.com/robot-descriptions/robot_descriptions.py},\n  version = {1.20.0},\n  year = {2025}\n}\n```\n\nDon't forget to add yourself to the BibTeX above and to `CITATION.cff` if you contribute to this repository.\n\n## See also\n\n- [Awesome Robot Descriptions](https://github.com/robot-descriptions/awesome-robot-descriptions): curated list of robot descriptions in URDF, Xacro or MJCF formats.\n- [drake\\_models](https://github.com/RobotLocomotion/models): collection of URDF and SDF descriptions curated for the Drake framework.\n- [MuJoCo Menagerie](https://github.com/google-deepmind/mujoco_menagerie/): collection of MJCF robot descriptions curated for the MuJoCo physics engine.\n- [robot\\_descriptions.cpp](https://github.com/mayataka/robot_descriptions.cpp): package to use ``robot_descriptions.py`` in C++.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Import open source robot description as Python modules.",
    "version": "1.20.0",
    "project_urls": {
        "Changelog": "https://github.com/robot-descriptions/robot_descriptions.py/blob/main/CHANGELOG.md",
        "Homepage": "https://github.com/robot-descriptions",
        "Source": "https://github.com/robot-descriptions/robot_descriptions.py",
        "Tracker": "https://github.com/robot-descriptions/robot_descriptions.py/issues"
    },
    "split_keywords": [
        "robot",
        " description",
        " urdf",
        " mjcf"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ee842c4120b1309de168c0243fa7389278be933f60b3a2365dc16c47766b9aab",
                "md5": "dbe23d99636f28c096c380946419236b",
                "sha256": "618e5ffb2aaa9d652f911e5c9aa6c8fc0d0a2178fd3e4570fed6fc03f95916a5"
            },
            "downloads": -1,
            "filename": "robot_descriptions-1.20.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "dbe23d99636f28c096c380946419236b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 99752,
            "upload_time": "2025-07-15T13:32:32",
            "upload_time_iso_8601": "2025-07-15T13:32:32.468557Z",
            "url": "https://files.pythonhosted.org/packages/ee/84/2c4120b1309de168c0243fa7389278be933f60b3a2365dc16c47766b9aab/robot_descriptions-1.20.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "014d1a573eedb132d3dc77232651a6d9286d4944e379dfb26e6cfe1201ac7086",
                "md5": "772f4fba0dfb20372692028087ef090e",
                "sha256": "cfb094cdd7a9bb541c61a235c9e34e1204e67e4a7d0571dc1e2c9252c3b42b46"
            },
            "downloads": -1,
            "filename": "robot_descriptions-1.20.0.tar.gz",
            "has_sig": false,
            "md5_digest": "772f4fba0dfb20372692028087ef090e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 52518,
            "upload_time": "2025-07-15T13:32:33",
            "upload_time_iso_8601": "2025-07-15T13:32:33.912330Z",
            "url": "https://files.pythonhosted.org/packages/01/4d/1a573eedb132d3dc77232651a6d9286d4944e379dfb26e6cfe1201ac7086/robot_descriptions-1.20.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-15 13:32:33",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "robot-descriptions",
    "github_project": "robot_descriptions.py",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "robot_descriptions"
}
        
Elapsed time: 1.74863s