Need help with ag-grid?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

7.7K Stars 1.4K Forks Other 24.0K Commits 22 Opened issues


The best JavaScript Data Table for building Enterprise Applications. Supports React / Angular / Vue / Plain JavaScript.

Services available


Need anything else?

Contributors list

alt text

CDNJS Github Stars Twitter

| Module | Info | | --------------------|------------------:| | ag-grid-community | npm
Bundle Phobia
Quality Gate Status
| | ag-grid-enterprise | npm
Bundle Phobia
Quality Gate Status |

AG Grid

AG Grid is a fully-featured and highly customizable JavaScript data grid. It delivers outstanding performance, has no third-party dependencies and integrates smoothly with all major JavaScript frameworks.

Here's how our grid looks with multiple filters and grouping enabled:

alt text


In addition to the standard set of features you'd expect from any grid:

  • Column Interactions (resize, reorder, and pin columns)
  • Pagination
  • Sorting
  • Row Selection

Here are some of the features that make AG Grid stand out:

  • Grouping / Aggregation *
  • Custom Filtering
  • In-place Cell Editing
  • Records Lazy Loading *
  • Server-Side Records Operations *
  • Live Stream Updates
  • Hierarchical Data Support & Tree View *
  • Customizable Appearance
  • Customizable Cell Contents
  • Excel-like Pivoting *
  • State Persistence
  • Keyboard Navigation
  • Data Export to CSV
  • Data Export to Excel *
  • Row Reordering
  • Copy / Paste
  • Column Spanning
  • Pinned Rows
  • Full Width Rows

* The features marked with an asterisk are available in the Enterprise version only.

Check out the developer documentation for a complete list of features or visit our official docs for tutorials and feature demos.

Looking for a framework specific solution?

Getting started

Install dependencies

$ npm install --save ag-grid-community

Add a placeholder to HTML

Import the grid and styles

import { Grid } from 'ag-grid-community';

import 'ag-grid-community/dist/styles/ag-grid.css'; import 'ag-grid-community/dist/styles/ag-theme-alpine.css';

Set configuration

var gridOptions = {
    columnDefs: [
        { headerName: 'Make', field: 'make' },
        { headerName: 'Model', field: 'model' },
        { headerName: 'Price', field: 'price' }
    rowData: [
        { make: 'Toyota', model: 'Celica', price: 35000 },
        { make: 'Ford', model: 'Mondeo', price: 32000 },
        { make: 'Porsche', model: 'Boxter', price: 72000 }

Initialise the grid

var eGridDiv = document.querySelector('#myGrid');
new Grid(eGridDiv, this.gridOptions);

For more information on how to integrate the grid into your project see TypeScript - Building with Webpack 2.

Issue Reporting

If you have found a bug, please report it in this repository's issues section. If you're using the Enterprise version, please use the private ticketing system to do that. For more information on support please see our dedicated support page.

Asking Questions

Look for similar problems on StackOverflow using the

tag. If nothing seems related, post a new message there. Please do not use GitHub issues to ask questions.


AG Grid is developed by a team of co-located developers in London. If you want to join the team check out our jobs board or send your application to [email protected]


This project is licensed under the MIT license. See the LICENSE file for more info.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.