All work

Contractors Watch

A private property-history platform for verified US contractors, built from scratch in Next.js: search an address, read reviewed reports from other contractors, and decide before you sign.

Web app (SaaS)United States
Contractors Watch home page on a MacBook
Contractors Watch on an iPhone

Hover a screen to scroll the page

Overview

Contractors Watch is a private tool for US contractors, organised by property address. Before pricing a job, a contractor searches the address and reads what other verified contractors ran into there: late payments, change-order disputes, site access problems, and how each one ended.

I built the whole product from scratch as a custom Next.js application: the marketing site, sign-up and business verification, the contractor workspace, the reporting and review flows, and memberships on Stripe.

Client
Contractors Watch
Industry
Construction
Location
United States
Year
2026
Services
  • Product strategy
  • UX and UI design
  • Custom Next.js development
  • Verification and review workflows
  • Stripe subscriptions
  • Technical SEO
14days free, no card needed
6issue types in the report form
5risk levels at a glance
4safeguards on every report

Built for every screen

The same site, laid out for each screen. Drag the edge of the window or pick a device. Hover the screen to scroll the whole page.

contractorswatch.com
Contractors Watch on desktop
Contractors Watch on tablet
Contractors Watch on phone

1440 pxDesktop layout

On real devices

Contractors Watch on an iPad
Contractors Watch on a MacBook
Contractors Watch on an iPhone

The challenge

Contractors usually find out about a difficult property the hard way: after the material is bought, the crew has done the work and the last invoice is not paid. Other crews often knew, but nothing connected them. A public review site was not the answer either, because it would expose homeowners and put the contractors who spoke up at risk.

  • Sensitive information

    A report about a property can hurt someone. Nothing could go live without checks, and a wrong report needed a clear way to be corrected.

  • Privacy on both sides

    Homeowner names and contact details could never appear, and the contractor who filed a report had to stay anonymous.

  • Real contractors only

    Access had to be limited to verified, licensed and insured businesses, with rules nobody could skip by accident.

  • Easy to start, simple to pay

    Contractors needed to see the value before paying, without the free trial turning into a loophole.

The goal

Give contractors a private, reviewed history of every address before they sign, keep homeowners and reporters out of the spotlight, and make the system fair to both sides.

Site structure

The public pages explain and sell the product. Everything else sits behind sign-in and verification.

contractorswatch.com
Public site
  • How it works
  • Features
  • Pricing
  • Refer a contractor
  • About
  • Trust & safety
  • FAQs
  • Resources and blog
  • Contact
Getting in
  • Register
  • Business verification
  • Sign in
  • Password reset
Contractor workspace
  • Dashboard
  • Property search
  • Property pages
  • Reports
  • Dispute status
  • Account
  • Billing
Review team
  • Verification decisions
  • Report reviews
  • Owner challenges

What I did

  1. Contractors search a property, never a person. One address resolves to one property record, so every report lands in the right place and nobody's name is ever the search term.

    Build it around the address
  2. A person checks each business's license and documents, and an account cannot be approved without a business license, a current insurance date and an insurance certificate on file. That rule is enforced in the database, not left to a checklist.

    Let only verified contractors in
  3. A guided form covers payment, contracts and change orders, site access, communication, safety and property condition. Contracts, photos and messages go to private storage, where they back the report up during review and are never published.

    Keep reporting short and factual
  4. Every report is read by a named reviewer who records a written reason to approve it, send it back or reject it. Nobody can review a report from their own company, and the decision trail stays even if a decision is later reversed.

    Put a person between filing and publishing
  5. Property pages lead with a risk level, list what was reported and when, and show the address on a map, so contractors can confirm it is the house they actually visited.

    Show the answer at a glance
  6. Reports show the trade that filed them, never the company. Property owners can challenge anything published about their address, and a person reviews every challenge.

    Design for privacy and fairness
  7. A 14-day free trial starts once a business is verified, with no card needed. Then monthly or annual plans on Stripe, with prorated plan switches, a self-serve billing portal and a referral programme that earns free months.

    Memberships that run themselves

Five levels, one glance

Every property page leads with a single risk level, from Low to Critical. Each level has its own bar, tint and text colour in the design system, so the answer is clear before anyone reads a word, and still readable for colour-blind users because the name is always shown.

  1. Low#0F9D58
  2. Moderate#C8930A
  3. Elevated#D9701E
  4. High#D1341F
  5. Critical#B0142A

Brand

A trust-first palette: deep navy for authority, one bright blue for every action, teal for anything verified, and a separate five-step risk scale that never borrows the brand colours.

Night Navy#000E24
Deep Navy#001A43
Signal Blue#0050F6
Verified Teal#00BFA8
Slate#64748B
Cloud#F8FAFC
Headings and text

Aa

Geist

Labels and data

Aa

Geist Mono

The pages

Pick a page, then scroll inside the window to explore it from top to bottom.

contractorswatch.com
Home page, full length
Features page, full length
How it works page, full length
Pricing page, full length
Trust & safety page, full length
About page, full length
FAQs page, full length
Scroll inside

Results

99

Lighthouse performance

Prerendered pages served from Vercel's edge, with a Largest Contentful Paint of 0.6 s on desktop.

100

accessibility, best practices and SEO

Lighthouse's top score in all three categories for the live home page.

4

safeguards on every report

Verified access, human review, reporter anonymity and an owner's right of reply.

What it means for the client

  • Decide before committing

    Contractors can price a job differently, ask for more up front or walk away, before an estimate turns into a commitment.

  • Reporters stay protected

    Other contractors see the trade, never the company, and evidence never leaves private storage.

  • Fair to property owners

    Owners can respond to any report, and a person reviews every challenge.

  • Billing without the admin

    Members update cards, download invoices and switch plans themselves in Stripe's billing portal.

Speed

A product site with interactive previews and animated sections that still paints in under half a second. These are Lighthouse scores for the live home page.

Lighthouse, DesktopReport from October 18, 2026
99Performance
100Accessibility
100Best Practices
100SEO
First Contentful Paint
0.4 s
Largest Contentful Paint
0.6 s
Total Blocking Time
100 ms
Cumulative Layout Shift
0
Speed Index
0.8 s

Lighthouse 12.8.2, emulated desktop, initial page load

The stack

The tools behind the build, and what each one does on the site.

  • Next.jsA custom application written from scratch: prerendered marketing pages for speed, plus the contractor workspace, verification, reporting and review flows behind sign-in.
  • Tailwind CSSThe design system: navy and signal blue, Geist type, and a five-step risk palette with its own text and background colours.
  • StripeTrials, monthly and annual plans, prorated plan switches and the self-serve billing portal.
  • VercelHosting, edge caching and analytics.
Next projectMuhammad Umaid
Muhammad Umaid website

Have a project in mind?

Book a free call. We’ll find what is costing you clients and map out the website or AI system that fixes it.

Book a free call
  • Free discovery call
  • Clear price and scope in writing
  • Websites and AI under one roof