# Training Examples

Training examples ship with a standard Core installation. Use them as starter templates. Use them to validate your setup end-to-end.

Most examples are intentionally small. They show one idea at a time. You can copy the pattern into real services.

{% hint style="info" %}
This section covers **Core** examples. Core is available to all users.

For Core vs Core+ feature comparison, see [Rierino Packages](https://docs.rierino.com/troubleshooting/rierino-packages).
{% endhint %}

### What’s included

You get three sets of assets. They map to the three main “build surfaces” in Rierino.

<table data-view="cards"><thead><tr><th>Title</th><th data-card-target data-type="content-ref">Target</th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td>API Flow Examples</td><td><a href="training-examples/api-flow-examples">api-flow-examples</a></td><td data-object-fit="contain"><a href="https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FcPM7KSzBX6s74wQQYVIC%2FNav_saga.svg?alt=media&#x26;token=c94a9226-d8f9-487b-9ca6-e490964cf799">Nav_saga.svg</a></td></tr><tr><td>Microservice Examples</td><td><a href="training-examples/microservice-examples">microservice-examples</a></td><td data-object-fit="contain"><a href="https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2Fj68djv0fN4DGixkZmUg9%2FNav_runner.svg?alt=media&#x26;token=5fd0b07b-0d3a-4efe-8db4-e57705a2135e">Nav_runner.svg</a></td></tr><tr><td>UI Example</td><td><a href="training-examples/ui-example">ui-example</a></td><td data-object-fit="contain"><a href="https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FmEmapDFtj1aoT5j2IMrR%2FNav_ui.svg?alt=media&#x26;token=41ff57b0-9671-453b-bc6a-59ad309d6080">Nav_ui.svg</a></td></tr></tbody></table>

### Recommended path (30–60 minutes)

Do these in order. Each step builds on the previous one.

1. Build a minimal API flow: [Exercise: Hello World API](https://docs.rierino.com/examples/training-examples/exercise-create-an-api-endpoint)
2. Expose a new CRUD collection: [Exercise: Test State](https://docs.rierino.com/examples/training-examples/exercise-create-a-crud-service)
3. Add a UI on top of that CRUD endpoint: [Exercise: Test UI](https://docs.rierino.com/examples/training-examples/exercise-create-a-ui-screen)

{% hint style="info" %}
If you already have a working environment, start with **Hello World API**. It is the fastest routing smoke test.
{% endhint %}

### Where to find the training assets

#### Devops → Sagas (API Flows)

Open the **Devops** app, then **Saga**.

Training sagas are grouped under the `training` domain. Start with:

* `/train_ping` (echo / smoke test)
* `/train_hello` (transform → response)
* `/train_get` and `/train_set` (read/write against state)

Full list and screenshots: [API Flow Examples](https://docs.rierino.com/examples/training-examples/api-flow-examples).

#### Devops → Runners + Deployments (Microservices)

Open the **Devops** app, then **Runner** and **Deployment**.

The training deployment typically includes:

* `train_rpc`: executes sagas as APIs
* `train_crud`: generic CRUD microservice
* `train_cdc`: listens to DB changes and triggers a saga

Details and videos: [Microservice Examples](https://docs.rierino.com/examples/training-examples/microservice-examples).

#### Design → UIs + Source + Apps (Admin UI)

Open the **Design** app.

The built-in training UI shows how to wire a lister + editor to a CRUD backend:

* **UI**: screen layout (tabs, widgets, lister columns)
* **Source**: API mapping (typically `train_crud/dummy`)
* **App**: menu packaging (a minimal `training` app)

Walkthrough: [UI Example](https://docs.rierino.com/examples/training-examples/ui-example).

### API endpoints cheat sheet

Use these patterns when testing from Postman or curl. Replace `YOUR_ADMIN_API_DOMAIN` with your gateway domain.

```
# Run a saga (RPC runner)
https://[YOUR_ADMIN_API_DOMAIN]/api/request/train_rpc/<SAGA_PATH>

# CRUD collection endpoint (CRUD runner)
https://[YOUR_ADMIN_API_DOMAIN]/api/request/train_crud/<ALIAS>
```

{% hint style="warning" %}
Sagas are case-sensitive. Runner configs may reload on a short interval (often \~10–30 seconds).
{% endhint %}

### Next step

Once these patterns feel familiar, build something end-to-end with the larger guided exercise:

* [In-depth Exercise](https://docs.rierino.com/examples/in-depth-exercise)
