← Playground
Joist Trust Sandbox — verified voice-to-invoice happy path

PROTOTYPE1 WEEK BUILD2026

Joist Trust Sandbox

Voice-to-invoice for contractors — verified when matching is solid, amber review when it isn’t.

ProductPrototypeAI

Overview

For a Joist interview, I built a sandbox that turns spoken or typed field notes into a draft invoice. Speech-to-text was the easy part; the harder problem was what happens when catalog matching is incomplete. Contractors talk fast, catalogs are messy, and a wrong SKU on an invoice is worse than a blank line, so the prototype centers a trust pipeline — intake, normalize, catalog, pricing, then a trust score — with a clear verified path versus an amber path that surfaces gaps before anything is sent.

The problem

Automating invoicing sounds clean until you’re on a job site, where accents, noise, slang, and partial phrases break naive NLP. If the product auto-fills with low confidence, people learn not to trust it; if it blocks on every ambiguity, it’s slower than typing. The product question was how to make automation useful when matching is strong, and explicit about needing a human when it isn’t, without turning every draft into a review chore.

Approach

I put trust in the UI rather than burying it as a backend score. The handshake engine streams phase logs so you can watch matching happen; high-confidence paths go straight to a clean phone invoice; and gaps — quantity weirdness, missing price, fuzzy catalog hits — surface as amber review, where a mediation UI lets someone fix line items before send. Demo shortcuts inject verified and amber scenarios so the story still works without a perfect mic, which mattered for interview delivery.

What I built

A three-column sandbox with voice/text intake and a parts playground of about 69 contractor SKUs across trades, live handshake trust logs, and a smartphone invoice preview. It includes catalog browse, mediation cards for physical and labor lines, and a success state when the draft clears. Presenter scripts cover interview delivery for the happy path, crew slang, and noisy speech-to-text, so the trust story is demoable under pressure.

Joist Trust Sandbox — amber path requiring human review
Amber path — trust gaps surface for human review before send

1

Speak or type a field note

2

Watch handshake match SKUs

3

Verified draft or amber review

4

Confirm on the phone preview

What I learned

Key takeaway

In field software, autonomy only helps when the product is honest about uncertainty. The trust score matters less than whether the UI makes the handoff obvious — when matching is solid, stay out of the way; when it isn’t, ask before a bad line item ships.

What's next

A real STT model beyond browser Web Speech, richer gap types, multi-invoice sessions, and tighter coupling to actual Joist catalog and pricing rules if this ever left sandbox land.

Tech stack

  • React
  • Vite
  • TypeScript
  • Tailwind
  • Framer Motion
  • Web Speech API
  • Vitest