> For the complete documentation index, see [llms.txt](https://docs.simplephysx.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.simplephysx.com/readme.md).

# Overview

SPX (SimplePhysX) is a deterministic simulation stack you can run locally (Docker) and drive from code for repeatable testing.

SPX is split into:

* **SPX Server**: runtime that loads **Models**, runs live **Instances**, executes **Scenarios**, serves **Snapshots**, and exposes a REST API (default `http://localhost:8000`).
* **SPX SDK**: author models/components in a structured way (YAML definitions + Python extension points).
* **SPX UI**: inspect Instances, attributes/state, scenarios, logs, and snapshots while debugging.

Core workflow (the “happy path”):

1. Start SPX Server via `docker compose`.
2. Load or edit a Model definition (YAML/Python).
3. Create an Instance.
4. Drive simulation time deterministically from tests (**MiL tests**) and validate outcomes.
5. Use Snapshots for reproducible starting states and fast iteration.

Start here:

* [Installation Guide](/getting-started/installation-guide.md)
* [Build Your First Simulation](/getting-started/build-your-first-simulation.md)
* [Snapshots — Getting Started](/advanced-setup/snapshots-guide.md)
* [Use in Unit Tests (MiL)](/advanced-setup/use-in-unit-tests-mil.md)
