Aurelia-SlickGrid is a custom component created specifically for Aurelia framework, it is a wrapper on top of Slickgrid-Universal library which contains the core functionalities. Slickgrid-Universal is written with TypeScript in browser native code, it is framework agnostic and is a monorepo that includes all Editors, Filters, Extensions and Services related to SlickGrid usage with also a few optional packages (like GraphQL, OData, Export to Excel, ...).
📕 Documentation website powered by GitBook.
Available in Stackblitz below, this can also be used to provide an issue repro.
Refer to the Docs - Quick Start and/or clone the Aurelia-Slickgrid Demos repository. Please review the Documentation website before opening any new issue, also consider asking installation and/or general questions on Stack Overflow unless you think there's a bug with the library.
npm install aurelia-slickgrid
Install any optional Slickgrid-Universal dependencies, for example Excel Export
npm install @slickgrid-universal/excel-export
Aurelia-Slickgrid
works with all Bootstrap
versions, you can see a demo of each one below. There are also extra styling themes for not just Bootstrap but also Material & Salesforce which are also available. You can also use different SVG icons, you may want to look at the Docs - SVG Icons
import { type Column, type GridOption } from 'aurelia-slickgrid';
interface User {
firstName: string;
lastName: string;
age: number;
}
export class Example {
columnDefinitions: Column[] = []; // it could also be `Column<User>[]`
gridOptions: GridOption;
dataset: User[] = [];
constructor() {
this.columnDefinitions = [
{ id: 'firstName', name: 'First Name', field: 'firstName'},
{ id: 'lastName', name: 'Last Name', field: 'lastName'},
{ id: 'age', name: 'Age', field: 'age' }
];
}
attached() {
this.dataset = [
{ id: 1, firstName: 'John', lastName: 'Doe', age: 20 },
{ id: 2, firstName: 'Jane', lastName: 'Smith', age: 21 }
];
this.gridOptions = { /*...*/ }; // optional grid options
}
}
<aurelia-slickgrid
grid-id="grid2"
columns.bind="columnDefinitions"
options.bind="gridOptions"
dataset.bind="dataset">
</aurelia-slickgrid>
You like Slickgrid-Vue? Be sure to upvote ⭐ the project, and perhaps support me with caffeine ☕ or sponsor me on GitHub. Any contributions are also very welcome. Thanks
Note please be aware that only the latest major version of Aurelia-Slickgrid will be supported and receive bug fixes (it's already a lot of work to maintain for a single developer like me).
Aurelia-Slickgrid | Aurelia version | Migration Guide | Notes |
---|---|---|---|
9.x | Aurelia 2 | Migration 9.x | ESM-Only, requires Slickgrid-Universal 9.x version |
8.x | Aurelia 2 | Migration 8.x | modern UI / Dark Mode, requires Slickgrid-Universal 5.x |
7.x | Aurelia 2 | Migration 7.x | merge SlickGrid into Slickgrid-Universal, requires Slickgrid-Universal 4.x |
6.x | 1.x | Migration 6.x | removal of jQuery (now uses browser native code), requires Slickgrid-Universal 3.x |
5.x | 1.x | Migration 5.x | removal of jQueryUI, requires Slickgrid-Universal 2.x version |
For a full compatibility table of all Aurelia-Slickgrid versions with Slickgrid-Universal, please refer to the Versions Compatibility Table - Wiki