Skip to content

Estimate Lifecycle

import { Aside } from ‘@astrojs/starlight/components’;

Source: Master Spec v2.0, §6.

Every estimate stores Client Name (required) and Property Address (required). Phone, email, Jobber ID, and official quote number are outside the MVP.

StatusMeaning
DraftIncomplete, not actively being edited
In ProgressCurrently open with an active edit lock
CompletedAutomatically assigned after a successful Final Sketch JPG/PDF download
ArchivedManually hidden from the active list, without deletion

Rules: new estimates start as Draft; opening in edit mode → In Progress; saving and leaving before export → Draft; crash/abandoned session preserves autosave and returns to Draft after lock recovery; editing a Completed estimate → In Progress temporarily; a new successful export → Completed; archiving is reversible and keeps versions/history.

New Estimate offers the same four choices to every authorized role:

ChoiceHelper textBehavior
MapDraw over a satellite view of the property.Search address, capture satellite view
Blank CanvasDraw on a blank canvas.Start without image or scale
Upload ImageDraw over an image.Import one image as base background
CameraTake a photo and draw over it.Capture one photo as base background

Map flow: search and select an address → 2D satellite view with pan/zoom/rotate → persistent Compass (indicates north/bearing; tap resets to north-up without changing the address) → Capture Map → confirm/correct Property Address → enter Client Name → Start Drawing. The Compass is a Map Capture control only — never embedded in the captured background, Canvas, Preview, or Final Sketch.

For Blank, Image, and Camera, Client Name and Property Address are entered manually before Start Drawing.

05 — Background selector 06 — Map search and capture 07 — Property positioned 08 — Client and address modal 09 — Map workflow overview

Visual references 05–09 — approved visual direction for this section. The written requirements above prevail over labels, sample data, or prices shown in the images. See New Estimate Flow

One estimate may contain multiple independent Sketches for the same Client Name and Property Address. Never label the feature “Building” — a sketch may be a house, building, section, option, or separately measured area.

  • From the Final Sketch step: secondary action Save & Add Another Sketch for Same Client. Saves the current sketch, starts a new one under the same estimate; Client Name/Address are inherited.
  • The new sketch returns to Background Selection (Map/Blank/Image/Camera); with Map, the address is prefilled but the viewport can be reframed.
  • Each sketch has an editable name (default Sketch 1, Sketch 2…; e.g. Main House, Guest House).
  • Each sketch owns an independent background, canvas, measurements, SOW, products, prices, proposals, preview, versions, and autosaved state. Nothing merges automatically between sketches.
  • Sketch tabs/list support Rename, Reorder, Duplicate (where safe), Delete with confirmation. The estimate card shows sketch count and progress info.

Export behavior: combined PDF = one file, each sketch on its own page group; JPG = one image per sketch (sketch name in filename) plus Download All JPGs as a ZIP; a single continuous long-JPG applies within one sketch only; individual sketches may be downloaded alone.