
syncfusion-javascript-stepper
Create and implement the Syncfusion TypeScript Stepper navigation component. Use this skill whenever a user wants to display a progress indicator with steps, implement a wizard workflow, show a multi-step process, display navigation between form pages, add step validation, or configure step-by-step guided experiences. Always reference this skill when working with Stepper controls, step configuration, orientations, events, or animations.
- Installs
- 54
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/syncfusion/javascript-ui-controls-skills --skill syncfusion-javascript-stepper- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads syncfusion-javascript-stepper automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Implementing Syncfusion TypeScript Stepper Control
Complete Table of Contents
1. Getting Started
- Getting Started Guide
- Installation & Setup
- First Stepper
- CSS Themes
2. API Reference
- Complete API Reference
- Stepper Properties (15 properties)
- Stepper Methods (12 methods)
- Stepper Events (5 events)
- Step Properties (8 properties)
- Enums & Types (4 enums)
- Animation Settings (3 properties)
- Event Arguments (4 argument interfaces)
3. Core Concepts
-
Steps Configuration
- Adding & Managing Steps
- Step Properties (label, iconCss, text, disabled, optional, status, isValid)
- Disabling Steps
- Setting Read-Only Mode
- Setting Active Step
- Icon-Only, Label-Only, and Hybrid Steps
- Validation States
-
Step Types
- Default Type (Icons + Labels)
- Label-Only Type
- Indicator-Only Type
- Label Positioning (Top, Bottom, Start, End)
- Type Comparison & Selection
- Switching Types Dynamically
-
Orientations & Layout
- Horizontal Orientation (Default)
- Vertical Orientation
- Responsive Behavior
- Dynamic Layout Switching
- Layout-Specific Styling
4. Advanced Features
-
Events & Interaction
- All 5 Events:
- created
- beforeStepRender
- stepClick
- stepChanging (with cancellation)
- stepChanged
- Event Arguments & Properties
- Event Handling Patterns
- Validation with Events
- User Interaction Detection
- All 5 Events:
-
Templates & Animation
- Custom Step Templates
- Template Context Variables
- Template Data Binding
- Tooltip Customization
- Animation Configuration
- Animation Duration & Delay
- Animation Enable/Disable
-
Validation & Globalization
- Step Validation (isValid states)
- Linear Flow Enforcement
- Preventing Invalid Transitions
- Localization (L10n, Locale)
- Right-to-Left (RTL) Support
- Multi-Language Support
- Accessibility (ARIA, Keyboard Navigation)
5. Utilities & Patterns
- Troubleshooting & Best Practices
- Common Setup Issues
- Event Handling Best Practices
- Form Validation Patterns
- CSS Customization
- Theme Integration
- Performance Optimization
- Edge Cases & Solutions
When to Use This Skill
Use the Syncfusion TypeScript Stepper skill when you need to:
- Display a multi-step process or wizard workflow
- Create a progress indicator showing completion status
- Build a form wizard with validation between steps
- Show step-by-step guided experiences (checkout, onboarding, setup)
- Add step navigation with back/forward controls
- Implement linear workflow validation
- Create checkpoint-based processes with tracking
- Enable step customization with icons, labels, and templates
- Handle step events and user interactions
- Support multiple orientations (horizontal/vertical layouts)
Stepper Overview
The Stepper is a navigation control that displays a series of logical steps to guide users through a workflow. Each step can have:
- Indicators (numbers, icons, or shapes)
- Labels (text descriptions)
- Status tracking (active, completed, disabled)
- Event handlers for step transitions
- Custom templates for rich content
- Flexible styling with themes
Key Characteristics
| Aspect | Description |
|---|---|
| Component | Navigation control for multi-step workflows |
| Steps | Array of step objects with properties |
| Indicators | Numbered or icon-based step markers |
| Orientations | Horizontal (default) or Vertical layouts |
| Types | Default (icon+label), Label-only, Indicator-only |
| Events | created, beforeStepRender, stepClick, stepChanging, stepChanged |
| Methods | 12 control methods (nextStep, previousStep, reset, etc.) |
| Properties | 15 stepper + 8 step properties |
| Customization | Templates, animations, themes, CSS styling |
Documentation and Navigation Guide
📚 Learning Path (Recommended Order)
-
Start Here: Getting Started
- Installation and npm package setup
- Dependencies (ej2-navigations, ej2-base, ej2-popups)
- Development environment configuration
- Basic stepper initialization with code examples
- CSS imports and theme setup
-
Fundamentals: Steps Configuration
- Adding steps to the stepper
- Step properties (iconCss, text, label, cssClass, disabled, status)
- Using StepModel interface for type safety
- Step arrays and dynamic step updates
- Accessing and modifying steps at runtime
-
Data Organization: Step Types
- Default type: icons with labels
- Label-only type: text descriptions only
- Indicator-only type: numbers or icons only
- Label positions (top, bottom, start, end)
- Choosing the right type for your use case
-
UI Layout: Orientations and Layout
- Horizontal orientation (default, side-by-side)
- Vertical orientation (stacked, one above another)
- Responsive behavior and switching
- Layout-specific styling
-
Interactivity: Events and Interaction
- stepChanged: when step successfully changes
- stepChanging: before step change (can cancel)
- stepClick: user clicked a step
- beforeStepRender: before rendering each step
- created: initialization complete
- Event arguments and patterns
-
Enhancements: Templates and Animation
- Custom HTML templates for step content
- Template data binding
- Animation settings and timing
- Animation duration and delay
- Tooltip customization
-
Production: Validation and Globalization
- Form validation patterns
- Linear workflow enforcement
- Multi-language support
- Right-to-left (RTL) support
- Accessibility compliance
-
Troubleshooting: Best Practices
- Common issues and solutions
- Performance optimization
- CSS customization
- Theme integration
- Edge cases
🔍 Quick Navigation by Topic
By Feature:
- 📄 Steps Configuration - Working with steps
- 📄 Step Types - Display options
- 📄 Orientations - Layout options
- 📄 Events & Interaction - Handling user actions
By Use Case:
- 🧩 Form Wizard: See Events & Interaction and Validation
- 🛒 Checkout Flow: See Steps Configuration and Events
- 🎨 Custom Styling: See Templates & Animation and Best Practices
- 🌍 Multi-Language: See Validation & Globalization
By API Lookup:
- 🔗 Complete API Reference - All properties, methods, events, and enums
Quick Start Example
Here's a minimal stepper setup to get started immediately:
import { Stepper } from '@syncfusion/ej2-navigations';
// Create a basic stepper with 4 steps
let stepper: Stepper = new Stepper({
steps: [
{ label: 'Cart' },
{ label: 'Shipping' },
{ label: 'Payment' },
{ label: 'Confirmation' }
]
});
// Render to DOM
stepper.appendTo('#stepper');
<nav id="stepper"></nav>
Common Patterns
Pattern 1: Icon + Label Steps (Default)
import { Stepper, StepModel } from '@syncfusion/ej2-navigations';
let steps: StepModel[] = [
{ iconCss: 'sf-icon-cart', label: 'Cart' },
{ iconCss: 'sf-icon-truck', label: 'Shipping' },
{ iconCss: 'sf-icon-payment', label: 'Payment' }
];
let stepper: Stepper = new Stepper({ steps: steps });
stepper.appendTo('#stepper');
Pattern 2: Vertical Workflow with Events
import { Stepper } from '@syncfusion/ej2-navigations';
let stepper: Stepper = new Stepper({
steps: [{}, {}, {}, {}],
orientation: 'Vertical',
stepChanged: (args) => console.log('Changed to step:', args.activeStep),
stepChanging: (args) => {
if (!validateCurrentStep()) args.cancel = true;
}
});
stepper.appendTo('#stepper');
Pattern 3: Form Wizard with Validation
import { Stepper, StepperChangingEventArgs } from '@syncfusion/ej2-navigations';
let stepper: Stepper = new Stepper({
steps: [
{ label: 'Personal Info' },
{ label: 'Address' },
{ label: 'Review' }
],
linear: true, // Must complete steps in order
stepChanging: (args: StepperChangingEventArgs) => {
// Validate current step before allowing transition
if (!isCurrentStepValid()) {
args.cancel = true; // Prevent step change
}
}
});
stepper.appendTo('#stepper');
Pattern 4: Dynamic Step Management
import { Stepper } from '@syncfusion/ej2-navigations';
let stepper: Stepper = new Stepper({
steps: [{}, {}, {}, {}],
activeStep: 0
});
stepper.appendTo('#stepper');
// Navigate with methods
stepper.nextStep(); // Move to next step
stepper.previousStep(); // Move to previous step
stepper.reset(); // Return to first step
// Update properties
stepper.activeStep = 2;
stepper.dataBind(); // Apply changes
Key Properties at a Glance
Stepper Control Properties
| Property | Type | Default | Description |
|---|---|---|---|
steps | StepModel[] | [] | Array of step definitions |
activeStep | number | 0 | Currently active step (zero-based) |
stepType | string | 'Default' | Type: Default, Label, or Indicator |
orientation | string | 'Horizontal' | Layout: Horizontal or Vertical |
labelPosition | string | 'Bottom' | Label placement: Top, Bottom, Start, End |
linear | boolean | false | Enforce sequential navigation |
readOnly | boolean | false | Disable all interactions |
showTooltip | boolean | false | Show tooltips on steps |
animation | object | {...} | Animation settings (enable, duration, delay) |
locale | string | 'en-US' | Language/region code |
enableRtl | boolean | false | Right-to-left rendering |
enablePersistence | boolean | false | Save state in localStorage |
Step Properties
| Property | Type | Default | Description |
|---|---|---|---|
label | string | '' | Step label text |
text | string | '' | Step description |
iconCss | string | '' | Step icon CSS class |
status | string | 'NotStarted' | NotStarted, InProgress, Completed |
isValid | boolean | null | null | Validation state (true/false/null) |
disabled | boolean | false | Disable this step |
optional | boolean | false | Step is optional |
cssClass | string | '' | Custom CSS class |
Common Use Cases
Checkout Wizard: Multi-step purchase flow with cart, shipping, payment, and confirmation steps.
Form Wizard: Split long forms across multiple steps with validation at each stage.
Onboarding Flow: Guide new users through setup steps with progress indication.
Task Workflow: Track progress through a series of tasks or milestones.
Process Tracker: Display current position in a documented process flow.
Multi-Page Survey: Distribute survey questions across steps with progress tracking.
API Reference Quick Links
- Complete API Documentation
- Stepper Properties (15 total)
- Stepper Methods (12 total)
- Stepper Events (5 total)
- Step Properties (8 total)
- Enums (4 types)
- Animation Settings
- Event Arguments
🚀 Ready to implement? Start with Getting Started to set up your first stepper, or jump to the API Reference for complete documentation.
FAQ
What does the syncfusion-javascript-stepper skill do?
Create and implement the Syncfusion TypeScript Stepper navigation component. Use this skill whenever a user wants to display a progress indicator with steps, implement a wizard workflow, show a multi-step process, display navigation between form pages, add step validation, or configure step-by-step guided experiences. Always reference this skill when working with Stepper controls, step configuration, orientations, events, or animations.
How do I install syncfusion-javascript-stepper?
Run npx skills add https://github.com/syncfusion/javascript-ui-controls-skills --skill syncfusion-javascript-stepper in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/syncfusion-javascript-stepper/ (personal) or .claude/skills/syncfusion-javascript-stepper/ (project).
Which AI agents can use syncfusion-javascript-stepper?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is syncfusion-javascript-stepper safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains syncfusion-javascript-stepper?
It is published by syncfusion in syncfusion/javascript-ui-controls-skills. It has 54 recorded installs.
More from syncfusion/javascript-ui-controls-skills
syncfusion-javascript-grid
syncfusion/javascript-ui-controls-skills
Open the skill to read its SKILL.md instructions.
syncfusion-javascript-common
syncfusion/javascript-ui-controls-skills
Common utilities and features for Syncfusion JavaScript controls. Use this skill when the user needs to implement animations, drag-and-drop, state persistence, RTL support, localization, globalization, security, templates, and advanced features for Syncfusion JavaScript controls.
syncfusion-javascript-dropdowns
syncfusion/javascript-ui-controls-skills
Comprehensive guide for implementing Syncfusion TypeScript dropdown components including AutoComplete, ComboBox, Mention, Dropdownlist, Multiselect, ListBox, and MultiColumn ComboBox. Use this when building selection interfaces, data binding, filtering, cascading dropdowns, dual list transfer, custom templates, and accessible dropdown experiences.
syncfusion-javascript-popups
syncfusion/javascript-ui-controls-skills
Open the skill to read its SKILL.md instructions.
syncfusion-javascript-license
syncfusion/javascript-ui-controls-skills
Open the skill to read its SKILL.md instructions.
syncfusion-javascript-tab
syncfusion/javascript-ui-controls-skills
Open the skill to read its SKILL.md instructions.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.