# User Guide ```{raw} html
DART 7 · Python-first

Build a simulation, step by step

This guide takes you from a one-file "hello, DART" simulation to building articulated robots, tuning contact, and visualizing results. Pages are ordered to be read start to finish, but each stands on its own once you know the basics.

``` DART 7 is the in-progress redesign of the Dynamic Animation and Robotics Toolkit. It keeps DART's transparent, research-grade dynamics while exposing a smaller, Python-first API built around a single `World` object. This guide uses that API throughout. ```{admonition} DART 7 is under active development :class: warning The DART 7 API shown here is still evolving and is **not yet recommended for production**. Names and behavior can change between releases. For production work, use [DART 6 LTS](https://dart.readthedocs.io/en/stable/). If something in this guide does not match your build, please [open an issue](https://github.com/dartsim/dart/issues). ``` ## Where to start ```{raw} html
Start here

Add dartpy to a Python environment, or build from source for the newest DART 7 surface.

First steps

Drop a box onto the ground in a dozen lines and read back its motion.

First steps

Time steps, gravity, and what actually happens on each world.step().

Core concepts

The single entry point that owns bodies, time, and the step pipeline.

Core concepts

Mass, pose, collision shapes, and surface material for single bodies.

Core concepts

Build multibodies from links and joints — the heart of robot modeling.

Going further

How DART finds contacts and resolves them so bodies don't interpenetrate.

Going further

Pick the integration and contact methods that fit your accuracy and speed needs.

Going further

See your scene in the interactive viewer and capture frames headlessly.

``` ## How this guide is organized - **Getting started** — installation, your first simulation, and the loop that drives every DART program. - **Core concepts** — the `World`, rigid bodies, and articulated systems you compose into a scene. - **Going further** — collisions and contacts, solver choices, and visualization. - **{doc}`Next steps `** — deeper topics, runnable examples, and API references. ```{toctree} :hidden: :caption: Getting started :maxdepth: 1 getting_started/installation getting_started/hello_dart getting_started/simulation_loop ``` ```{toctree} :hidden: :caption: Core concepts :maxdepth: 1 concepts/world concepts/rigid_bodies concepts/articulated_systems ``` ```{toctree} :hidden: :caption: Going further :maxdepth: 1 interaction/collisions_and_contacts interaction/solvers visualization next_steps ```