All work Full-stack · AI · Client work

Belmont Home Staging: the whole business, in one platform.

Paper job sheets, printed contracts, and one spreadsheet only the owner understood. Jobs, inventory, scheduling, and client history now live in one app, and the month adds itself up.

5 → 1Steps to a signed contract
Same dayContracts sent and signed
LiveMonth-to-date numbers, no reconciling
RoleSolo. Design, build, ship.
TypeInternal tool, no public demo
Year2026
SurfaceFull-stack web app
Before and after

Three jobs that ran on paper.

Intake
Read the handwriting Retype into the spreadsheet
Photo in, fields filled 2 → 1steps
Contracts
Print Sign by hand Scan Email Retype
Signed on a phone 5 → 1steps
The month
An afternoon of reconciling
Dashboard, always current 0afternoons
Demo · 21 seconds

One job, start to finish.

One fictional job through the app: job sheet, contract, signature, dashboard. Demo data only.
What the app does

Six screens, one business.

A handwritten job sheet beside the app's new-contract form, with nine fields filled in from the handwriting.
01 · Intake

A photo of the job sheet fills the form.

Claude reads the handwriting: client, agent, address, fees, start date, and rooms.

Job summary marked contract drafted and sent for e-signature, next to the signed staging agreement.
02 · Contracts

One click drafts it. The client signs on a phone.

The contract uses the owner's own template, filled from the job record.

A board with columns for upcoming, currently staged, renewals, de-stage, and completed jobs.
03 · Board

Every job on one board.

From install to de-stage, with the days left on each staging.

Before and after site photos for one property, and a phone showing a photo marked up with a note to swap the rug.
04 · Photos

Site photos, marked up on the phone.

Sorted by property, before and after, and saved to the same Google Drive.

A two-month contract renewal priced at $1,300, with the invoice drafted and a Gmail draft created.
05 · Renewals

Renewals priced, invoices drafted.

The invoice lands in Gmail as a draft. Nothing sends until the owner sends it.

Dashboard with contracted, collected, and outstanding totals and a revenue-by-month bar chart.
06 · Dashboard

The whole year at a glance.

Revenue by month, collected against outstanding, updated as jobs move.

Under the hood Stack and build

Built around the owner's existing workflow: handwritten job sheets, their own contract template, Gmail drafts, and Google Drive.

Built and shipped solo, end to end, from data model to deployment. Claude Code moved the implementation faster; deciding what Belmont needed was the rest of the job.

React Firebase Cloudflare Claude API Image reading E-signature flow