Skip to content
Codewright

Work

I’ve only just started working under my own name, so I don’t have client case studies yet. Instead, I built two complete sites for made-up businesses, so you can try the kind of site you’d be buying rather than look at mock-ups.

Two sites you can try

The businesses are fictional, and both sites say so on every page. Everything else is real: the quote form sends, the shop takes test payments through PayFast, and the numbers are measured on the live sites.

The Tidemark Plumbing home page on a laptop
The same page on a phone, with call and quote buttons along the bottom

A plumber in Cape Town

Tidemark Plumbing

Built as a Launch site, R3,500

The pages a trade business needs, with prices up front and a quote form that works properly on a phone.

  • A quote form that takes a photo of the problem, shrinks it on the phone so it sends quickly on mobile data, and emails it with the job details
  • Every request saved as well as emailed, so a job can't go missing
  • Spam filtered out before it reaches the inbox
  • Call and quote buttons that stay on screen on a phone
  • Pages for prices, areas and geysers, written the way people search
speed score on a phone
97/100
to load on slow mobile data
2.4 s
accessibility
100/100

Measured on the live site, 25 October 2026, with Google’s Lighthouse.

Your request comes to me, not to a plumber.

The Lantern Hill Coffee Roasters home page on a laptop
The same page on a phone

An online coffee shop

Lantern Hill Coffee Roasters

Built as a Growth site, R8,500

A working shop: six coffees in three sizes and six grinds, a cart, and checkout through PayFast.

  • A cart that remembers what you chose, even if you close the page
  • Checkout through PayFast, in its test mode
  • Prices worked out on the server, so nobody can change what they pay by editing the page
  • An order only counts as paid once PayFast's confirmation passes four separate checks, and the order page updates by itself when it does
  • An email for every paid order
speed score on a phone
97/100
to load on slow mobile data
2.4 s
accessibility
100/100

Measured on the live site, 25 October 2026, with Google’s Lighthouse.

Pay on PayFast's test page. No real money moves.

And this website

This site is built the same way, and you can check every claim I make about it. It loads in about 409 KB, and on 18 October 2026 it scored 98 for performance, 100 for accessibility, 100 for best practices, 100 for seo in Google’s Lighthouse test. The full measurements are here.

Here are four decisions from building it, including two places where I was wrong and a test caught it. That’s the kind of reasoning you’d get on your own project.

Hosting that allows a business to use it

The obvious free host for this kind of site doesn’t allow commercial use on its free plan, so a site selling services would have needed a paid one. I read the terms before choosing and picked a host whose free tier does allow it. The site costs nothing a month to run.

Accessibility checked by a script, not by eye

I wrote a check that reads the actual colours out of the stylesheet and stops the site being published if any text is too faint to read comfortably. The first time it ran it found three problems, including small grey labels on every page that had looked fine to me.

A layout bug I only found by measuring

One line of configuration quietly doubled every gap on the site, and six pages ended up wider than the screen on desktop. I’d looked at screenshots three times and missed it. A script that loads each page at phone, tablet and desktop sizes found it straight away, and it now runs before every release.

A contact form that can’t quietly lose a message

The database behind the form goes to sleep if nobody uses it for a week. So every enquiry is emailed to me first and only saved to the database second. If the database is asleep the email still arrives, and if the email fails you’re told to write to me directly instead of seeing a false 'thank you'.

Being one of the first

Taking on someone new is a risk, and the prices reflect that. In return, early clients get my full attention. I’m not juggling a dozen projects, and you’ll deal with me directly for as long as we work together.

If it goes well, I’ll ask whether I can write it up here. That’s entirely your choice.