AG Grid

The best JavaScript Data Table for building Enterprise Applications. Suppor...

README

alt text
CDNJS Github Stars Twitter

ModuleSonarCloud
--------------------|------------------:|
ag-grid-community[![npm](https://img.shields.io/npm/dm/ag-grid-community)](https://www.npmjs.com/package/ag-grid-community)
ag-grid-enterprise[![npm](https://img.shields.io/npm/dm/ag-grid-enterprise)](https://www.npmjs.com/package/ag-grid-enterprise)

AG Grid


AG Grid is a fully-featured and highly customizable JavaScript data grid.

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

alt text

Features


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


  1. ```sh
  2. $ npm install --save ag-grid-community
  3. ```

Add a placeholder to HTML


  1. ``` html
  2. <div id="myGrid" style="height: 150px; width: 600px" class="ag-theme-alpine"></div>
  3. ```

Import the grid and styles


  1. ``` js
  2. import { Grid } from 'ag-grid-community';

  3. import 'ag-grid-community/dist/styles/ag-grid.css';
  4. import 'ag-grid-community/dist/styles/ag-theme-alpine.css';
  5. ```

Set configuration


  1. ``` js
  2. var gridOptions = {
  3. columnDefs: [
  4.   { headerName: 'Make', field: 'make' },
  5.   { headerName: 'Model', field: 'model' },
  6.   { headerName: 'Price', field: 'price' }
  7. ],
  8. rowData: [
  9.   { make: 'Toyota', model: 'Celica', price: 35000 },
  10.   { make: 'Ford', model: 'Mondeo', price: 32000 },
  11.   { make: 'Porsche', model: 'Boxter', price: 72000 }
  12. ]
  13. };
  14. ```

Initialise the grid


  1. ``` js
  2. var eGridDiv = document.querySelector('#myGrid');
  3. new Grid(eGridDiv, this.gridOptions);
  4. ```

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 theag-grid tag. If nothing seems related, post a new message there. Please do not use GitHub issues to ask questions.

Contributing


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 info@ag-grid.com.

License


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