Selected work

Built for businesses that need things to work.

Each project starts with the real customer journey: what people ask, what they need to do next, and what the business needs to manage behind the scenes.

Live Local service website + AI assistant

Handyman Plus Van

A full booking-led website for a Swindon handyman service, designed to give customers clear answers and a simple route to book.

  • Service pages and FAQs
  • Calendly and PayPal booking flow
  • Business-trained AI chat assistant
  • Privacy, cookie and terms pages
Visit website
Live Interior design and project-management website

Fabian Interiors

A refined public website for an interiors business, with a clear project-management route and brand-focused design.

  • Custom visual direction
  • Service and project-management journey
  • Mobile-first layout
  • Clear enquiry calls to action
Visit website
Built locally Motorcycle and moped repair website

KC Repairs

A clear local-business site for a Swindon mechanic, built around direct calls, directions and straightforward service information.

  • Custom branded layout
  • Click-to-call contact journey
  • Map and directions
  • Local service copy
Website being prepared
Code on GitHub

Open-source and GitHub projects

Ian's own public projects on GitHub. Each README says plainly what the code does and what it does not do yet.

Research prototypeGitHub

Hu-Mind-AI

An offline-first AI research prototype: one engine proposes ideas, and a separate logic engine checks them for evidence, feasibility and risk before anything is accepted. A person makes the final decision, and it cannot edit files, run commands or publish anything. It shows how Ian builds AI that is checked, logged and kept under human control.

  • Python
  • Hash-chained audit log
  • Offline network policy
  • 75 automated tests
Early prototypeGitHub

ACMDA

A self-hosted messaging assistant for small service businesses. Customer WhatsApp messages go into a queue, a draft reply is written from approved business facts, and a person approves, rejects or regenerates it before it is sent. Sending is still simulated, so it is not yet for unattended use.

  • PHP
  • SQLite
  • JavaScript
  • Python bridge
WordPress plugin · v1.1.0GitHub

bbPress-Report-Abuse

Adds a Report Abuse link to bbPress forum replies and opens a Gravity Forms report form with the reported post's address already filled in. Forum owners get a simple, consistent reporting route with a settings page and filters to change the link; moderators still review every report.

  • PHP
  • WordPress
  • bbPress
  • Gravity Forms
  • PHPUnit
Command-line toolGitHub

Binary-Operator-Bot

"Bob" is a small, deterministic Python tool for AND, OR, XOR and NOT on binary strings. It checks every input and fails with a clear error rather than guessing. Despite the name it is not AI: it is a dependable calculation core, kept separate so model output never replaces exact arithmetic.

  • Python
  • Command line
  • unittest

Only bbPress-Report-Abuse carries an open-source licence (GPL-2.0-or-later). The other three are public to read but have no licence file yet, so normal copyright applies. Everything else on the account is a fork of someone else's project.

See all projects on GitHub

More than a brochure

Good websites remove friction.

That can mean explaining a service clearly, handling a booking, collecting the right information, or answering common questions at any time of day.

PHP AIR approachUnderstand the business first.
Then build the system around it.