Data modules: put a HubDB table on the page

Written by Erin Wiggers | Oct 6, 2026, 9:00:00 AM

Some content belongs in a table, not on a page: a list of events, a resource library, a directory of products. Geekify Pro includes data modules that read a HubDB table and lay it out as cards, detail pages and status boards. This post covers the common case, a grid of cards with a page for each row.

Data modules are in Geekify Pro only. The Marketplace edition does not include HubDB or CRM modules.

Shape the table first

Create the table in HubDB with one row per item. Give it a name column, a short summary, a cover image and any columns you want to show as small facts on the card, such as a category or a date. If each row should have its own page, turn on dynamic pages for the table and fill in the page path for every row.

Use a select column for anything you want visitors to filter by. The grid builds its filter buttons from the options.

Connect the grid

Add a Data Grid module to the page and choose the table. Then map the columns: which one is the title, the eyebrow, the description, the cover image and the tags. Each card can also show a few small facts, each with its own caption and column.

Set the order (by a sort column or a date) and the page size. If the table has more rows than the page size, the grid shows a Load more button.

Add the detail page

Use the dynamic template that matches your table. Its Data Detail module reads the row the visitor opened: an overview, a facts table, numbered steps and a list of highlights, each mapped to a column the same way.

Keep it current

Data Freshness reads a date column and shows each source with a coloured dot for how recently it changed. It is a quick way to see which tables nobody has touched in months.

Every data module on the Pro showroom reads tables built this way, and the seed files that build them are plain CSVs you can copy.