Tarnfield

Websites, web apps, desktop and mobile apps for small businesses and early-stage founders.

Demo Roasters: coffee list Ferrez Guiding: home Demo Roasters: plain-English search Demo Roasters: product page Tally: owner money page Polisher: paste a draft Demo Roasters: basket Demo Roasters: home Business dashboard: insights Polisher: home Demo Roasters: gift sets Polisher: before and after Ferrez Guiding: routes Demo Roasters: dark theme Polisher: price

Tarnfield builds websites, web apps, desktop apps and mobile apps for small businesses and early-stage founders. We agree what it has to do first, show you a working preview early, and test it before anything goes live. Our work includes a Cape Town guide's booking site, a gym app demo, a business dashboard, an online coffee shop and an AI writing tool.

Projects we've worked on

Ferrez Guiding

Client site

A custom website for Ferrez Guiding, a Cape Town hiking guide on Table Mountain and Lion's Head. Visitors compare six routes, check sunrise and sunset times, then build a ready-made WhatsApp booking message in a few taps. It is designed for phones, works without JavaScript, and lets the owner update reviews by editing one plain text file, with no tools.

The problem

Visitors to Cape Town need to pick the right guided hike and book it from their phone, without forms or accounts.

The result

A finished client site. Visitors choose a route, check the light for their date and send a booking by WhatsApp in a few taps.

Read the full case study

The numbers

The site's full checks passed on 2 November 2026: generated pages match the facts file, the reviews file is valid, unit tests pass, and 282 browser tests passed with 38 skipped because they did not apply.

Our approach

Plain HTML, CSS and JavaScript, with no framework. Six routes with photos, grades, times and prices, a side-by-side table, a sunrise and sunset planner, and light and dark modes.

What we would improve

Some of the client's wording is still being confirmed with him.

Client site for a Cape Town hiking guide, shown with his agreement. Name, logo and photos belong to Ferrez Guiding.

Ferrez Guiding home page: guided hikes on Table Mountain and Lion's Head
Ferrez Guiding routes, each with a photo, grade, time and price

Demo Roasters

Demo shop

A made-up UK coffee shop with 40 products, plain-English search, a basket, card checkout in Stripe test mode, customer accounts and an admin dashboard.

The problem

Show every working part of a small online shop in one demo that costs nothing to run and is safe to leave online.

The result

Customers can search in their own words, such as "fruity coffee for filter". In a fixed test, 16 of 20 searches passed and none broke a price limit or a decaf request. Google's Lighthouse test gave it a top accessibility score and a good speed score on a phone. No real customers: it is a demo.

Read the full case study

The numbers

Search passed 16 of 20 queries on a fixed test, with no price or decaf rule broken; the target was 18. Lighthouse on mobile, median of 5 runs on 26 October 2026: performance 91 to 98, accessibility 100. 224 unit, 54 integration and 136 end-to-end tests pass.

Our approach

Search first picks out hard rules, such as a price limit or decaf, then a small free language model on the server matches meaning, blended with keyword search. No paid AI, so no cost per search. Stock is held while a checkout is open, so two people cannot buy the last bag. Live payments are refused in code.

What we would improve

Fix the four missed searches and re-test on new queries. Let the admin add products, not only edit them. Confirm payments with a Stripe webhook.

Demo shop. Nothing is sold.

Demo Roasters search results for a plain-English query
Demo Roasters gift sets page showing a grid of gift boxes

Polisher

Demo app

Paste three to five samples of your own writing, then an AI draft, and get the draft back in your voice. Demo accounts are deleted after 24 hours.

The problem

AI drafts sound like AI. Make them sound like the person sending them, without changing the facts.

The result

Every rewrite is checked, and any number, link or quotation that changed gets flagged. The AI bill cannot run away: a hard daily budget of about 10p covers all visitors. A review of the code, not a live attack test, found no confirmed vulnerability, and its four leads were fixed.

Read the full case study

The numbers

1,600 unit, 73 integration and 200 end-to-end tests pass (29 October 2026). A source-only security review found no confirmed vulnerability, and its four leads were fixed. Lighthouse on mobile, 18 October 2026, before the demo changes: performance 94, accessibility 100.

Our approach

Rewrites come from a fast AI language model. A rule-based clean-up then strips AI habits such as long dashes, stock phrases and hidden characters, and enforces British or American spelling. A meaning check flags any number, link or quotation that changed. A hard daily budget of about 10p caps AI cost for all visitors.

What we would improve

Re-run the blind quality comparison with several judges, not one.

Demo app. Test payments only.

Polisher with a sample AI email pasted into the draft box
Polisher home page

Tally

Demo app

An interactive demo of a gym membership and loyalty app. Members book classes, check in with a wallet card, keep weekly streaks and climb plate-colour ranks within their weight class. Owners get a full-screen dashboard showing money, attendance and members drifting away.

The problem

Show gym owners what a members' app and an owner's dashboard could do for them, before anything real is built.

The result

A finished, clickable demo with a phone app for members and a dashboard for the owner. It is not a working product: nothing is saved or sent.

Read the full case study

The numbers

All 6 member screens and all 9 owner screens opened at laptop and phone sizes with no page errors.

Our approach

One self-contained web page in HTML, CSS and plain JavaScript, with no server or database.

What we would improve

The dates in the demo are fixed, so they will need updating as they age.

Demo app. The gym, its members and every figure are made up.

Tally owner dashboard: check-ins, members, class fill, revenue and members drifting away
Tally member app on a phone: rank, check-in and weekly streak

Business dashboard

Private tool

A private dashboard for running a small website design business. It tracks leads, jobs and clients, builds quotes from a price list, issues invoices and records payments. Insights show the pipeline, profit and what needs attention today. Passkey sign-in keeps it secure, and it works on phone and laptop.

The problem

Run a small website business from first lead to final invoice in one place.

The result

In daily use by Josh. Quotes warn when a price is too low, and "Needs you" shows what is overdue.

Read the full case study

The numbers

Its full test suite passed on 2 November 2026: 47 unit tests, 3 PC app tests and 106 browser tests. The market price ranges on the quotes page are the only researched figures shown, from October 2026.

Our approach

Plain JavaScript on Cloudflare Workers, with a Cloudflare D1 (SQLite) database. Sign-in uses passkeys.

What we would improve

Tidy the job page checklist, which wraps into a narrow column, and put a finished calendar accessibility fix live.

Private tool in daily use. Every client, job and figure shown is made up.

Business dashboard home: figures, what needs attention and jobs by stage, with made-up data
Business dashboard insights: sales pipeline, money forecast and profit per job, with made-up data

Tested before it goes live

Figures from each project's own test runs.

What we can build for you

How a project runs

  1. First, you tell us what it must do.

    We send a short written plan: the pages or screens, what each one does, and the dates. Agreed before we start. If you already have a site or app, we look at what works before changing anything.

  2. Then you see it working, early.

    A private preview link from the first week. Ask for changes there and check them again.

  3. Last, we test it and put it live.

    Checked on phones and desktops, in light and dark mode, with a keyboard alone, and for speed. Card payments, if you need them, are tested in Stripe test mode before any real money moves.

The team

Two co-founders, one in Aberdeen and one in Port Elizabeth.

Tell us what to do.

We send back a short written plan: the pages or screens, what each one does, and the dates.