
syncfusion-angular-listview
Guide for implementing Syncfusion Angular ListView component. Use this skill when building interactive lists with data binding, grouping, templates, selection, events, drag-and-drop, or virtualization features. This skill covers getting started, data binding, customization, selection, advanced features, specialized use cases, styling, and accessibility for building production-ready list interfaces.
- Installs
- 263
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/syncfusion/angular-ui-components-skills --skill syncfusion-angular-listview- 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-angular-listview 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 Angular ListView
The Syncfusion Angular ListView component is a feature-rich, interactive component for displaying data in list format. It provides built-in support for data binding, grouping, nested lists, custom templates, selection modes, drag-and-drop, virtualization for large datasets, and comprehensive accessibility features. The component is production-ready and suitable for creating modern, data-driven user interfaces.
When to Use This Skill
Use this skill when:
- Building interactive list-based interfaces with Angular
- Displaying data from local or remote sources
- Creating grouped or nested list structures
- Customizing list item appearance with templates
- Handling item selection and user interactions
- Implementing specialized patterns (chat windows, checklists, dual-lists)
- Optimizing performance with virtualization for large datasets
- Building accessible list interfaces
Component Overview
Package: @syncfusion/ej2-angular-lists
Key Capabilities:
- ✅ Local and remote data binding (arrays, DataManager, OData, REST APIs)
- ✅ Grouping and nested list hierarchies
- ✅ Flexible item, header, and group templates
- ✅ Single/multiple selection modes with checkboxes
- ✅ Full event system (select, click, delete, add, remove)
- ✅ Drag-and-drop for item reordering
- ✅ Virtualization for large datasets (1000+ items)
- ✅ AJAX content loading and dynamic templates
- ✅ Integrated paging support
- ✅ Comprehensive theming and styling options
- ✅ WCAG accessibility compliance
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
- Angular CLI setup and project configuration
- Installing @syncfusion/ej2-angular-lists package
- Adding CSS themes and styles
- Creating your first ListView component
- Basic data binding with minimal examples
- Running the application (ng serve)
Data Binding
📄 Read: references/data-binding.md
- Binding local data arrays (strings, objects)
- Field configuration and data mapping
- Remote data binding with DataManager
- OData and REST API integration
- Dynamic data updates and refresh strategies
- Field properties: id, text, isChecked, enabled, tooltip, groupBy
Customization and Templates
📄 Read: references/customization-and-templates.md
- Header template customization with buttons and search bars
- Item templates with avatars, badges, multi-line layouts
- Group header templates with dynamic content
- Dynamic templates based on device or screen size
- Built-in CSS classes (e-list-template, e-list-wrapper, e-list-avatar, etc.)
- Advanced template patterns with data binding
Grouping and Nested Lists
📄 Read: references/grouping-and-nested-lists.md
- Grouping items by category with groupBy field
- Customizing group headers and templates
- Creating nested list structures for hierarchical data
- Child data binding and expandable groups
- Group header customization with item counts
Selection and Item Management
📄 Read: references/selection-and-items.md
- Selection modes (single, multiple, checkbox)
- Getting selected items with getSelectedItems() method
- Adding items dynamically with addItem()
- Removing items with removeItem()
- Event handling (select, actionComplete)
- Programmatic selection and deselection
Advanced Features
📄 Read: references/advanced-features.md
- Virtualization for high-performance large datasets
- Scrolling and scroll position management
- Drag-and-drop for item reordering
- Filtering and searching list items
- Integrating pager component with ListView
- Loading states and spinners during data fetch
- AJAX content loading into list items
Specialized Use Cases
📄 Read: references/specialized-use-cases.md
- Building chat window layouts
- Creating checklist interfaces with checkboxes
- Building dual-list (transfer list) components
- Creating grid-based layouts with ListView
- Rendering hyperlinked navigation lists
- Customizing with dynamic tags and badges
- Mobile contact layout patterns
Styling and Themes
📄 Read: references/styling-and-themes.md
- Theme imports (Material3, Bootstrap, Fabric, Tailwind)
- CSS class customization and overrides
- Custom styling for list items and groups
- Responsive design and mobile optimization
- Animation settings and transitions
- RTL (right-to-left) support
- Dark mode theming
Item Count and Group Headers
📄 Read: references/item-count-and-grouping.md
- Displaying item count in group headers
- Dynamic count calculation and updates
- Group statistics and aggregations
- Advanced group header templates
- Conditional item count display
Accessibility
📄 Read: references/accessibility.md
- WCAG 2.1 compliance and keyboard navigation
- ARIA attributes and screen reader support
- Focus management and indicators
- Keyboard shortcuts and navigation patterns
- Color contrast and accessible theming
- Testing accessibility with assistive technologies
Complete API Reference
📄 Read: references/api-reference.md
- Properties: animation, enablePersistence, enableRtl, locale, query, and more
- Methods: back(), checkAllItems(), selectMultipleItems(), and complete method suite
- Events: select, scroll, actionBegin, actionComplete, actionFailure with argument details
- Complete working examples for each API
- Quick reference tables for properties, methods, and events
Quick Start Example
import { ListViewModule } from '@syncfusion/ej2-angular-lists';
import { Component } from '@angular/core';
@Component({
imports: [ListViewModule],
standalone: true,
selector: 'app-root',
template: `
<ejs-listview
id='sample-list'
[dataSource]='data'>
</ejs-listview>
`
})
export class AppComponent {
// Simple string data
public data: string[] = [
'Artwork', 'Abstract', 'Modern Painting',
'Ceramics', 'Animation Art', 'Oil Painting'
];
}
CSS Import (in styles.css):
@import "../node_modules/@syncfusion/ej2-base/styles/material3.css";
@import "../node_modules/@syncfusion/ej2-angular-lists/styles/material3.css";
Run:
npm install @syncfusion/ej2-angular-lists --save
ng serve --open
Common Patterns
Pattern 1: Data-Driven List with Field Mapping
Use when displaying complex objects with multiple properties:
public data = [
{ name: 'John', email: 'john@example.com', id: '1' },
{ name: 'Jane', email: 'jane@example.com', id: '2' }
];
public fields = { text: 'name', id: 'id' };
Pattern 2: Grouped List
Use when organizing items by category:
public fields = { text: 'name', groupBy: 'department' };
Pattern 3: Templated List
Use when you need custom layouts:
<ejs-listview [dataSource]='data' cssClass='e-list-template'>
<ng-template #template let-data="">
<div class="e-list-wrapper">
<span>{{ data.name }}</span>
</div>
</ng-template>
</ejs-listview>
Pattern 4: Selection with Checkboxes
Use when users need to select multiple items:
<ejs-listview [dataSource]='data' [showCheckBox]='true'></ejs-listview>
Pattern 5: Dynamic Add/Remove
Use for interactive list management:
addItem() {
this.listview.addItem([{ text: 'New Item', id: 'new' }]);
}
removeItem(element: HTMLElement) {
this.listview.removeItem(element);
}
Key Props and Configuration
| Property | Type | Description |
|---|---|---|
dataSource | array/DataManager | The data to display in the list |
fields | object | Field mappings (text, id, groupBy, etc.) |
template | string/function | Custom template for list items |
headerTemplate | string/function | Custom header template |
groupTemplate | string/function | Custom group header template |
showCheckBox | boolean | Show checkboxes for selection (default: false) |
showHeader | boolean | Display ListView header (default: false) |
headerTitle | string | Title for the header |
enableVirtualization | boolean | Enable virtual scrolling for large datasets |
enableHtmlSanitizer | boolean | Sanitize HTML content (default: true) |
allowDragAndDrop | boolean | Enable drag-and-drop reordering |
select | event | Triggered when item is selected |
actionComplete | event | Triggered after add/remove operations |
Common Use Cases
- Task Manager - Dynamic add/remove with checkboxes and drag-drop
- Contact Directory - Multi-line templates with grouping by department
- Chat Interface - Custom templates with avatars and timestamps
- Product Catalog - Virtualization for thousands of products
- Navigation Menu - Nested lists with icons and routing
- Checklist - Checkbox selection with count in headers
- Dual-List Transfer - Two ListViews with move operations
- Mobile Navigation - Touch-friendly, responsive list layout
Next Steps
- Start here: Getting Started
- Bind data: Data Binding
- Build interactive: Selection and Items
- Optimize performance: Advanced Features
- Advanced patterns: Specialized Use Cases
For API reference and detailed documentation, see the Syncfusion Angular ListView API.
FAQ
What does the syncfusion-angular-listview skill do?
Guide for implementing Syncfusion Angular ListView component. Use this skill when building interactive lists with data binding, grouping, templates, selection, events, drag-and-drop, or virtualization features. This skill covers getting started, data binding, customization, selection, advanced features, specialized use cases, styling, and accessibility for building production-ready list interfaces.
How do I install syncfusion-angular-listview?
Run npx skills add https://github.com/syncfusion/angular-ui-components-skills --skill syncfusion-angular-listview 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-angular-listview/ (personal) or .claude/skills/syncfusion-angular-listview/ (project).
Which AI agents can use syncfusion-angular-listview?
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-angular-listview 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-angular-listview?
It is published by syncfusion in syncfusion/angular-ui-components-skills. It has 263 recorded installs.
More from syncfusion/angular-ui-components-skills
syncfusion-angular-grid
syncfusion/angular-ui-components-skills
Implements Syncfusion Angular Grid component for feature-rich data tables and grids. Use this when working with data display, sorting, filtering, grouping, aggregates, editing, or exporting. This skill covers grid configuration, CRUD operations, virtual scrolling or infinite scrolling, hierarchy grids, state persistence, and advanced data management features for data-intensive applications.
syncfusion-angular-common
syncfusion/angular-ui-components-skills
Common utilities and features for Syncfusion Angular components. 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 Angular components.
syncfusion-angular-chart
syncfusion/angular-ui-components-skills
Implement Syncfusion Angular Chart component for professional data visualization. Use this when creating or customizing charts such as line, bar, column, area, pie, financial (candlestick, OHLC), scatter, bubble, or stock charts. Supports axes configuration, series binding, legends, tooltips, zooming, real-time updates, technical indicators, themes, export, and accessibility features.
syncfusion-angular-license
syncfusion/angular-ui-components-skills
Open the skill to read its SKILL.md instructions.
syncfusion-angular-themes
syncfusion/angular-ui-components-skills
Open the skill to read its SKILL.md instructions.
syncfusion-angular-rich-text-editor
syncfusion/angular-ui-components-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.