{"id":17181566,"url":"https://github.com/dimitarchristoff/slickgrid-bare","last_synced_at":"2026-01-20T12:32:39.312Z","repository":{"id":44065413,"uuid":"212615845","full_name":"DimitarChristoff/slickgrid-bare","owner":"DimitarChristoff","description":"A modern take on slickgrid that focuses only on core of the grid without plugins and editors","archived":false,"fork":false,"pushed_at":"2023-01-04T22:05:48.000Z","size":9516,"stargazers_count":1,"open_issues_count":12,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-06T05:33:21.087Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DimitarChristoff.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-03T15:38:09.000Z","updated_at":"2021-02-10T09:49:54.000Z","dependencies_parsed_at":"2023-02-02T21:32:03.873Z","dependency_job_id":null,"html_url":"https://github.com/DimitarChristoff/slickgrid-bare","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/DimitarChristoff/slickgrid-bare","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DimitarChristoff%2Fslickgrid-bare","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DimitarChristoff%2Fslickgrid-bare/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DimitarChristoff%2Fslickgrid-bare/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DimitarChristoff%2Fslickgrid-bare/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DimitarChristoff","download_url":"https://codeload.github.com/DimitarChristoff/slickgrid-bare/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DimitarChristoff%2Fslickgrid-bare/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28603392,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T12:01:53.233Z","status":"ssl_error","status_checked_at":"2026-01-20T12:01:46.545Z","response_time":117,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2024-10-15T00:34:41.430Z","updated_at":"2026-01-20T12:32:39.288Z","avatar_url":"https://github.com/DimitarChristoff.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SlickGrid\n\n[![npm version](https://img.shields.io/npm/v/slickgrid-bare.svg?style=flat-square)](https://www.npmjs.com/package/slickgrid-bare) [![npm downloads](https://img.shields.io/npm/dm/slickgrid-bare.svg?style=flat-square)](https://www.npmjs.com/package/slickgrid-bare) ![gzip size](http://img.badgesize.io/https://npmcdn.com/slickgrid-bare/dist/slickgrid.js?compression=gzip)\n\nThis is a stripped down version of [slickgrid-es6](https://github.com/DimitarChristoff/slickgrid-es6). It has been customised to\nsupport the needs of the IA Portal app alone and a portion of its styles lives in the @gin/ia-components repo.\n\nIt does not have any default plugins, editors, cell renderers that you normally find in other SlickGrid forks.\nIt has no jQuery-UI (uses customised version of Interact.js instead).\n\n## Install\n\nSimply (with jquery peer dep):\n\n```shell script\n$ npm i slickgrid-bare jquery --save\n$ yarn add slickgrid-bare jquery\n```\n\nThe peerDependency on jQuery is v2.2+ that you have to provide yourself (which is deemed insecure), works with that or v3+\n\n## Use (full bundle)\n\n```js\nimport {Data, Grid, Slick} from 'slickgrid-bare';\n\nconst data = new Data.DataView([{...}, {...}]);\nconst columns = [{\n  id: 'name',\n  resizable: true,\n  name: 'Name',\n  field: 'name',\n  cssClass: 'is-text',\n  minWidth: 60,\n  maxWidth: 200,\n  sortable: true,\n  sortComparer: (a, b) =\u003e a \u003e b ? -1 : 0,\n  formatter: (row, column, value) =\u003e `\u003cdiv\u003e${value}\u003c/div\u003e`\n}];\nconst options = {\n  rowHeight: 30,\n  editable: false,\n  enableAddRow: false,\n  enableColumnResize: true,\n  enableColumnReorder: true,\n  frozenColumn: 1,\n  enableCellNavigation: true,\n  asyncEditorLoading: false,\n  enableAsyncPostRender: true,\n  asyncPostRenderDelay: 1,\n  enableAsyncPostRenderCleanup: true,\n  autoEdit: false,\n  showHeaderRow: false,\n  headerRowHeight: 28,\n  enableTextSelectionOnCells: true,\n  forceFitColumns: true,\n  fullWidthRows: true,\n  explicitInitialization: true\n};\nconst grid = new Grid(document.getElementById('grid-container'), data, columns, options);\n\ngrid.onColumnsReordered.subscribe(() =\u003e {\n  const foo = new Slick.Event();\n  foo.notify(grid.getColumns())\n});\n\ngrid.init();\n```\n\nOptimised use for build sizes in module imports:\n\n```js\nimport Grid from 'slickgrid-bare/dist/6pac';\nimport FrozenGrid from 'slickgrid-bare/dist/frozen';\nimport Data from 'slickgrid-bare/dist/data';\nimport Core from 'slickgrid-bare/dist/core';\n```\n\n_WARNING:_ This package does not come with a compiled CSS version, you get .SCSS export only. Ideally, copy the files locally and fix\nbut some defaults are available.\n\n```scss\n@import '~slickgrid-bare/dist/slick.grid.variables.scss';\n\n$grid-border-color: #f2f2f2;\n$grid-border-style: solid;\n\n$grid-header-background: white;\n\n$grid-cell-color: white;\n$grid-cell-selected-color: darken($grid-cell-color, 5%);\n\n$cell-padding-top: 9px;\n$cell-padding-bottom: 9px;\n$cell-padding-right: 10px;\n$cell-padding-left: 10px;\n\n// main\n@import 'slickgrid-bare';\n// more here.\n```\n\n# Changes compared to original forks\n\nThe original slickgrid-es6 repo was created to drop jquery-ui as a dependency and to compile via normal modules and requires.\nMeanwhile, as the main slickgrid project is dead, there were two viable candidates for a repo to fork for the conversion -\n[6pac fork](https://github.com/6pac/SlickGrid/) and [X-SlickGrid](https://github.com/ddomingues/X-SlickGrid). They are both\nquite diverged and have gone into different directions.\n\nHad to do a bunch of changes and bug fixes, which meant we had to fork slickgrid-es6, and continue to\nsupport the 2 grids it exported. We reference them as 6pac (`import Grid from 'slickgrid-bare/dist/6pac';`) or Frozen\n(`import FrozenGrid from 'slickgrid-bare/dist/frozen';`), but also `import {Grid, GrozenGrid} from 'slickgrid-bare'` -\nthe general gist is, 6pac has more features and bug fixes but does not support Frozen Rows / Columns. If you need a\ngrid w/o frozen columns, I'd suggest importing the 6pac grid unless you already use the Frozen one and want to\nkeep the build size smaller. Notably, the two implementations have slightly different styling options and also, sometimes\ndifferent events coming through, with unwrapped DOM events vs jQuery - but are at least 95%+ compatible with each other\nover a relatively basic configuration.\n\n## Known Issues\n\n- The Interact.js dependency is built in now, because of a monkey patch on an originalEvent prop being passed on to\n  slickgrid, which was needed to replace jquery-ui and support drag reorder and column resize\n- There are issues with scrollbar size detection in Frozen, which may be something to patch as the 6pac SlickGrid does have a\n  method to detect scrollbar size. It may be a relatively trivial thing to do but since build target is mostly chrome and\n  scrollbar sizes is controlled via CSS, this was not required.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdimitarchristoff%2Fslickgrid-bare","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdimitarchristoff%2Fslickgrid-bare","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdimitarchristoff%2Fslickgrid-bare/lists"}