[All work](/work?type=work)

# Sprint Coach

Nathan’s coaching business grew by word of mouth. His first website needed to show athletes and parents who they would be training with, and make the next step easy.

[Visit site](https://sprintcoach.co.nz)

I designed and developed the site, from the initial direction and content through to SEO, launch and handover.

![The Sprint Coach homepage: the brand mark and navigation above a headline reading run faster, move quicker, perform higher, beside a photograph of four sprinters at Newtown Park tagged with a free first session.](https://cdn.sanity.io/images/qnuj1c4o/production/7bfb0acc71fcb21de04bdeb62ce0c664ebb6180d-2400x1250.webp?w=1920\&q=80\&auto=format)

## A coaching business with no website at all

Nathan had built a growing group of Wellington athletes entirely through word of mouth. There was nothing a prospective athlete or parent could read before getting in touch, no explanation of what a session actually involves, and nothing for local search to find.

## Putting Nathan on the first page

Nathan is the person athletes will be training with, so I put him on the first page. Every claim in the copy had to trace back to something verifiable, and where we didn’t have a number to support it, I left the number out.

## Static pages, one moving part

The site is built with TanStack Start and React, and every public page is prerendered to static HTML at build time. The only server-side code is a single serverless function that takes an enquiry and sends notification and confirmation email over authenticated SMTP. All copy lives in one content module, so the text can move to a CMS later without touching the components.

## The client approves the exact commit that ships

Staging and production are deliberately separate projects. Staging follows the main branch automatically and serves noindex headers, so review builds never compete with the real site in search. Production has no Git integration at all and is deployed by hand, only once Nathan has approved that same commit. A build audit checks routes, links, metadata, and discovery files before anything is deployed.

## Handover was part of the work

The site is live at sprintcoach.co.nz with local SEO structured data and a documented launch checklist covering DNS, mailboxes, and the Google Business Profile. Nathan controls the domain and the mail, so the parts he needs to own are written down.

## Outcome

The site is live at sprintcoach.co.nz with a working enquiry form and a launch checklist Nathan owns. Nothing reaches production until he’s approved the exact build.

Enquiry flow

### The one moving part on a static site

![The Sprint Coach enquiry form, with name, email, enquiry type, and message fields beside the coach’s contact details.](https://cdn.sanity.io/images/qnuj1c4o/production/1d292faefc594979a98e44b2c22720c95b15a0a1-2400x1250.webp?w=2400\&q=80\&auto=format)

Every page is prerendered. The enquiry form is the only route that reaches a server, sending notification and confirmation email over authenticated SMTP.

[All work](/work?type=work)

## Have a website in mind?

[Book a call ](https://cal.com/hamishburke/30min)<hamishapps@gmail.com>
