# OnboardingTour class

> The OnboardingTour class of Novior.MentorAgent.Abstractions.Components.

- URL: https://docs.mentoragent.net/api/novior-mentoragent-abstractions-components/onboardingtour
- Verified with: MentorAgent 1.2.0
- Last updated: 2026-10-27
- Packages: Novior.MentorAgent.Abstractions

## Definition

Namespace: `Novior.MentorAgent.Abstractions.Components`. Package: `Novior.MentorAgent.Abstractions`.

`public class OnboardingTour : ComponentBase`

```shell
dotnet add package Novior.MentorAgent.Abstractions
```

## Constructors

`public OnboardingTour()`

## Properties

### `OnAsk`

`public EventCallback<string> OnAsk { get; set; }`

Raised with the step's ready-made question when the user taps it.

### `OnClose`

`public EventCallback OnClose { get; set; }`

Raised when the tour is completed or skipped — both end it for good.

### `OnIndexChanged`

`public EventCallback<int> OnIndexChanged { get; set; }`

Raised whenever the current step changes, so the host can remember where the user got to. The component itself persists nothing: it has no idea whether it is running in Blazor Server or WebAssembly, and storage is the host's business.

### `OnNavigate`

`public EventCallback<string> OnNavigate { get; set; }`

Raised with the step's URL when the user asks to open that screen.

### `StartIndex`

`public int StartIndex { get; set; }`

Step to open on, so a tour the user left part-way through resumes instead of restarting. Out-of-range values are clamped rather than rejected — the step count can shrink between deployments, and an onboarding tour is not worth an exception.

### `Steps`

`public IReadOnlyList<MentorTourStep> Steps { get; set; }`

The steps to walk through. An empty list renders nothing.

---

- Previous: [MessageBubble class](https://docs.mentoragent.net/api/novior-mentoragent-abstractions-components/messagebubble.md)
- Next: [RagSourcePanel class](https://docs.mentoragent.net/api/novior-mentoragent-abstractions-components/ragsourcepanel.md)
