An open API service indexing awesome lists of open source software.

https://github.com/soenneker/soenneker.quark.steps

A series of Blazor Quark components for step controls.
https://github.com/soenneker/soenneker.quark.steps

blazor blazorlibrary csharp css dotnet elements html quark step steps ui wrapper

Last synced: 4 months ago
JSON representation

A series of Blazor Quark components for step controls.

Awesome Lists containing this project

README

          

[![](https://img.shields.io/nuget/v/soenneker.quark.steps.svg?style=for-the-badge)](https://www.nuget.org/packages/soenneker.quark.steps/)
[![](https://img.shields.io/github/actions/workflow/status/soenneker/soenneker.quark.steps/publish-package.yml?style=for-the-badge)](https://github.com/soenneker/soenneker.quark.steps/actions/workflows/publish-package.yml)
[![](https://img.shields.io/nuget/dt/soenneker.quark.steps.svg?style=for-the-badge)](https://www.nuget.org/packages/soenneker.quark.steps/)
[![](https://img.shields.io/badge/Demo-Live-blueviolet?style=for-the-badge&logo=github)](https://soenneker.github.io/soenneker.quark.steps/)

# ![](https://user-images.githubusercontent.com/4441470/224455560-91ed3ee7-f510-4041-a8d2-3fc093025112.png) Soenneker.Quark.Steps
### A comprehensive Blazor component library for step indicators and navigation.

## Installation

```
dotnet add package Soenneker.Quark.Steps
```

## Features

- **Step Navigation**: Clickable steps with built-in navigation
- **State Management**: Automatic step state tracking and management
- **Custom Markers**: Support for custom step markers and icons
- **Content Areas**: Separate content panels for each step
- **Render Modes**: Default, lazy load, and lazy reload rendering options
- **Color Theming**: Built-in color support for step styling
- **Navigation Control**: Optional navigation validation and control
- **Responsive Design**: Works across different screen sizes

## Components

### Steps
The main container component that manages step state and navigation.

```razor



```

### Step
Individual step component with customizable markers and content.

```razor




Step Title

```

### StepPanel
Content panel that displays when its corresponding step is active.

```razor

Step Content


This content shows when step1 is selected.

```

### StepContent
Separate content area that can be placed anywhere on the page.

```razor

Information content
Settings content

```

## Examples

### Basic Steps with Navigation
```razor



currentStep = 'step2'">Go to Step 2
```

### Steps with Content Areas
```razor







Information Panel


Step content here




Settings Panel


Settings content here



```

### Custom Markers
```razor







Custom Step

```

### Navigation Control
```razor


@code {
private bool ValidateNavigation(StepNavigationContext context)
{
// Custom validation logic
return context.NextStepIndex > context.CurrentStepIndex ||
CanGoBackward(context.NextStepIndex);
}
}
```

## Properties

### Steps Properties
- `SelectedStep` - Currently selected step name
- `RenderMode` - How steps content is rendered (Default, LazyLoad, LazyReload)
- `NavigationAllowed` - Function to validate step navigation
- `Items` - Template for step items
- `Content` - Template for step content panels

### Step Properties
- `Name` - Unique identifier for the step
- `Index` - Override the step index
- `Completed` - Mark step as completed
- `Color` - Step color theme
- `Marker` - Custom marker content
- `Caption` - Step title/caption content

### StepPanel Properties
- `Name` - Must match corresponding step name
- `ChildContent` - Panel content

## License

MIT License - see [LICENSE](LICENSE) file for details.