Project board that moves itself

Every column on the project board is reached by a verifiable action in the system, not by someone remembering to drag a card.

What it is

A five-column project pipeline — Kickoff, Materials, Build, Wrap-Up, Complete — where each move is triggered by evidence: starting the project, a materials invoice being paid in full, the first build checkpoint being completed, the final build stage finishing, and the final invoice being paid.

Also called: project pipeline · kickoff materials build wrapup complete · PM board · project stages on a board

See it, piece by piece
01

Five columns, each reached by doing the work — not by dragging a card

Kickoff, Materials, Build, Wrap-Up, Complete. Starting the project puts the card on the board; the materials invoice paid in full moves it to Materials; the first build checkpoint completed moves it to Build; the last build stage finishing moves it to Wrap-Up; the final invoice paid moves it to Complete. Nobody has to remember anything, which is why the board is still right on Friday. Every move writes a line you can read afterwards — “Material payment collected — invoice paid in full”.

02

A paid invoice moves the job, not a status somebody sets

The materials invoice paid in full is what puts a card in Materials; the final scheduled invoice paid in full is what marks the build Complete. The money and the board are reading the same record, so “are we still waiting on the deposit” is not a question for the office.

Invoicing
AllDraftSentViewedPartialOverduePaidVoidAll customersSearch number, title, customer, or project…
Yoder — 40×64×14 Shop4 invoices
Marlin Yoder·$80,242.35total·$58,380.00 paid·$21,862.35 due
1Paid2Partially Paid3Overdue4Draft
1INV-2026-0036Down Payment — 40×64 ShopPaid
Issued May 4, 2026 · Due May 18, 2026
$26,535.00
PDF
2INV-2026-0038Delivery DrawPartially Paid
Issued Jun 22, 2026 · Due Jul 6, 2026
$35,380.00
$12,380.00 due
PDF
3INV-2026-0041CO-3 — Overhead DoorsOverdue
Issued Jul 9, 2026 · Due Jul 23, 2026
$9,482.35
PDF
4INV-2026-0044Final PaymentDraft
Issued Aug 20, 2026
$8,845.00
Invoices grouped under their job — the paid and due totals here are what advance the board. The real screen, drawn from the product’s own design system. Sample data — no customer information appears here.
03

A card can never slide backwards

The mover is idempotent and one-directional: a repeated event does nothing, and no event can pull a card back to a column it has already left. A project stage always outranks a sales stage, so a late sales action cannot drag a live build back onto the sales board. Manual drags stay available as an override and are logged loudly.

04

Order sent, delivered, deposit paid — badges on the card, not new columns

The finer facts ride on the card as timestamped badges instead of turning into columns, so the board stays five wide and still tells you which jobs are waiting on material. Each badge records when the thing first happened, and a mis-click can be taken back.

05

Ticking “Order Placed” is what records the order, however you ordered it

You phone the supplier, you tick the Order Placed checkpoint you were going to tick anyway, and the card stamps the order as sent. There is no second screen to remember. And “delivered” is measured against that stage's real checkpoint list, so one box ticked cannot mark a whole delivery finished.

How it works
  1. 1Start Project mints or advances the bonded card to pm_kickoff
  2. 2Material-stage invoice paid in full → pm_materials; final scheduled invoice paid → pm_complete
  3. 3First build-stage checkpoint completed → pm_build; final build stage fully checked → pm_wrapup
  4. 4advanceProjectPipeline is the single choke point: idempotent and MONOTONIC — a card never moves backward, and any PM stage outranks any sales stage
  5. 5Manual drags remain possible as an admin override and log loudly
  6. 6Every move writes a lifecycle row with human-readable evidence ('Material payment collected — invoice paid in full')
Why we built it

The project board was permanently empty. It listed jobs that had reached a project stage, and nothing in the system ever moved a job into one, so builders opened a board that had never held a single card. Cards appear off real events now — a contract signed, a stage finished, a build wrapped. Smaller acts such as an order going out stamp a badge on the existing card rather than adding another column, because a board fifteen columns wide is a board nobody reads across, and a card is only ever created against a real job instead of minting a second copy of a customer.

The problem
  • A project board that only reflects reality if someone maintains it
  • No way to see which builds are blocked on money or materials
Sound familiar?
What you get
The board is always current because the work moves it
Every move carries the evidence that caused it
Cards can never slide backwards
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 →