Proof approval portal for sign and print shops

B2BWeb1 weekNext.jsSupabaseS3

The idea

When a vehicle wrap prints with last week’s phone number on it, the shop eats hundreds of dollars in material and press time, and the argument that follows comes down to whether ‘looks good’ in an email thread counts as approval of that specific file. Print MIS systems handle proofing properly, but they start around 200 dollars a month and demand the shop restructure its whole workflow.

The wedge is the approval certificate bound to a version hash. One link to the customer, pin-drop annotations instead of ‘move the logo left a bit’ prose, and a timestamped record of exactly which pixels were approved. It is a paper-trail product wearing a convenience product’s clothes.

Who pays

The shop owner pays 39 dollars a month, recovered by the first misprint it prevents or the first dispute it wins. Sign shops, banner printers, and screen printers all share the workflow, and they gather in reachable places: sign industry Facebook groups, r/signmaking, Signs101 forums, and wholesale printer communities. The customer-facing proof page carries the shop’s logo, so every job quietly demos the product to other businesses.

MVP scope

  • Job creation with proof upload and loginless customer viewer
  • Approve or request-changes flow with pin-drop annotations
  • Version stacking with re-notification on each revision
  • Timestamped approval certificate bound to the approved version’s hash
  • Auto-reminders for silent customers
  • Skip for v1: payment collection, quoting or estimating, production scheduling, multi-page catalogue proofing workflows
// Build prompt — paste into Cursor / Claude Code / Lovable / Bolt
Build ProofLock, a proof approval portal for sign and print shops. Stack: Next.js (App Router), Supabase (auth and Postgres), S3 for artwork storage with presigned URLs.

Core flow: a shop user creates a job (customer name, email, job title, due date) and uploads a proof as PDF, PNG, or JPG. The customer gets an email with a unique link, no account needed, opening a viewer that renders the proof large and zoomable (render PDF pages to images server-side for consistent display). The customer either approves or requests changes; requesting changes requires at least one annotation, placed by clicking the artwork to drop a numbered pin with a comment. The shop uploads a revised proof to the same job; versions stack as v1, v2, v3 with the previous versions viewable but clearly marked superseded, and each new version re-notifies the customer. On approval, the system generates a timestamped approval certificate PDF: job details, thumbnail of the exact approved version, approver name typed by the customer, IP address, and timestamp, attached permanently to the job.

Pages: /dashboard (jobs by status: awaiting proof, awaiting customer, changes requested, approved), /jobs/[id] (version stack, annotations, certificate download), /settings (shop logo and reply-to email for customer notifications), public /p/[token] (customer viewer).

Implementation details: approval must bind to a specific version hash, so a customer can never claim they approved different artwork; auto-remind customers at 2 and 5 days of silence.

Pricing: 39 dollars/month, unlimited jobs and users. Stripe checkout, 14-day trial.

// More B2B ideas