WORK / 06

The work should explain itself.

Useful product work leaves an inspectable trail: the intended outcome, the decisions that shaped it, the artifact you reviewed, the checks that support it and the release you approved.

DELIVERY RECORD

Evidence belongs in the work, not in a vanity counter.

No fictional case study can substitute for a review surface. The operating model is designed so each request can carry its own evidence from intent to production.

  1. 01

    REQUEST

    A written request in your queue: the outcome you want, why it matters and at least one acceptance criterion, in the order you set.

  2. 02

    ACCEPTANCE

    A concrete description of the observable outcome, edge cases and evidence that will demonstrate the request is complete.

  3. 03

    CHANGE

    A pull request, prototype, preview or other deliverable that exposes the actual work—not a percentage-complete update.

  4. 04

    VERIFY

    Relevant automated checks, manual test notes and known limitations written beside the result they support.

  5. 05

    APPROVE

    A durable approval and immutable deliverable reference that record what was accepted before release.

  6. 06

    PRODUCTION

    The shipped outcome and release state, with the next request or follow-up made explicit.

PUBLIC EVIDENCE STANDARD

Consent. Verifiable scope. Real artifacts. Real outcome.

A public case study should appear only after the client approves publication and the scope, review artifacts and outcome can be represented truthfully. Confidential work stays confidential.

So there is no client logo rail, testimonial carousel or invented result here. What follows instead is my own work, where I can show the whole thing.

BUILT END TO END

Products I built myself.

Each one was taken from an empty repository to a working product: schema, application, payments where they apply, tests and deployment. This is the same work a request in your queue turns into.

  1. Snapelement

    A library of 20,500+ unstyled Elementor components that inherit the global styles of the site they are pasted into.

    • Live, with a free monthly copy allowance and a paid tier that lifts it
    • 12,500+ adaptive components, plus an 8,000+ atomic library
    • Component generation and publishing are automated, not hand-built one by one

    Next.js, TypeScript, WordPress and Elementor

  2. Sold

    FreeConvertingTools

    A suite of 200+ browser tools — image, document and text conversion, calculators, generators and developer utilities — all usable without an account.

    • Sold to a buyer who runs it today, handed over with its spec and data
    • 200+ tools behind one navigation and search surface, with no signup anywhere
    • Rebuilt as a second version against a written product spec, with its own test suite and SQL migrations

    Next.js, TypeScript, SQL migrations, Vitest

  3. BroomDesk

    A multi-tenant platform that runs a cleaning business end to end: CRM, recurring scheduling and dispatch, quoting and invoicing with online payments, booking widgets, SMS and email automations, payroll, and a field app that keeps working offline.

    • Tenant isolation enforced in Postgres by row level security across all 67 tables, not by application code
    • Flat plans with unlimited team members, so nothing is metered per seat
    • A written handover that redeploys the whole platform on someone else's provider accounts

    Next.js 15 App Router, React 19, TypeScript, Supabase, Tailwind

  4. LocalDesk

    A marketing platform for local service businesses: online booking, review management, SEO tracking, a lead pipeline and an embeddable chatbot that captures leads.

    • Multi-tenant, each customer isolated on their own subdomain
    • AI drafts content and review replies behind a one-click approval step, never posting unattended
    • Calendar sync with SMS and email reminders

    Next.js 16, TypeScript, Turso with Drizzle, NextAuth

  5. MotiveLeads

    A marketplace for pre-audited local-business leads, with a command-line audit engine feeding the storefront.

    • One monorepo: the audit engine and the marketplace share a single schema
    • Every migration replayed from an empty database in the test suite
    • Runs as a Node application on the same hosting as this site

    Next.js, TypeScript, Postgres, pnpm workspaces

  6. TaskToProd

    This site and the operator console behind it: written intake, Fit Memo, Stripe checkout, the client portal, the request queue and the delivery record.

    • Row level security forced on every application table, proven by database tests
    • Stripe webhooks verified, claimed once and reconciled against the provider
    • Unit, database and browser tests run on every push before anything ships

    Next.js 16, TypeScript, Supabase, Stripe

WHAT REVIEW FEELS LIKE

Move from claim to artifact.

Before

The request states the intended outcome, constraints and proof for done.

During

Questions and trade-offs are written where they can inform the next decision.

After

The deliverable, verification and approval remain attached to the production outcome.

NEXT / INTAKE

Bring a real task. Review a real outcome.

Send the outcome, the context you have and what done should look like. The first response stays written and practical.

Send a task first →

No sales call. No commitment.