HandyProof
Self-help document tool · not legal advicePostgres · SSE · HMAC signed links

Speak it.
Snap it.
Sign it. Get paid.

A signed handyman agreement in 60 seconds. Voice-powered scope, photo evidence, electronic signatures, and a real audit trail — built for the moment a homeowner says "can you take a look at this?"

Risk gateCalifornia guardrailsLicensed contractor flag
9:41
HandyProof
Draft
Step 4 of 9

Confirm the scope

Generated scope
Cabinet hinge repair
Included
  • · Replace failing top hinge
  • · Realign door so it closes flush
Not included
  • · Refinishing or painting
Total
$120
Risk gate
Likely minor repair
Speak it
Snap it
Sign it
Get paid
Why HandyProof

Contractor paperwork, made simple.

Built for the moment when a homeowner says "can you take a look at this?" — before the wrench comes out.

Voice + photos

Tap mic to dictate the job. Snap before-photos. AI summarizes each photo and tags risk cues.

Clear scope

Auto-filled Included, Not included, and Acceptance criteria. Edit any line — clauses stay static.

Signed change orders

New work needs a written change order. Both parties sign in HandyProof before any extra is performed.

Completion receipt

After-photos, payment status, customer sign-off. The Repair Record lives in your dashboard forever.

Tamper-evident audit

Every photo, signature, and change order is hash-chained on the server with real IP and user agent.

Not legal advice

HandyProof is a self-help document tool. Not a law firm. Templates only — consult an attorney.

How it flows

From “take a look” to “paid in full.”

  1. 01

    Speak it

    Mic on, describe the job. Pick a category. AI keeps the transcript.

  2. 02

    Snap it

    Add before-photos. AI tags each one and surfaces risk cues — wiring, plumbing, permits.

  3. 03

    Confirm

    Scope, price, payment. California guardrails kick in for deposit + license thresholds.

  4. 04

    Sign it

    Both parties sign on the same phone — or share a signed link. Audit trail attached.

  5. 05

    Get paid

    After-photos, customer sign-off, payment status. The Repair Record is yours forever.

California-first

Built around the rules that actually trip people up.

HandyProof shows California-specific guardrails before you sign — so a $1,200 unlicensed handyman job, or a $600 down payment on a $3,000 contract, does not blindside anyone.

  • $500+ home improvement projects generally need a written contract.
  • Unlicensed handyperson cap: $1,000 total (labor + materials + costs).
  • Down payment ≤ $1,000 or 10% of contract, whichever is less.
  • Permits, hired workers, and licensed-trade categories trigger red flags.
HandyProof does not verify licensing in this MVP. We surface signals; you and the customer decide.
Risk gate · Yellow
Review caution

A few items deserve a second look before signing.

  • · Higher-risk category — confirm scope is small.
  • · California: deposit appears to exceed the cap.
  • · Provider license status is unclear.
Live, on both phones

One signed link. Two phones. ~50 ms.

The provider signs first, the customer opens an HMAC-signed link, and the moment they sign — both screens update over Server-Sent Events. No refresh, no polling, no second app.

Signed sharing link

HMAC-SHA256 token in the URL. Cannot be guessed, audience-bound (customer / provider), persisted in the DB so it can be revoked.

/sign/<id>?t=<token>

SSE realtime

EventSource subscribes per agreement. Snapshot on connect, deltas on every mutation, auto-reconnect.

/api/agreements/<id>/events

Tamper-evident audit

Every event hashed with SHA-256 against the previous one and anchored on the agreement row.

hash = SHA-256(prev || canonical)

Your next handyman job, on the record.

Create a signed work agreement in 60 seconds. No accounts, no card. Real Postgres backend, real HMAC links, real hash-chained audit.

HandyProof — Speak it. Snap it. Sign it. Get paid.