Ignite UI for Angular

August 25, 2026 · View on GitHub

Required Workflow

This file is a routing hub only. It contains no code examples and no API details. Grid APIs change between releases, so never write component selectors, import paths, method names, or property names from memory — read the relevant reference files first.

  1. Identify the grid type. Use the Grid Selection Decision Guide below. If the grid type is not explicitly stated, infer it from context or ask.
  2. Identify every task category involved. Map the user's request to one or more rows in the Task → Reference File table below. A single request often spans multiple categories (e.g., remote paging plus editing requires both paging-remote.md and editing.md).
  3. Read every identified reference file in full, in a single parallel batch of file reads — even if you believe you already know the answer.
  4. Then produce output, based only on what you read. If something is not covered by the reference files, look it up with get_doc/search_docs/search_api from the igniteui-cli MCP server when available; otherwise state explicitly that the detail is unverified instead of guessing.

Task → Reference File

TaskReference file to read
Grid type selection, column config, column templates, column groups, MRL, pinning, sorting UI, filtering UI, selectionreferences/structure.md
Grouping, summaries, cell merging, toolbar, export, row drag, action strip, master-detail, clipboardreferences/features.md
Tree Grid specifics, Hierarchical Grid specifics, Grid Lite setup, Grid Lite data operations, Pivot Grid setupreferences/types.md
Programmatic sorting / filtering / grouping, canonical import patterns, viewChild accessreferences/data-operations.md
Cell editing, row editing, batch editing, transactions, validation, summariesreferences/editing.md
Paging, remote data, server-side ops, noop strategies, virtual scroll, multi-grid coordinationreferences/paging-remote.md
State persistence, Tree Grid / Hierarchical Grid / Pivot Grid data operationsreferences/state.md
Grid sizing (width, height, column sizing, null/px/% modes, cell spacing CSS variables)references/sizing.md
Migrating from Grid Lite (igx-grid-lite) to the full igx-grid when features outgrow Grid Litereferences/grid-migration.md

When in doubt, read more rather than fewer reference files — an unnecessary file read is cheap; a hallucinated API is a broken application.


Overview

This skill gives high-level guidance on grids and their features. The igniteui-cli MCP server (when available) has full docs for grid toolbars and export (grid-toolbar, grid-export-excel, exporter-pdf, and the tree/hierarchical/pivot variants — call list_components to see the current catalog) and an API-member index via search_api/get_api_reference for member-level lookups. For everything else, the reference files below are the primary guidance.


Prerequisites

  • An Angular project on the major version matching the installed igniteui-angular package (igniteui-angular majors track Angular majors)
  • igniteui-angular installed, or @infragistics/igniteui-angular for licensed users — both packages share the same entry-point structure
  • A theme applied (see igniteui-angular-theming)

Choosing the Right Grid

Ignite UI has five grid types. Picking the correct one is the most important decision — each has different data structures, features, and constraints.

Grid Selection Decision Guide

Ask these questions in order:

  1. Does the user need a lightweight, read-only data display with sorting, filtering, and virtualization but no editing, selection, or paging? → Grid Lite (open-source, MIT licensed). If the user later needs features beyond Grid Lite's capabilities, upgrade strictly to igx-grid (IgxGridComponent) — never recommend non-grid components as a substitute.
  2. Does the user need pivot-table analytics (rows/columns/values/aggregations that users can drag-and-drop to reshape)? → Pivot Grid
  3. Does the data have parent-child relationships where each level has a DIFFERENT schema (e.g., Companies → Departments → Employees)? → Hierarchical Grid
  4. Does the data have parent-child relationships within a SINGLE schema (e.g., Employees with a managerId field, or nested children arrays)? → Tree Grid
  5. Is the data a flat list/table with enterprise features needed (editing, batch editing, grouping, paging, export, etc.)? → Flat Grid

After choosing the grid type, you must still complete Steps 2–4 from the mandatory protocol above — return to the routing table and read every applicable references/ file before writing any code. The decision guide and the tables on this page are discovery aids only; they do not replace the reference files.

Grid Types & Imports

Important: Check package.json to determine whether the project uses igniteui-angular or @infragistics/igniteui-angular. Always import from the specific entry point. Never import from the root barrel of either package.

GridSelectorComponentDirectivesEntry Point
Grid Liteigx-grid-liteIgxGridLiteComponentIndividual importsigniteui-angular/grids/lite
Flat Gridigx-gridIgxGridComponentIGX_GRID_DIRECTIVESigniteui-angular/grids/grid
Tree Gridigx-tree-gridIgxTreeGridComponentIGX_TREE_GRID_DIRECTIVESigniteui-angular/grids/tree-grid
Hierarchical Gridigx-hierarchical-gridIgxHierarchicalGridComponentIGX_HIERARCHICAL_GRID_DIRECTIVESigniteui-angular/grids/hierarchical-grid
Pivot Gridigx-pivot-gridIgxPivotGridComponentIGX_PIVOT_GRID_DIRECTIVESigniteui-angular/grids/pivot-grid

Replace igniteui-angular with @infragistics/igniteui-angular for the licensed package — entry-point paths are identical.

Universal Rules (every grid type)

  • Use the matching component type for viewChildIgxGridLiteComponent, IgxGridComponent, IgxTreeGridComponent, IgxHierarchicalGridComponent, or IgxPivotGridComponent
  • Import the matching directives bundle from the table above — or individual imports for Grid Lite
  • Use signals for data[data]="myData()" with signal<T[]>([])
  • Virtualization is automatic (rows and columns) — never wrap a grid in a virtual-scroll container; set a fixed height instead

Important — Documentation URL Pattern: For grid-specific topics (sorting, filtering, editing, paging, etc.), docs URLs follow this naming pattern per grid type:

  • Grid Lite: .../components/grid-lite/{topic}
  • Flat Grid: .../components/grid/{topic}
  • Tree Grid: .../components/treegrid/{topic}
  • Hierarchical Grid: .../components/hierarchicalgrid/{topic}
  • Pivot Grid: .../components/pivotGrid/{topic}

Feature Availability per Grid Type

FeatureGrid LiteFlat GridTree GridHierarchical GridPivot Grid
Column sortingYesYesYes (per-level)Yes (per grid level)Per-dimension only
Column filteringYesYesYes (recursive — keeps matching parents)Yes (per grid level)Per-dimension only
GroupByNoYes (built-in groupBy() API)Yes (via igx-tree-grid-group-by-area + grouping pipe)NoInherent via dimensions
PagingNoYesYesYes (each level independent)No
Batch editingNoYesYes (hierarchical transactions)Yes (propagated from root)No
Cell / Row editingNoYesYesYes (per grid level)No
Row addingNoYesYes (with parent support)Yes (per grid level)No
Master-DetailNoExclusiveNoNo (use row islands)No
Row selectionNoYesYes + multipleCascadeYes (per grid level)Limited
Load on demandNoNoExclusiveNoNo
Column pinning / movingNoYesYesYesNo
Column hidingYesYesYesYesNo
Column resizingYesYesYesYesNo
SummariesNoYesYes (per-level)Yes (per grid level)Horizontal summaries only
State persistenceNoYesYesYes + row island statePivot config serialization
Remote data opsdataPipelineConfigurationEvents + noop strategiesEvents + noop strategiesEvents + noop strategiesN/A
Row virtualizationYesYes (rows + columns)Yes (rows + columns)Yes (rows + columns)Yes