Project card badges

Finer facts about a job — order sent, materials delivered, deposit paid, review asked for — ride on the card as timestamped badges instead of new columns.

What it is

Write-once timestamp markers stored on the card: material_paid_at, ordered_at, delivered_at, final_paid_at, review_requested_at. They record WHEN something first happened, and an explicit clear can take a badge back off.

Also called: ordered · delivered · material paid · final paid · review requested

See it
Project card badges
New lead 4
Marlin Hoover
$34k
Delia Yoder
$47k
Sutter Kline
$62k
Contacted 4
Sutter Kline
$27k
Ronan Petsch
$42k
Estimate 3
Ivy Brubaker
$57k
Gideon Alt
$68k
Sold 4
Marlin Hoover
$50k
Delia Yoder
$61k
Sutter Kline
$77k
PM card showing 'Ordered · Mar 14' and 'Material paid · Mar 20' badges — projectPipeline.ts PmBadges. Sample data — no customer information appears here.
How it works
  1. 1Badges merge into the card's state; an existing timestamp is never overwritten by a later re-save
  2. 2A null value explicitly clears the badge
  3. 3Badge-only stamps are possible without any stage move
  4. 4A stage move keeps only the badge cluster and snapshots the outgoing checklist onto the lifecycle row
Why we built it

Two ways to lose a fact. The 'ordered at' time was overwritten every time anyone saved anything on that stage, so the only record of when a material order actually went out silently became the last time somebody touched the stage. And a badge could not be taken back off, so a mis-click marking material delivered was permanent, and the card claimed lumber had arrived that nobody had seen. Badges keep their original timestamp and come off when the checkpoint behind them is unticked.

The problem
  • Timestamps drifting to 'last touched'
  • Permanent badges from a mis-click
Sound familiar?
What you get
A durable record of when each thing first happened
Mistakes are reversible
What's inside

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →