{"id":28070095,"url":"https://github.com/netceteragroup/ngrx-data-grid","last_synced_at":"2025-07-08T10:04:13.182Z","repository":{"id":35092196,"uuid":"197549166","full_name":"netceteragroup/ngrx-data-grid","owner":"netceteragroup","description":null,"archived":false,"fork":false,"pushed_at":"2024-06-19T19:03:41.000Z","size":10517,"stargazers_count":8,"open_issues_count":11,"forks_count":0,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-05-05T05:04:33.378Z","etag":null,"topics":["angular","datagrid","datatable","grid","javascript","ngrx","typescript"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/netceteragroup.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-18T08:49:47.000Z","updated_at":"2024-01-25T10:25:23.000Z","dependencies_parsed_at":"2024-05-02T12:27:30.610Z","dependency_job_id":"231f9139-e8d1-41f5-bd78-b36862c84bf9","html_url":"https://github.com/netceteragroup/ngrx-data-grid","commit_stats":{"total_commits":440,"total_committers":19,"mean_commits":"23.157894736842106","dds":0.7522727272727272,"last_synced_commit":"5646bf6e56770608a7cf58d5c119b5c0b83a7f6e"},"previous_names":[],"tags_count":45,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netceteragroup%2Fngrx-data-grid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netceteragroup%2Fngrx-data-grid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netceteragroup%2Fngrx-data-grid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netceteragroup%2Fngrx-data-grid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/netceteragroup","download_url":"https://codeload.github.com/netceteragroup/ngrx-data-grid/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253808827,"owners_count":21967603,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","datagrid","datatable","grid","javascript","ngrx","typescript"],"created_at":"2025-05-12T19:37:04.809Z","updated_at":"2025-05-12T19:37:05.578Z","avatar_url":"https://github.com/netceteragroup.png","language":"TypeScript","readme":"# ngrx-data-grid\nHighly-customizable grid based on the [Angular](https://angular.io/) and the [NgRx](https://ngrx.io/) framework.\n\n[![Build Status](https://github.com/netceteragroup/ngrx-data-grid/actions/workflows/build.yml/badge.svg)](https://github.com/netceteragroup/ngrx-data-grid/actions/workflows/build.yml)\n[![Coverage Status](https://coveralls.io/repos/github/netceteragroup/ngrx-data-grid/badge.svg)](https://coveralls.io/github/netceteragroup/ngrx-data-grid?branch=master)\n\n## Features\n* Pagination\n* Sorting\n* Column selection\n* Column resizing\n* Column reordering\n* Row selection (single and multiple)\n* Customizable filtering\n* Customizable column width\n* Customizable cell content\n* Customizable nested grid\n* Update of the grid data\n## Installing\n```bash\n$ npm install --save ngrx-data-grid\nor\n$ yarn add ngrx-data-grid\n```\n## Usage\n### Configuration\nImport the module inside your module:\n```typescript\n@NgModule({\n    imports: [\n        ... other imports\n        NgRxDataGridModule\n    ]\n})\n```\nIn the component create configuration for the grid:\n```typescript\nconst gridConfig = GridConfigBuilder.gridConfig()\n                     .withSelection(SelectionType.Checkbox) // multiple selection of rows\n                     .withColumnReorder() // enable column reordering\n                     .withColumnResize() // enable column resizing\n                     .build();\n```\nAlso for each column create an individual configuration. Here comes the customization into play: \n```typescript\nconst columnsConfig = [{\n    headerName: 'First Name',\n    field: 'firstName',\n    visible: true,\n    sortAvailable: true,\n    filterAvailable: true,\n    filter: {\n        component: MyCustomFilterComponent // custom component to implement the filtering\n    },\n    component: MyCustomComponent, // custom component to render the cell,\n    width: 150, // sets the column width,\n    hideInSelection: true // hides the column from the column selection list\n}, \n{\n    headerName: 'Last Name',\n    field: 'lastName',\n    visible: true,\n    sortAvailable: false,\n    filterAvailable: false,\n    valueGetter: (dataItem) =\u003e ... //customize the cell content\n}];\n```\n### Initialization\nDispatch the init action to initialize the grid.\n``` typescript\nconst data = ... // data to be rendered in the grid\nconst gridName = ... // name of the grid\n\nthis.store.dispatch(new initGrid({\n    gridName,\n    data,\n    columnsConfig,\n    numberOfItemsPerPage\n}));\n```\n### HTML rendering\nAdd HTML tag to render the grid on the appropriate place.\n```html\n\u003cngrx-data-grid [config]=\"gridConfig\"\n                [gridName]=\"gridName\"\u003e\n\u003c/ngrx-data-grid\u003e\n```\n## Demo\nGithub pages: https://netceteragroup.github.io/ngrx-data-grid\n\nStackblitz: https://netceteragroup.github.io/ngrx-data-grid/stackblitz.html\n\n## Contributing\nPlease refer to our individual [contributing guide](https://github.com/netceteragroup/ngrx-data-grid/blob/master/CONTRIBUTING.md) to see how you may contribute to the project.\n\n## License\nMIT © [Netcetera](https://github.com/netceteragroup)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetceteragroup%2Fngrx-data-grid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetceteragroup%2Fngrx-data-grid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetceteragroup%2Fngrx-data-grid/lists"}