(library)=

# Library

Use rampa as a Python library to build, configure, and run load tests
programmatically.

```{library-install}
```

::::{grid} 1 1 2 2
:gutter: 2

:::{grid-item-card} Tutorial
:link: tutorial
:link-type: doc
Write your first scenario, add checks and thresholds.
:::

:::{grid-item-card} Executors
:link: executors
:link-type: doc
Choose the right scheduling model for your test.
:::

:::{grid-item-card} Metrics
:link: metrics
:link-type: doc
Built-in metrics, custom metrics, and the metric pipeline.
:::

:::{grid-item-card} Thresholds
:link: thresholds
:link-type: doc
Expression syntax and pass/fail evaluation.
:::

:::{grid-item-card} Outputs
:link: outputs
:link-type: doc
Send results to CSV, InfluxDB, Prometheus, OTEL, and more.
:::

:::{grid-item-card} TUI Dashboard
:link: tui
:link-type: doc
Live terminal dashboard with metrics, timing, and thresholds.
:::

:::{grid-item-card} Protocols
:link: protocols
:link-type: doc
HTTP, WebSocket, gRPC, and custom protocol clients.
:::

:::{grid-item-card} Distributed
:link: distributed
:link-type: doc
Split tests across machines with execution segments.
:::

:::{grid-item-card} CI Integration
:link: ci
:link-type: doc
GitHub Actions, result comparison, and benchmarking.
:::

:::{grid-item-card} API Reference
:link: reference
:link-type: doc
Public API: Engine, RunController, Worker, Config.
:::

::::

```{toctree}
:hidden:

tutorial
executors
metrics
thresholds
outputs
tui
protocols
distributed
ci
reference
```
