Skip to content
Back to skills

Data Tables

ASecurity

This skill should be used when the user is building or reviewing data tables, pagination, column alignment, bulk actions, sorting, filtering, row selection, or table-to-card responsive patterns. Covers the pagination vs infinite scroll decision, DataTable vs IndexTable patterns, and column default strategy.

  • 34 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 26, 2026
ai-agentsgo

Works with

  • cli

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 26, 2026

npx -y skills add oborchers/fractional-cto --skill data-tables --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Data Tables?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Data Tables
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/oborchers-data-tables/badge)](https://www.skillsdirectory.com/skills/oborchers-data-tables)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: data-tables
description: This skill should be used when the user is building or reviewing data tables, pagination, column alignment, bulk actions, sorting, filtering, row selection, or table-to-card responsive patterns. Covers the pagination vs infinite scroll decision, DataTable vs IndexTable patterns, and column default strategy.
version: 1.0.0
---

# Data Tables Are Where SaaS Products Are Won or Lost

Enterprise SaaS lives and dies by its data tables. The rules are non-negotiable.

## Alignment Rules

| 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 vs. Infinite Scroll

**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:**
- Keep pages at **10–20 items**
- Store pagination state in the URL
- Show total item count
- Preserve filters and sorting across pages

## Two Table Types

Shopify Polaris makes a critical distinction:

### DataTable (Static Comparison)
For showing values across categories with summary rows and fixed columns. Read-only comparison view.

### IndexTable (Actionable Resource List)
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.

## Column Defaults

Invest heavily in choosing which columns appear by default. Most users never customize.

**Rules:**
- Allow users to show, hide, reorder, and resize columns
- Always provide a prominent **"Reset to defaults"** button
- Good defaults mean most users never need to customize

## Bulk Actions

Show a toolbar when one or more rows are selected.

**Placement options:**
- Replace the header row
- Float at the bottom of the viewport

**Selection options:**
- Support both "select all on this page" and "select all across all pages" as **separate** options
- On mobile screens below 490px, hide bulk actions unless essential — convert tables to card layouts instead

## Examples

Working implementations in `examples/`:
- **`examples/responsive-data-table.md`** — Alignment CSS, URL-based pagination, bulk selection, and table-to-card mobile conversion

## Review Checklist

When reviewing or building data tables:

- [ ] Text is left-aligned, numbers are right-aligned
- [ ] Headers match their content alignment
- [ ] No center-aligned data columns
- [ ] Numbers use monospace or tabular typography
- [ ] Pagination used instead of infinite scroll
- [ ] Pages contain 10–20 items
- [ ] Pagination state stored in the URL
- [ ] Total item count displayed
- [ ] Filters and sorting preserved across pages
- [ ] Column defaults carefully chosen
- [ ] Users can show/hide/reorder/resize columns
- [ ] "Reset to defaults" button is prominent
- [ ] Bulk action toolbar appears on row selection
- [ ] "Select all on this page" and "select all across all pages" are separate options

Files in this skill

  • SKILL.md3.4 KB
  • examples/responsive-data-table.md5.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.