There's an in-depth blog about this topic in the official documentation page.
Minimising Bundle Size
Basically, we use modules instead of packages. By doing so, we will include only what we need.
E.x.
This is a react example but main logic is same for angular and vue as well.
In your package.json, instead of this
"ag-grid-community": "^27.0.1",
"ag-grid-react": "^27.0.1",
use this
"@ag-grid-community/core": "^28.1.0",
"@ag-grid-community/react": "^28.1.0",
"@ag-grid-community/client-side-row-model": "^28.1.0",
"@ag-grid-community/styles": "^28.1.0",
and in your page, change your import from this
import { AgGridReact } from 'ag-grid-react';
import 'ag-grid-community/dist/styles/ag-grid.css';
import 'ag-grid-community/dist/styles/ag-theme-alpine.css';
to this
import { AgGridReact } from '@ag-grid-community/react';
import '@ag-grid-community/styles/ag-grid.css';
import '@ag-grid-community/styles/ag-theme-alpine.css';
import { ModuleRegistry } from '@ag-grid-community/core';
import { ClientSideRowModelModule } from '@ag-grid-community/client-side-row-model';
ModuleRegistry.registerModules([
ClientSideRowModelModule,
]);