mcpField
S
syncfusion-angular-stepper

syncfusion-angular-stepper

github.com/syncfusionDesign & UI0273 installsUpdated 1w ago
Repository

About syncfusion-angular-stepper

A reference skill for adding the Syncfusion Angular Stepper to applications. It helps Angular developers build guided workflows, with controls for step layout, validation, events, and customization.

Key features

  1. 01Horizontal and vertical layouts
  2. 02Default, indicator-only, and label-only styles
  3. 03Linear progression and step validation
  4. 04Step events and interaction handling
  5. 05Templates, animations, and tooltips
  6. 06Accessibility, keyboard, and RTL support

Use cases

  1. 01Build validated multi-step forms
  2. 02Guide users through onboarding
  3. 03Show progress in an order workflow
  4. 04Create a multi-step checkout

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/syncfusion/angular-ui-components-skills --skill syncfusion-angular-stepper

After installing, type/syncfusion-angular-stepperin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
advanced-features.md
api-reference.md
events-and-interactions.md
getting-started.md
orientations-and-layouts.md
step-types.md
steps-configuration.md
templates-and-customization.md
validation-and-flow.md

Details

From the project README

Implementing Syncfusion Angular Stepper

The Syncfusion Angular Stepper component displays a step-by-step process or workflow, ideal for wizards, onboarding, or multi-step forms. This skill guides you through implementing, configuring, and customizing the Stepper component with complete control over step appearance, validation, events, and animations.

When to Use This Skill

Use this skill when:

  • Building multi-step wizards or workflows
  • Creating step-by-step forms or onboarding flows
  • Configuring step validation and linear flow
  • Adding icons, labels, and custom templates to steps
  • Handling step events (created, stepChanged, stepChanging, beforeStepRender, stepClick)
  • Customizing step appearance with animations and styling
  • Implementing tooltips, globalization, or RTL support

Component Overview

The Stepper component provides:

  • Multiple step types: Default (icons + labels), Indicator Only, Label Only
  • Two orientations: Horizontal (default) and Vertical
  • Rich event system: created, stepChanged, stepChanging, beforeStepRender, stepClick
  • Step validation: Linear flow, completion states, conditional progression
  • Customization: Icons, labels, templates, animations, tooltips
  • Accessibility: WCAG compliance, keyboard navigation, RTL support

Complete Table of Contents

🚀 Getting Started

📄 Read: references/getting-started.md

  • Installation and package configuration
  • Angular CLI setup and dependencies
  • Basic stepper implementation in standalone Angular
  • CSS imports and theme setup
  • First render and initial configuration
📋 API Reference

📄 Read: references/api-reference.md

  • Stepper Component Properties: activeStep, animation, cssClass, enablePersistence, enableRtl, labelPosition, linear, locale, orientation, readOnly, showTooltip, stepType, steps, template, tooltipTemplate
  • Step Model Properties: cssClass, disabled, iconCss, isValid, label, optional, status, text
  • Animation Settings: enable, duration, delay
  • Stepper Methods: destroy(), nextStep(), previousStep(), refreshProgressbar(), reset()
  • Events Overview: created, stepChanged, stepChanging, stepClick, beforeStepRender
  • Enumerations: StepType, StepStatus, StepLabelPosition, StepperOrientation
⚙️ Configuring Steps

📄 Read: references/steps-configuration.md

  • Adding steps with <e-step> directive
  • Configuring icons with iconCss property
  • Setting labels and text content
  • Setting active step with activeStep
  • Optional steps and disabling steps
  • Step read-only mode
  • Step status tracking
  • Step validation with isValid property
  • Label positioning and alignment
🎨 Choosing Step Types

📄 Read: references/step-types.md

  • Default type with indicators and labels
  • Indicator Only type for compact layouts
  • Label Only type for text-based navigation
  • Label positions (Top, Bottom, Start, End)
  • When to use each type
  • Type selection patterns
📐 Setting Orientations

📄 Read: references/orientations-and-layouts.md

  • Horizontal orientation (default)
  • Vertical orientation for tall layouts
  • Layout configuration and responsive design
  • Orientation selection based on use case
🎯 Handling Events & Interactions

📄 Read: references/events-and-interactions.md

  • created event for initialization
  • stepChanged event after step changes (with EventArgs)
  • stepChanging event for step change prevention (with EventArgs)
  • beforeStepRender event for pre-render customization (with EventArgs)
  • stepClick event for click handling (with EventArgs)
  • Complete EventArgs reference documentation
  • Event handler patterns and best practices
✅ Validation and Flow Control

📄 Read: references/validation-and-flow.md

  • Linear flow configuration for sequential progression
  • Step validation and completion states
  • Step status management
  • Conditional step progression
  • Error handling and state management
🎭 Templates and Styling

📄 Read: references/templates-and-customization.md

  • Custom step templates using <ng-template>
  • Template binding and data context
  • CSS class customization (cssClass property)
  • Layout and appearance customization
  • Responsive styling patterns
🌟 Advanced Features

📄 Read: references/advanced-features.md

  • Animation settings (duration, delay, enable) with StepperAnimationSettingsModel
  • Tooltip configuration and tooltip templates
  • Globalization and localization (i18n)
  • RTL (Right-to-Left) support with enableRtl
  • Accessibility features and keyboard navigation
  • WCAG compliance and screen reader support

Quick Start Example

import { Component } from "@angular/core";
import { StepperAllModule, StepperModule } from "@syncfusion/ej2-angular-navigations";

@Component({
  imports: [ StepperAllModule, StepperModule ],
  standalone: true,
  selector: 'app-root',
  template: `
    <div class="stepper-container">
      <ejs-stepper>
        <e-steps>
          <e-step label="Cart" iconCss="sf-icon-cart"></e-step>
          <e-step label="Delivery Address" iconCss="sf-icon-transport"></e-step>
          <e-step label="Payment" iconCss="sf-icon-payment"></e-step>
          <e-step label="Confirmation" iconCss="sf-icon-success"></e-step>
        </e-steps>
      </ejs-stepper>
    </div>
  `,
  styles: [`
    .stepper-container {
      padding: 20px;
      max-width: 800px;
      margin: 0 auto;
    }
  `]
})
export class AppComponent { }

Common Patterns

Pattern 1: Wizard with Form Validation
<ejs-stepper (stepChanging)="onStepChanging($event)">
  <e-steps>
    <e-step label="Personal Info"></e-step>
    <e-step label="Contact Details"></e-step>
    <e-step label="Address"></e-step>
    <e-step label="Confirmation"></e-step>
  </e-steps>
</ejs-stepper>

Use the stepChanging event to validate form data before allowing step progression.

Pattern 2: Dynamic Step Icons
<ejs-stepper>
  <e-steps>
    <e-step *ngFor="let step of steps" 
            [label]="step.label" 
            [iconCss]="step.icon"></e-step>
  </e-steps>
</ejs-stepper>

Bind step data dynamically using *ngFor directive.

Pattern 3: Linear Workflow
<ejs-stepper [linear]="true">
  <e-steps>
    <e-step label="Step 1"></e-step>
    <e-step label="Step 2"></e-step>
    <e-step label="Step 3"></e-step>
  </e-steps>
</ejs-stepper>

Enable linear property to enforce sequential progression.

Pattern 4: Event Handling
onStepChanged(args: StepperChangedEventArgs) {
  console.log(`Active step index: ${args.activeStep}`);
}

onStepChanging(args: StepperChangingEventArgs) {
  if (!isFormValid()) {
    args.cancel = true; // Prevent step change
  }
}

Use event handlers to track navigation and validate progress.

Key Properties Summary

PropertyTypeDefaultWhen to Use
stepTypeStepTypeDefaultChange display style: Default, Indicator, Label
orientationOrientationHorizontalSet layout: Horizontal or Vertical
linearbooleanfalseEnforce sequential progression
activeStepnumber0Set current active step (0-indexed)
animationStepperAnimationSettingsModelenabledConfigure transition animations
showTooltipbooleanfalseDisplay tooltips on step hover
labelPositionstringBottomPosition labels: Top, Bottom, Start, End
readOnlybooleanfalseDisable all step interactions
cssClassstring-Apply custom CSS classes
enableRtlbooleanfalseEnable RTL for Arabic, Hebrew, Urdu
enablePersistencebooleanfalsePersist state between page reloads
localestringen-USSet language/culture

For complete API reference with code examples, see: 📚 API Reference

Common Use Cases

Wizard Forms: Implement multi-step form wizards with validation at each step Onboarding Flow: Guide new users through setup or introduction steps Process Tracking: Display workflow progress (order processing, job applications) Multi-Step Checkout: Create shopping cart workflows with address and payment steps Setup Assistants: Configure tools or services through guided step-by-step setup Document Submission: Multi-step document upload with validation


Next Steps: Select a reference above based on what you need to implement. Start with getting-started.md if this is your first time using the Stepper component.

Comments

Markdown supported