Product · Using it

Accessibility

Keyboard and screen-reader users should be able to do the same work in a grid as everyone else — and a grid that works properly from the keyboard is faster for everyone. This page says how Rowhouse is built for that, how it is tested, and what is not yet published.

→ → ↓ to reach Amount, type 98000, Enter: the cell turns yellow, waiting for Save.

1Tab stop into the grid, and one out
15Test files that run axe-core checks on every change
480 pxGrid width below which records show as cards

Why it matters

Salesforce’s own data table publishes a conformance report. We could find no grid-first product for Salesforce that publishes a conformance report, a VPAT or evidence of screen-reader testing. Rowhouse is built to the W3C data grid pattern, with the keyboard and screen-reader behavior written down as rules the build checks wherever a machine can — and with the gaps stated here rather than left for you to find.

In the product

See it as your users will

Meaning in words, not only color

Every display rule has a meaning, listed in the Display Key and read by a screen reader after the value, so no color carries meaning on its own.

Figure 1. Five rules: Close Date before TODAY (red text), Close Date between TODAY and TODAY+7 (amber fill), Amount at least 250000 (green fill), Stage equals Prospecting applied to the Row (purple bar), and a data bar on Probability. The rule's Label explains each in the Display Key.

One screen, one tab stop

Tab moves into the grid and out again; inside, the arrow keys move cell by cell. Every paste, undo, selection and save is announced in words.

Figure 2. A tour of a grid’s screen: title and count, search, the Display Key, the New and Export buttons, sortable columns, and the Save bar.
What it does

In detail

01

One tab stop, then the arrow keys

Tab moves into the grid and Tab moves out; inside, the arrow keys move between cells and never wrap. Home, End, Page Up and Page Down work as they do in a spreadsheet, and focus follows the record, so a sort never sends the next keystroke to the wrong row.

02

Every cell and every action announced

Each cell is announced with its column. A paste, an undo, a selection and a save are each announced in words, and a display rule’s meaning is read after the value, so no color carries meaning on its own.

03

ARIA grid semantics

The table is an ARIA grid — a tree grid when it is grouped — with row and column counts and positions that describe the whole list even though only the rows near the screen are drawn, sort state on the headers, and selection state on the cells.

04

Windowing that keeps rows readable

Rows far from the screen are not drawn, which keeps scrolling smooth, but the way it is done keeps the drawn rows in the accessibility tree. A faster browser technique was turned down because it removes skipped cells from it.

05

Dialogs that keep focus

Dialogs follow Salesforce’s modal pattern: focus starts inside and stays inside, and Escape cancels. The delete dialog starts on Cancel.

06

Record cards on narrow screens

Below 480 pixels of its own width the grid becomes a list of record cards, built from native lists, headings, label and value pairs and buttons — what VoiceOver and TalkBack handle best. A 20-column grid is hard to drive with a touch screen reader; cards are not.

Published limits

Where it stops

Each limit is there for a reason you can see: how much a browser draws smoothly, or how much Salesforce lets one transaction do. Every limit, and the benchmark →

  • Card layout below480 px
What it does not do
  • No conformance report yet. WCAG 2.2 AA is a voluntary target, not a certification, and no Accessibility Conformance Report or VPAT exists for Rowhouse.
  • The automated checks have limits. axe-core in the test suite cannot check color contrast or the ARIA ownership rules a grid needs most; those rest on manual testing.
  • The Total row is a separate table, reached by table navigation rather than the grid’s arrow keys.
  • The Salesforce mobile app has not been tested. Cards are checked at narrow widths in a desktop browser.
How it compares

Against the paid grids

FAQ

Accessibility: questions

Is Rowhouse WCAG certified?

No. WCAG 2.2 AA is the target Rowhouse is built to, and there is no certification or conformance report. We will publish one with its test script when it exists, and not claim more than it shows.

How is it tested?

Automated axe-core checks run in the Jest suite on every change, and the grid has had a manual screen-reader pass. The automated checks cannot see color contrast or a grid’s ARIA ownership rules, so those rest on manual testing; the report we publish will name the screen readers and the script.

Can I use the grid without a mouse?

Yes. Moving, editing, ranges, copy and paste, fill down, clearing, undo and redo, selecting rows, sorting, opening groups, related records and each row’s actions all have keys. The full list is in the Grid Guide.

Do display rules rely on color?

No. A Display Key lists what each look means, and a screen reader hears the rule’s meaning after the value.

Free. Not freemium, not a trial, not a tier.

Install it, assign the permission sets, build your first grid on the Grid Admin tab. Everything else is in the Grid Guide inside the app.

Get started