
syncfusion-javascript-grid
Implements Syncfusion JavaScript 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, hierarchy grids, state persistence, and advanced data management features for data-intensive applications.
- Installs
- 76
- 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-grid- 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-grid 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.
Syncfusion JavaScript Grid Component Skill
⚠️ Security & Trust Boundary
- The Grid skill does not perform any remote data access.
- All external API interaction is handled by a separate DataManager skill outside this skill’s trust boundary.
Table of Contents
- When to Use This Skill
- Grid Overview
- Mandatory Rules for Inbuilt API
- Documentation and Navigation Guide
- Quick Start Example
- Common Patterns
- Key Props and Configuration
When to Use This Skill
Use this skill when you need to:
- Build interactive data grids with multiple columns and rows
- Perform CRUD operations (create, read, update, delete)
- Filter, sort, and search large datasets
- Group and aggregate data with summaries
- Export data to Excel or PDF formats
- Implement row selection or multi-select scenarios
- Create responsive data tables with virtual scrolling
- Customize grid styling and appearance
- Handle editing modes (inline, dialog, batch)
- Persist grid state across sessions
- Work with TypeScript and modern module systems
Grid Overview
The Syncfusion EJ2 Grid is a powerful, high-performance data grid component for TypeScript that provides:
- Flexible data binding (local, remote, OData)
- Rich column features (templates, spanning, foreign keys, frozen)
- Advanced editing (inline, dialog, batch, command columns)
- Powerful filtering (menu, bar, excel-like)
- Multi-level grouping with custom aggregates
- 6+ selection modes (row, cell, column, checkbox)
- Export capabilities (Excel, PDF with templates)
- Performance optimization (virtual/infinite scrolling)
- Complete customization (themes, styling, events)
Mandatory Rules for Inbuilt API
CRITICAL: Follow these rules when using Grid's inbuilt API (137+ methods, 65+ events, 95+ properties):
Rule 1: Module Injection Required for Feature Methods
Methods only work if their module is injected. No error thrown if module missing.
| Method | Required Module | Example |
|---|---|---|
goToPage() | Page | Grid.Inject(Page) or Inject(Page) |
sortColumn() | Sort | Grid.Inject(Sort) or Inject(Sort) |
filterByColumn() | Filter | Grid.Inject(Filter) or Inject(Filter) |
addRecord(), deleteRecord() | Edit | Grid.Inject(Edit) or Inject(Edit) |
📄 Full Properties API Reference: references/api-reference.md 📄 Full Methods API Reference: references/programmatic-api.md 📄 Full Events API Reference: references/events-catalog.md 📄 Backend Integration: references/adaptors.md
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
- Installation and npm package setup
- TypeScript module imports and configuration
- CSS imports and theme selection
- Basic grid initialization with sample data
- Injecting required modules
Column Features
📄 Read: references/columns.md
- Column types (string, number, date, boolean)
- Column binding and properties
- Data type formatting
- Column width and basic configuration
- Foreign-key columns
- Frozen columns
- Column templates and custom rendering
- Column spanning
- Column width management
- Column chooser (show/hide columns)
- Column headers and customization
- Column menu
- Column reordering
- Column resizing
📄 Read: references/command-column.md
- Command column basics
- Built-in command types (edit, delete, save, cancel)
- Custom command buttons
- Command templates
- Command event handling
- Row-level actions
Data Binding
📄 Read: references/data-binding.md
- Local data binding with arrays
- Remote data binding (URL, OData, WebAPI)
- Query and URL adapters
- Dynamic data source changes
- Immutable mode for optimized rendering performance with large datasets
- Loading indicators (Spinner, Shimmer)
- Data refresh and source switching
Editing
📄 Read: references/editing.md
- All CRUD operations configuration
- Edit settings and modes
- Validation and error handling
- Server-side data persistence
- Edit event handling
Data Validation
📄 Read: references/validation.md
- Built-in validators (required, min, max, pattern)
- Validation rules by column data type (number, string, date)
- Custom validation functions
- Dependent validation (validate based on other column values)
- Dynamic rules (add/remove at runtime)
- Error positioning and display
- CRUD error handling (client + server validation)
- Duplicate detection for unique fields
- Async validation with server checks
- Integration with edit modes, events, and filtering
Filtering Operations
📄 Read: references/filter-setup.md
- Setup filtering module
- Enable filtering feature
- Filter types overview
- Disable filtering for columns
- Quick reference
📄 Read: references/filter-operators.md
- Filter operators (21+ types)
- Initial filters (OR and AND logic)
- Wildcard and LIKE filters
- Case sensitivity
- Diacritics filter
📄 Read: references/filter-types.md
- FilterBar filter with template lifecycle
- Menu filter with custom operators
- Excel/CheckBox filter with multi-select
- Custom filter UI components
- Infinite scrolling for large data
- Comparison of filter types
Sorting
📄 Read: references/sorting.md
- Enable sorting on columns
- Sort multiple columns
- Custom sort comparison
- Sort direction (ascending/descending)
- Sorting with field mapping
Grouping and Aggregates
📄 Read: references/grouping.md
- Enable grouping feature
- Group by single/multiple columns
- Group caption templates
- Multi-level grouping
- Lazy-load grouping for performance
- Collapse/expand groups
📄 Read: references/aggregates.md
- Built-in aggregates (Sum, Avg, Min, Max, Count)
- Custom aggregate functions
- Footer aggregates
- Group-level aggregates
- Reactive aggregate updates
Selection Modes
📄 Read: references/selection.md
- Row selection modes
- Cell selection mode
- Column selection mode
- Checkbox selection
- Multi-select configurations
- Selection events and methods
Row Operations
📄 Read: references/row.md
- Detail row templates (master-detail)
- Row drag and drop
- Row pinning (freeze top/bottom rows)
- Row spanning
- Custom row templates
- Row height management
Freezing & Pinning
📄 Read: references/frozen.md
- Freeze columns
- Freeze rows
- Freeze headers
- Row pinning
- Frozen column behavior
- Performance optimization with frozen columns
- Combining frozen columns with virtual scrolling
Hierarchy & Nested Data
📄 Read: references/hierarchy-grid.md
- Parent-child data structures
- Child grid configuration with queryString
- Expand and collapse behavior
- Nested grid templates
- Detail row templates
- Hierarchical data configuration
- Multi-level hierarchy (3-4 levels)
- Dynamic data binding for child grids
- Programmatic expand/collapse control
- Performance considerations for nested data
Scrolling and Performance
📄 Read: references/scrolling.md
- Virtual scrolling for large datasets
- Infinite scrolling
- Scroll performance optimization
- Scroll events
- Scroll behavior settings
Pagination
📄 Read: references/paging.md
- Page size configuration
- Pagination types (numeric, combo, custom)
- Page size options
- Current page navigation
- Total records handling
Searching
📄 Read: references/searching.md
- Enable search functionality
- Multi-column search
- Search operators
- Clear search method
- Search performance
Toolbar
📄 Read: references/toolbar.md
- Built-in toolbar items (add, edit, delete, save, cancel)
- Custom toolbar templates
- Toolbar item configuration
- Custom buttons and functions
- Toolbar events
Context Menu
📄 Read: references/context-menu.md
- Built-in context menu items
- Custom context menus
- Context menu configuration
- Context menu events
- Right-click menu handling
- Submenu items and grouping
- Selection-based menu display
Event Communication
📄 Read: references/events-catalog.md
- Mandatory rules for event handling
- Event binding patterns (configuration, addEventListener, property assignment)
- 85+ grid events by category (lifecycle, action, row, cell, edit, column, etc.)
- requestType catalog for action events
- Cancellation patterns for actionBegin and before-events
- Event timing and firing sequences
- Events for data changes, user interactions, and operations
Export Features
📄 Read: references/excel-export.md
- Export to Excel basics
- Export options and customization
- Template rendering in export
- Server-side export
- Exporting filtered/grouped data
📄 Read: references/pdf-export.md
- Export to PDF basics
- Export options and customization
- Headers and footers
- Template rendering in export
- Server-side PDF export
- Page orientation and sizing
📄 Read: references/print.md
- Print grid functionality
- Print settings and options
- Print templates
- Print formatting
- Print preview
Configuration Management
📄 Read: references/global-local.md
- Global grid settings
- Local column configuration
- Configuration precedence
- Configuration merging
- Dynamic configuration patterns
- Best practices and templates
📄 Read: references/state-management.md
- Save grid state to storage
- Restore grid state
- Persist state across sessions
- State methods (save, restore, clear)
- Local storage integration
⚠️ Rule: enablePersistence: true must be enable when use state management in grid.
Localization & Internationalization
📄 Read: references/localization.md
- Multi-language support (60+ languages)
- Locale setup and culture configuration
- Number, date, and currency formatting
- RTL support (Arabic, Hebrew, Farsi)
- Custom localization and translation
- Language switcher implementation
Styling and Appearance
📄 Read: references/styling-appearance.md
- Available themes (Fluent, Bootstrap, Tailwind)
- CSS customization
- Custom CSS classes
- Row/cell styling
- Appearance methods
- Dark mode support
Cell
📄 Read: references/cell.md
- Cell selection and manipulation
- Get/set cell values
- Cell formatting and styling
- Cell templates
- Cell events and interactions
- Bulk cell operations
Clipboard
📄 Read: references/clipboard.md
- Copy/paste functionality
- Clipboard operations
- Copy selected cells
- Paste data
- Clipboard formatting
Accessibility
📄 Read: references/accessibility.md
- WCAG 2.2 & Section 508 compliance
- Keyboard navigation (Tab, Enter, Escape, Arrows)
- WAI-ARIA 1.2 implementation
- Screen reader support (NVDA, JAWS)
- Color contrast ratios (4.5:1, 3:1)
- Focus management and restoration
- ARIA live regions for dynamic updates
- Accessibility testing with axe and screen readers
Responsive Design
📄 Read: references/responsive-adaptive.md
- Responsive grid layouts
- Mobile and tablet design
- Touch interactions and gestures
- Responsive columns (show/hide)
- Stack mode for mobile
- Media queries for different screen sizes
- Orientation change handling
Performance Optimization
📄 Read: references/performance-optimization.md
- Virtual scrolling for large datasets
- Lazy loading groups and details
- Data aggregation and caching
- Memory management
- Performance benchmarking
- Best practices for 10k+ rows
- Remote data optimization
Module System
📄 Read: references/modules.md
- Module injection pattern
- Available modules and feature mapping
- Module dependencies
- Bundle optimization strategies
- Common feature combinations
- Dynamic module loading
Data Adaptors
📄 Read: references/adaptors.md
- URL/HTTP adaptor for RESTful APIs
- ODataV4 adaptor for standard OData services
- WebAPI adaptor for ASP.NET WebAPI
- WebMethod adaptor for legacy ASMX Web Services
- RemoteSave adaptor for separate read/write endpoints
- Custom adaptor for proprietary APIs
- GraphQL adaptor for GraphQL endpoints
- Adaptor selection guide and comparison
- Implementation patterns and error handling
Chart Integration
📄 Read: references/chart-integration.md
- Embed charts in detail templates
- Multi-chart dashboards
- Grid and chart data synchronization
- Interactive drill-down charts
- Real-time updating charts
- KPI visualization
API Reference
📄 Read: references/api-reference.md
- Grid properties reference
- Methods and function signatures
- Events reference
- Settings objects (PageSettings, FilterSettings, etc.)
- Common configuration patterns
- Quick code examples
Programmatic Control (Methods)
📄 Read: references/programmatic-api.md
- Grid instance reference and method access
- Mandatory usage rules for methods
- Data and module methods (refresh, dataBind, destroy)
- Row access and manipulation methods (add, update, delete)
- Row selection methods (selectRow, selectRows, getSelectedRecords)
- Column access and manipulation methods (show, hide, reorder)
- Sorting, grouping, filtering methods
- Editing and batch operation methods
- Export and print methods (Excel, PDF, CSV)
- Toolbar and hierarchy methods
- DOM element access methods
- Utility methods (event listeners, templates, spinners)
- Quick usage examples for common scenarios
Quick Start Example
import { Grid } from '@syncfusion/ej2-grids';
// Sample data
const data = [
{ OrderID: 10248, CustomerName: 'VINET', TotalAmount: 32.38 },
{ OrderID: 10249, CustomerName: 'TOMSP', TotalAmount: 11.61 }
];
// Create grid
const grid = new Grid({
dataSource: data,
columns: [
{ field: 'OrderID', headerText: 'Order ID', width: 120, type: 'number' },
{ field: 'CustomerName', headerText: 'Customer Name', width: 150 },
{ field: 'TotalAmount', headerText: 'Total Amount', width: 120, type: 'number', format: 'C2' }
],
allowPaging: true,
pageSettings: { pageSize: 10 },
allowSorting: true,
allowFiltering: true,
selectionSettings: { type: 'Multiple', mode: 'Row' }
});
// Render grid
grid.appendTo('#grid');
Common Patterns
Pattern 1: Read-Only Grid with Search
Use when displaying data without editing. Enable sorting, filtering, and searching. Read: references/getting-started.md → references/sorting.md → references/filter-setup.md → references/searching.md
Pattern 2: Editable Grid with Validation
Use when users need to modify data. Setup editing modes, validation, and toolbar. Read: references/editing.md → references/validation.md → references/toolbar.md
Pattern 3: Grouped Data with Summaries
Use when analyzing aggregated data by groups. Setup grouping and custom aggregates. Read: references/grouping.md → references/aggregates.md
Pattern 4: Large Dataset with Virtual Scrolling
Use for performance with 10k+ rows. Enable virtual scrolling. Read: references/scrolling.md → references/paging.md
Pattern 5: Master-Detail Hierarchy
Use when displaying nested/related data. Setup detail templates. Read: references/row.md
Pattern 6: Data Export
Use when users need to export to Excel or PDF. Read: references/excel-export.md → references/pdf-export.md
Key Props and Configuration
| Property | Type | Use Case |
|---|---|---|
dataSource | Array/URL | Bind grid data from local array or remote URL |
columns | ColumnModel[] | Define column structure, types, templates |
allowEditing | Boolean | Enable inline/dialog row editing |
allowFiltering | Boolean | Enable filter bar for columns |
allowSorting | Boolean | Enable sort on column headers |
allowGrouping | Boolean | Enable group by columns |
allowPaging | Boolean | Enable pagination |
allowSelection | Boolean | Enable row/cell selection |
editSettings | EditSettings | Configure edit mode (inline/dialog/batch) |
filterSettings | FilterSettings | Configure filter type (menu/bar/excel) |
groupSettings | GroupSettings | Configure grouping behavior |
pageSettings | PageSettings | Configure page size and type |
selectionSettings | SelectionSettings | Configure selection mode (row/cell/checkbox) |
toolbar | string[] | Add toolbar for CRUD operations |
FAQ
What does the syncfusion-javascript-grid skill do?
Implements Syncfusion JavaScript 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, hierarchy grids, state persistence, and advanced data management features for data-intensive applications.
How do I install syncfusion-javascript-grid?
Run npx skills add https://github.com/syncfusion/javascript-ui-controls-skills --skill syncfusion-javascript-grid 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-grid/ (personal) or .claude/skills/syncfusion-javascript-grid/ (project).
Which AI agents can use syncfusion-javascript-grid?
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-grid 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-grid?
It is published by syncfusion in syncfusion/javascript-ui-controls-skills. It has 76 recorded installs.
More from syncfusion/javascript-ui-controls-skills
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-license
syncfusion/javascript-ui-controls-skills
Open the skill to read its SKILL.md instructions.
syncfusion-javascript-popups
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.
syncfusion-javascript-gantt-chart
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.