Mark HollandSenior AI Solutions Engineer

Contractor PM Platform

CompleteReady for its first users

A specialty contractor ran its estimating out of a spreadsheet workbook. I built one web app that carries a job from the first call to the final cost: a pipeline board, estimates priced from one shared rate library, proposals, scheduling, field reports, and budget against actual.

Diagram: a job moves from the pipeline board to an estimate priced from the rate library, a proposal, the job itself with scheduling, field reports and documents, and job costing of budget against actual cost.

What it does

  • Replaces a spreadsheet estimating workbook with one shared web app that works on a laptop, tablet, or phone.
  • A pipeline board, an editable rate library so estimate formulas are never re-entered, proposals, scheduling, field reports, documents, and reports.
  • Job costing compares each job's budget with its actual cost.

From the app's own materials.

Who it is for

The office and field team of a specialty contractor, on a laptop, tablet, or phone.

How it works

Contractor PM Platform, step by step
  1. Pipeline

    Every lead and job on one board.

  2. Estimate

    Each estimate is priced from the shared rate library.

  3. Propose

    A proposal goes out from the estimate.

  4. Run the job

    Scheduling, field reports, and documents in one place.

  5. Cost

    Job costing compares the budget with the actual cost.

The design

Diagram: a job moves from the pipeline board to an estimate priced from the rate library, a proposal, the job itself with scheduling, field reports and documents, and job costing of budget against actual cost.
Design diagramOne job, from the first call to the final cost.
Diagram: an editable rate library feeds every estimate and each job's budget, and job costing compares budget with actual cost while the job runs.
Design diagramRates are entered once; every job's cost is checked against its budget.

The decision that matters

One rate library

Rates and formulas live in one editable library, so an estimate never retypes a formula and a changed rate reaches every new estimate.

Built with

  • Next.js
  • Tailwind
  • PostgreSQL
  • Clerk sign-in