Skip to content

Grids

A Nebula grid is a listing: a table or a card view with filters, sorting, paging, keyword search, mass actions, CSV export, saved views, and an optional quick-edit drawer. You describe it in one JSON file and mount it with one layout handle.

Page What it covers
Your first grid A complete listing for a custom table, file by file
Grid examples Ten complete grid definitions trimmed from the grids Nebula ships, plus an overlay, each validating against grid.schema.json
Grid reference Every key the engine reads: settings, columns, column types, filters, mass actions, quick edit, export
Data providers The collection provider, aliases, and writing your own provider
Extending a shipped grid Adding, changing and removing columns and actions on a grid Nebula ships

What a grid gives you without configuration

  • Sorting on every column marked sortable, with the default from settings.defaultSort.
  • A filter panel built from each column's filter key.
  • A keyword search box over columns marked searchable.
  • Paging with the sizes in settings.pageSizes, capped at 200 rows per page.
  • Column visibility toggles, remembered in the browser.
  • Saved views: named filter and sort combinations per administrator, with an optional default.
  • Export to CSV from the toolbar, honouring the current search, filters and sort, up to 100,000 rows. XML comes from the same route when it is requested by hand.
  • Mass actions with confirmation, when settings.massActions lists them.
  • Whole-row navigation when settings.rowUrl is set, or a quick-edit drawer when the grid has an editable block.
  • A card view on narrow screens, with column priorities from hideBelow.