Case Study
Mergen's Workshop — Business Website & Invoicing
Built the public business website and a private invoicing system for a family workshop business. Next.js marketing site with a Supabase-backed invoicing app for quotes, invoices, and client records.
Problem
A 20+ year family workshop business was running on handwritten invoices, scattered client records, and ad-hoc WhatsApp messages. Every quote, invoice and service reminder was manual, and there was no single place to look up what a given vehicle had previously had done to it.
The brief was to replace all of that with a single system that did two jobs well: a public marketing site that made the business look as serious online as it is in person, and a private invoicing app that the owner could actually enjoy using day-to-day.
Approach
Built two coupled deliverables on one stack. The public marketing site is a Next.js App Router build optimised for local search and mobile — services, contact, opening hours, simple to maintain. The invoicing app is a separate authenticated area on the same domain, backed by Supabase (Postgres + auth + row-level security), with a dashboard for clients, vehicles, invoices and the service catalogue.
Everything that would historically have been a WhatsApp message — quote requests, service reminders, payment follow-ups — flows through structured records, so the owner gets a real history per client and per vehicle instead of a chat scrollback.
Technical Details
Next.js 15 (App Router) frontend with server components for the marketing pages and client components only where interactivity is needed (the admin dashboard, forms). Tailwind for styling, light/dark theme. Supabase handles auth, data and storage; Postgres schema covers clients, vehicles (with full service history), invoices, line items and the service catalogue, with RLS policies gating access to the owner's account.
Invoice rendering is PDF-on-demand from the structured records, which means the same data drives the dashboard, the emailed invoice and the client's history view. Payment integration is scoped through PayFast (South African gateway). Deployed on Vercel with preview environments per branch.
Outcome
Live in production at mergensworkshop.co.za and actively used by the business. The owner has a real system of record instead of paper trails, vehicle history is one click away during a service, and invoicing that used to be a chore is now a couple of clicks.
Tech Stack