Portfolio object / 001Web design + AI workflows / open to inspection Available immediately

Web designer.
AI workflow builder.
Evidence attached.

I’m Kieran Claude Bourne, a web designer who builds client-facing sites and useful, human-controlled AI workflows. I take a loose brief to a clear interface, a working product and a measurable handover — with accessibility, testing and honest boundaries built in.

Checking live deploymentCalling /api/health now
Stoke-on-TrentOpen to web design and product rolesRight to work in the UKAvailable immediately
Portrait of Kieran Claude Bourne
KCB—01ORIGINAL OPERATOR

Founder · Neubor

Kieran Claude Bourne

Web designer / AI workflow builder
81→0 findings53 probes7 live demos

No invented HP. Every number traces to the fact sheet.

NEUBOR / OPERATOR SERIES / 001

Stat block — every number traces to the fact sheet

Build the thing.
Prove the thing.

  • Pixel Probe

    contrast failures a green audit never saw — found, fixed, gated

    308→0
  • Audit Sweep

    WCAG 2.2 findings across 7 live demos, now a blocking gate

    81→0
  • Design Space

    counted variants; 21 built pairs measured ≥ 8/12 axes apart

    6,048
  • Clean Pass

    EPUBCheck errors · Ace issues on a 215-page book

    0 · 0
  • SEO Toolkit

    Google & Semrush certifications — next book in the series: SEO

    12
  • Lighthouse

    this site, mobile, measured 2 Aug — performance · accessibility · best practices

    98·100·100
  • Shipped

    this site, both CVs, live web demonstrations and a grounded AI workflow — 103 commits

    4 days

Method: sit beside the work · RED before GREEN · measure the delta · leave a runnable trail

LawOperationsPublishing3DSEOAI

Drag for foil · tap for the stat block

Start here / selected work

Websites first.
Workflows where they help.

The quickest way to judge me is to open the work, read the client proof, then run the workflow. I design client-facing web experiences, then add automation or AI when it makes a team faster, clearer or safer. Four selected routes are shown here; seven working demos exist across the wider Neubor platform. Every route below is a Neubor-owned demonstration, not an invented client result.

Public client feedback / Google Business Profile

Evidence from real delivery.

5.0from 4 public Google reviews
“10/10 recommend.”
Justin Keesee · website design
“Very efficient. Very fast.”
Danniella Mciver · website & AI chatbot
“Smooth from start to finish.”
James Grieves · website development

These are attributable public reviews of Neubor’s client service and delivery, quoted from the public Google Business Profile. They are public profile evidence, not independently verified case studies, and stay separate from the Neubor-owned demonstrations below. Read the review context Open the public Google profile

AI workflow / runnable exercise

Rules decide. AI explains. A human releases.

In the contract-triage exercise, deterministic rules make the decision, the model explains the result in plain English, and a named human owns the final release. It is a small, concrete example of designing useful automation with clear boundaries.

Try the workflow
Local commerce / connected business system

Saggar Lane Stores

Brief: make a neighbourhood shop easy to browse and act on. I carried one visual direction through the customer-facing catalogue and operating dashboard, with the right next action visible in both.

Role: web designer and front-end builder · Constraint: keep the customer catalogue and operating view coherent · Result: one connected browse-to-action journey · Evidence: live route and captured interface

Neubor-owned demonstration · direct live route · honest limits labelled

Browse the live demonstration shelf
Hospitality / editorial conversion journey

Tomato Canteen

Brief: connect menu discovery, nutrition detail and booking without losing the brand voice. I designed the editorial journey and kept the route to a table clear on a phone.

Role: web designer and front-end builder · Constraint: preserve the brand voice while keeping booking usable on a phone · Result: menu, nutrition and booking read as one clear journey · Evidence: live route and captured interface

Neubor-owned demonstration · direct live route · honest limits labelled

Browse the live demonstration shelf
3D motion / guided product explanation

Assemble

Brief: make a complex product easier to understand. I designed a scroll-led 3D explanation with purposeful movement and an inspectable live route, while keeping the model-credit boundary visible.

Role: experience designer and motion/front-end builder · Constraint: use 3D movement only where it improves explanation · Result: a scroll-led product story with an inspectable route · Evidence: live experience and visible model-credit boundary

Neubor-owned demonstration · direct live route · honest limits labelled

Browse the live demonstration shelf
Product interface / data orchestration

Signal Atlas

An active Neubor product slice built around a MapLibre strategic surface and explicit provider truth: 21 documented runtime source entries, 27 same-origin provider/API adapter modules and five bundled data families. The captured interface is an ongoing product study, not a completed client case study; the related showroom is linked for context rather than presented as a direct Signal Atlas runtime.

Role: product-interface designer and systems builder · Constraint: make provider and data boundaries inspectable · Result: a MapLibre interface backed by 21 source entries, 27 adapter modules and five data families · Evidence: current captured study, with ongoing status labelled

Neubor-owned product study · captured interface extract · active runtime link not claimed

Open the related Neubor showroom
01 / Numbers first

Claims that open
when you touch them.

The headline number is the start, not the proof. Choose one to trace the problem, artefact, measurement and boundary.

Evidence trace / contrast

6,502 rendered elements sampled

both themes · 308 failures found

Text can be unreadable over a photo or a gradient even when the code swears the colours are fine. So I stopped trusting the code and measured the actual pixels on screen — 6,502 of them — found 308 places where the text was too faint to read, and fixed all of them.

01 / Problem

A green axe run could not resolve text over gradients, glass and imagery; those checks were marked incomplete.

02 / Built

A pixel-composited contrast probe that samples the browser render rather than trusting authored colour tokens.

03 / Measured

302 light-theme and 6 dark-theme failures found, fixed and gated; the recorded run now measures 0.

04 / Boundary

This is a rendered contrast measurement, not a claim that one probe covers every accessibility outcome.

CDPpixel samplingcontrastdark mode
02 / How I work

Your two-week cadence.
My last fortnight.

A good web brief moves from context to a useful interface, a measured interaction and a handover. That is the cadence I use at Neubor: from a conversion-led local business site to a scroll-driven 3D vehicle experience, and from the first visual direction to the checks that make the result safe to ship. The dates and receipts live with the work; the point is a repeatable way of working, not a promise made in a slide deck.

The role asks

Embed alongside the people closest to the problem.

Last fortnight

Was told “the framing is fixed”, and treated that as something to test rather than a reason to stop looking.

Runnable output

Context, constraints, and a failure you can actually watch happen.

The same fortnight, from the other side

That is the cadence. This is the codebase it ran against — what the index actually holds, so “I work inside large systems” is a number rather than an adjective.

Context before code / larger repositories

Query the graph. Then open the file.

On an indexed codebase, TokenSave narrows the first pass to callers, callees and affected areas rather than reading the tree. Every figure below was read from a real .tokensave/tokensave.db on the machine this page was built on. Repositories that are not on that machine are not listed — including two that earlier versions of this panel counted.

Selected index

Neubor platform

Files
1,427
Nodes
17,534
Edges
10,718
Read-only SQLite counts · read from the database on 2026-08-03 · graph records, not a quality score
05 / The exercise they asked for

A legal-team brief.
A working answer.

The application asks how AI could help a legal team handle routine contracts. I built the runnable pipeline: deterministic rules decide, a model may explain, and a named human owns release.

What this is, in three lines

  1. The problem. A legal team reviews the same contract clauses over and over. The obvious idea is to let AI read them — and the obvious risk is that it decides something it should not.
  2. What I built. Written rules make every decision. The model is only allowed to explain a decision in plain English; it cannot change one. A named person approves the release.
  3. What you do now. Three real clauses are below. Pick Approve, Review or Block on each, then see what the engine decided and why. Two of them it settles on its own. The third it refuses — and watching it refuse instead of guessing is the whole point.
Runnable excerpt / three short cases

Most AI guesses.
This one stops.

Three clauses from the synthetic contract set. Decide what you would do with each, then see what the engine did and why. Two of the three the playbook can settle on its own. One of them it cannot — and watching it refuse, rather than invent an answer, is the whole point.

Step 1 of 3 · 0 cases reviewed

nda-001-standard.txt · clause 2.2
The obligations in this clause 2 shall continue for a period of three (3) years from the date of disclosure of the relevant Confidential Information.

You be the lawyer. Read the clause above, then press one of the three buttons. Nothing happens until you do — once you choose, the system’s own decision appears next to yours, along with the written rule it used to get there.

Press one of these three buttons ↓
What would you do with this clause?
Your turn

Three actions. One of them hands the decision to a person.

  1. OK lets the clause continue.
  2. Review pauses it for a person — this is the interesting one.
  3. Block stops it at the boundary.

There is no score. The point is to show where the machine stops and a person takes over.

Synthetic data only. The gold set is self-labelled: useful for regression evidence, not a substitute for a qualified lawyer’s judgement.

  • 12Contracts written for itInvented, not real ones · 4 NDA · 4 MSA · 2 DPA · 2 SOW
  • 10Rules in the playbookPlain English, owned by the legal team
  • 64Answers marked by handThe right answer for each clause, to score against
  • 24Safety testsRun offline, no API key needed
  • 8Controls broken on purposeTo prove each one is really doing something
Terminal output from running the exercise: run_eval.py reports PASS on blocking recall, false block rate, position accuracy, document verdict accuracy, citation accuracy, redaction recall, 0 verdicts moved under a fully compromised model, and determinism across repeated runs; red_proof.py shows every control demonstrating a red state; the safety tests pass.
Captured from a real run when this page was built — not a screenshot. Re-running the exercise re-renders it, so it cannot drift from the code you download.
The complete artefact

Run it yourself. Break the gates. Read the handover.

This is a self-contained contract-triage exercise, downloadable in full. Python 3.10+, standard library only, no API key and no network — the four commands above are the whole of it. Every contract is invented; no client, counterparty or real legal document is included.

Download the exercise
06 / Systems shipped

Not slideware.
Things you can open.

Different domains, one working habit: sit inside the constraints, make an artefact, measure it, document the edges.

01Multi-tenant operating system

Neubor platform

Twenty design packages across 92 verticals, seven live demonstration businesses, booking and ordering flows, owner portals and per-tenant AI assistants.

Proof attached

Fail-closed auth, per-service credentials, throttling and a secret scanner that has blocked its own author.

Open the platform overview
02Book and production pipeline

Accessible by Default

A 52,470-word, 215-page working guide to UK and EU accessibility law and practice for people who own a website.

Proof attached

Primary-source claims, validated EPUB/XML, tagged PDF and 700 browser assertions.

Read the live guides
033D service journey / mechanic's showroom

AxleGate Garage

A service-business experience that turns a first question into a guided intake, with practical information and a clear route back to the next step.

Proof attached

The interaction is tested at desktop and phone widths, with a bounded model load, reversible scroll choreography and an honest showroom handover.

Browse the live demonstration shelf
Live portfolioThe Neubor Showroom
07 / Why this work

Good design
has a job to do.

I care about the bit after the moodboard: whether the page is understandable, usable on a phone, accessible, fast enough and connected to a real business outcome.

HANDS-ON

From brief to browser

I move between visual direction, component code, content, integrations and release checks instead of handing the difficult edges to somebody else.

DETAIL + SYSTEM

Useful, not merely pretty

Accessibility, content, SEO, responsive behaviour and the way a customer actually completes a task belong in the design, not in a ticket for later.

HUMAN-LED AI

Tools with boundaries

AI assistants are useful when they stay grounded in the business, fail clearly and leave the human in control of the decision.

Clear enough to use. Interesting enough to remember.

The standard I set for the work: a person should understand what to do, and a team should understand how to keep it working.
08 / The person behind it

The rare bit isn’t the code.

Kieran Claude Bourne

Plenty of people can build. Fewer have spent years on the other side of a counter, getting the real requirement out of someone who hasn’t got the words for it yet — escalated complaints, bereavement transactions, high-value refunds, product liability. All resolved, all with someone’s bad day attached.

That is the hard half of a two-week embed. The build is the easy half. Sitting with a lawyer who has no idea what AI can do for them, and working out what they actually need rather than what they asked for, is a customer-service skill — and I did that professionally for years before I could write a line of code.

I can source leads and talk to clients. I move between departments without friction. I don’t want two days the same, which is the entire shape of this job. And I’m autistic — Asperger’s, and ADHD — which is where the hyper-focus comes from, and the pattern-attention that catches what green dashboards miss. A gift and a curse: I have to keep productive, because my mind takes more than most to tire out.

I’m from Chesterton, in Stoke. I lived in Bradford for a few years with my sister — she practically raised me, was like my mother and father. I was homeless at 17 and she took on the responsibility of raising me. I came back to Stoke when she went to university. If you were wondering why the route here isn’t the usual one, that’s the honest answer.

“Find work you love and you’ll never work a day in your life.” It’s the first thing I reach for when I wake up, and I’m routinely still at it at 1am. Nobody assigns me that.

And why here, specifically. I’ve taken this as far as one person can alone, and what I want next is to be the least experienced person in the room — that is where I get better, and I don’t think I can push much further without it. I also believe you should leave the world better than you found it, and leave something behind that was worth building. Neubor is the thing I built because I wanted the whole loop in one place: a thoughtful brief, an interface that earns its keep, an assistant with boundaries and a handover another person can run. I want the ordinary day-to-day of that work with a strong team — not a title — and I’d relocate for it.

09 / Everything else, kept

The complete evidence.
Nothing removed.

The three below were full sections until today. They are the same sections — the route that got me here, the grounded chat and the wax seal — moved out of the main scroll so the evidence above it can be read in one sitting. Open any of them; opening one closes the last, so the page stays quick.

The unconventional routeChef, operator, founder. No computer-science degree — the comic, the full chronology, and why it is relevant.
Ask me anything, groundedThe chat in the corner answers from two files, refuses outside them, and names prompt injection when it sees it.
Ask me anything, grounded

There’s a chat in the corner. Try to break it.

It answers as me from exactly two files: the fact sheet every number on this CV traces to, and my interview answers. Ask it something outside those and it refuses. Try to prompt-inject it and it says so. Those two behaviours are the demo — anything else would make a liar of the rest of the page.

IN THE RECORDS

It answers

Numbers, dates, the workflow, the mistakes. Specific, with the figure attached.

OUTSIDE THEM

It refuses

Salary history, references, my family. It points at my email instead of guessing.

INJECTION

It says so

A rule catches it before the model sees it, and an output guard refuses to print a reply that looks like a leaked prompt. A review beat the first layer twice; both are scored cases now, and the threat model says what still gets through.

Or use the button with my face on it, bottom-right. It follows you down the page.

The physical layerThe wax seal from the envelope, rendered in 3D in the browser. If a letter reached your desk by hand, this is the same red N.
10 / Let’s build one

Give me the
messy brief.

Available immediately · Stoke-on-Trent · open to web design, product and frontend roles · happy to demo the work live.