Case study · Taranaki
Migrant Connections Taranaki
A community trust, moved off Wix onto a site built for people on old phones, slow connections and a second language.
The situation
The trust's site was on Wix. The people it needs to reach are not reading it on a new phone with unlimited data, and for a good number of them English is a second or third language. A lot of them are translating the page as they read it.
That makes performance and accessibility the brief, not a nice-to-have. Every kilobyte and every low-contrast heading is a real cost to a real person, and a page builder's default output is not built with that person in mind.
What I did
- Built six pages as hand-authored static HTML with one shared stylesheet. No CMS, no database, and therefore no login page to attack and no plugin to patch.
- Used the system font stack, so there are no Google Fonts, no CDN, no trackers and no analytics. Zero third-party requests on any page.
- Got the home page to roughly 377 KB on first load, with all its imagery.
- Checked every one of the fourteen text and background combinations in the stylesheet against WCAG 2.1 AA. The lowest is 4.58:1, which is white on the primary button. Everything else is 7:1 or better.
- One h1 per page, no skipped heading levels, alt text on every image, a skip link, visible focus on everything interactive, and prefers-reduced-motion respected.
- Built the contact form to run on the trust's own server rather than a third-party form service, so there's no account to lapse and no monthly submission cap.
- Left the Google Maps embed off deliberately. It would have added roughly half a megabyte and third-party tracking to every page load. There's a "Get directions" link instead.
The detail worth telling
Every field on the contact form has a visible label sitting above it, rather than placeholder text inside the box. Placeholder-only labels look tidier and they are a genuine problem: the label vanishes the moment you start typing, and it usually isn't picked up by the page-translation tools people are using to read the site in the first place. Someone halfway through a form, in their third language, should not have to delete what they've written to remember what the box was asking for.
The form also has a "preferred language" field, which exists so the trust can line up an interpreter before they reply rather than after. That one was the client's insight, not mine.
What they got
A site that loads fast on a bad connection, reads cleanly at 200 per cent zoom, and has nothing on it that phones home to anybody. Because it's flat files, it also keeps serving when the host has a bad day and PHP falls over, which happened on this server in August.
The build is finished and verified on a private staging address. It's with the committee for review, which is the right speed for a volunteer-run trust making a decision about its public face.
Run a trust, club or church?
A good chunk of my work is for organisations with a committee, a volunteer treasurer and no budget for an agency. Ring me and we'll work out what's actually needed.