Help us improve
Share bugs, ideas, or general feedback.
Guides building/reviewing SaaS data tables with alignment rules, pagination vs infinite scroll, DataTable/IndexTable patterns, column defaults, bulk actions, sorting, filtering, row selection, and responsive table-to-card.
npx claudepluginhub oborchers/fractional-cto --plugin saas-design-principlesHow this skill is triggered — by the user, by Claude, or both
Slash command
/saas-design-principles:data-tablesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Enterprise SaaS lives and dies by its data tables. The rules are non-negotiable.
Guides writing column headers, empty cells, truncation, filter/sort labels, and bulk action copy for data tables and design systems.
Builds headless data tables with TanStack Table v8 featuring server-side pagination, filtering, sorting, virtualization for Cloudflare Workers + D1 databases and TanStack Query integration.
Guides building SaaS dashboards, settings pages, data tables, and layouts with shadcn/ui + Tailwind. Covers component library selection, page composition, responsive design, dark mode, and UI states (loading, empty, error).
Share bugs, ideas, or general feedback.
Enterprise SaaS lives and dies by its data tables. The rules are non-negotiable.
| Content Type | Alignment |
|---|---|
| Text | Left-align |
| Numbers | Right-align |
| Headers | Match content alignment |
| Data columns | Never center-align |
Use monospace or tabular typography for numbers so "$1,111.11" doesn't visually outweigh "$999.99."
Pagination beats infinite scroll for SaaS data tables — always.
Nielsen Norman Group's research explains why: infinite scroll creates a "lack of landmarks." Users can't remember where items were. With pagination, users remember "it was on page 3, near the top."
Pogo-sticking — clicking into a record, then going back — is especially destructive with infinite scroll because users are often returned to the top of the list.
Pagination rules:
Shopify Polaris makes a critical distinction:
For showing values across categories with summary rows and fixed columns. Read-only comparison view.
For orders, customers, products — with row selection, bulk actions, and navigation to detail pages.
Build both patterns. The choice depends on whether users need to act on the data or compare it.
Invest heavily in choosing which columns appear by default. Most users never customize.
Rules:
Show a toolbar when one or more rows are selected.
Placement options:
Selection options:
Working implementations in examples/:
examples/responsive-data-table.md — Alignment CSS, URL-based pagination, bulk selection, and table-to-card mobile conversionWhen reviewing or building data tables: