Spec sheets
What a sheet is, what's on it, and how it changes as a project moves through its lifecycle.
A spec sheet captures every decision for one category (Plumbing, Framing, Cabinets, …) at one scope (per-project or per-unit). It's the document the team fills in as the customer chooses fixtures, finishes, and configuration. It's also the document that gets exported into the customer's workbook at the end.
What a sheet contains
| Part | What it is |
|---|---|
| Header | Category name, scope (per-project, or per-unit + which unit), sheet date, and admin actions. |
| Decision-maker notes | A free-text panel at the top, intended for the most important context, who decided what, when. |
| Groups | The sections within a sheet, e.g. Master Bathroom, Powder Room, Basement Suite. Free-form: rename, reorder, add, or delete. |
| Items | The line items inside a group. Each row is one spec, Sink, Faucet, Toilet. |
| Customer-shown | Per-sheet flag for whether the sheet is visible to the customer in the public preview. |
| Section order | Persisted ordering of groups, so reordering survives reloads. |
Anatomy of an item
An item row is the smallest unit of spec data. Every item has:
- A name (e.g. Sink).
- A classification, standard, upgrade, not standard, or N/A. Open-ended; you can type any classification you want.
- Notes, short text, per row.
- Attributes, the category-specific fields. For Plumbing those are Model, Finish/Colour, Single/Double, Customer asked about colour?. Other categories define their own.
- Attachments, up to ten images per item.
- Locked state, when a sheet is marked complete, every item below it locks; further edits require a change reason.
- Comments, a thread of inline comments on the item, used for back-and-forth between the team.
How sheets relate to scope
Each category has a default scope:
- Per-project categories (e.g. Landscaping, Insulation, HVAC, Framing) have one sheet per project, regardless of how many units exist.
- Per-unit categories (e.g. Plumbing, Cabinets, Lighting Fixtures, Paint) have one sheet per unit per project.
You can override the default per project, see per-project vs per-unit and convert scope.
How sheets are created
You don't create sheets manually. They appear automatically:
- When you create a project, every category is provisioned with the right number of sheets based on default scope and unit count.
- When you add a unit to an existing project, every per-unit category gets a fresh sheet for the new unit.
- When you convert a category's scope, sheets are split or merged accordingly.
Lifecycle
Empty, sheet exists but has no items. (Many start with seeded items from the category schema.)
Editing, the team fills out items, attaches images, takes notes.
Complete, someone clicks Mark complete. The sheet locks; future edits require a reason.
Reopened, if changes are needed, an admin can reopen the sheet. The completion marker clears; edits flow normally again.
The whole sheet is also implicitly locked once the project becomes Finalised or Archived, see statuses.