Two AI-built prototypes, one real decision: hand-rolled table or Smart Grid?
Procore Document Management — Documents table refresh
- The question
- Refresh the Documents table by hand-rolling it, or adopt Procore's real Smart Grid component?
- My role
- Built both prototypes to make the trade-offs concrete before engineering had to choose
- Tools used
- AI-assisted prototyping against two different component foundations
- Outcome
- A side-by-side comparison engineering could react to, instead of a debate about hypotheticals
Background
Overview
A refresh of PDM's Documents table could go two ways: keep hand-rolling the table the way it's built today, or adopt Procore's Smart Grid — the AG-Grid-based component the platform is standardizing on. Each direction has a real cost. Hand-rolling means owning every interaction — sorting, resizing, pinned columns, row density, column configuration — indefinitely. Adopting Smart Grid means inheriting a heavier dependency and a less familiar API in exchange for a maintained, consistent foundation.
Instead of debating this in the abstract, I built both — the same visual target, twice, on two different foundations.
What I built
The same table, twice
Hand-rolled iteration
A from-scratch table matching the target design pixel-for-pixel — custom cells, a configure panel for row height and column visibility, pinned name and actions columns.
Smart Grid iteration
The same visual target, rebuilt on Procore's real Smart Grid client — AG-Grid under the hood, with custom cell renderers only where the design needed something the grid didn't provide out of the box.
Side-by-side comparison
Both prototypes live in the same sandbox app, so engineering could click between them and feel the difference in interaction quality, not just read about it.
What the prototypes actually were
At a glance
One hand-rolled, one on Smart Grid — same visual target, same mock data, so the comparison stayed apples to apples.
Name plus five configurable columns — Description, Version, Created On, Created By, and Revision # — the real column set from the target design.
Both prototypes existed before an engineering estimate was requested, so the evaluation informed the estimate rather than following it.
Why build two to get one answer
AI-assisted prototyping made building the second version cheap enough that de-risking became the default, not a luxury. The commitment decision is still ahead — this work exists so it gets made with two working prototypes in hand instead of two slide decks arguing past each other.