Code Projects

Software I have built, mostly with the help of AI tools like Claude Code. For non-software work, see Projects.

ILR Evidence Assessor

Featured Active Feb 2026

Indefinite Leave to Remain (ILR) is a UK immigration status. This tool analyses case evidence against Home Office guidance using 30+ AI models via OpenRouter, then generates formal PDF assessment reports.

Node.jsOpenRouter APIPuppeteerPDF GenerationMulti-Model AI
Built with Claude Code Claude API OpenRouter

DocumentSorter

Active Feb 2026

AI-powered document classification pipeline for Subject Access Request bundles. Renders PDFs, runs local OCR, detects document boundaries, and sorts into categories using Claude.

Node.jsTesseract.jsmupdfSharppdf-lib
Built with Claude Code Claude Haiku API

Job Finder Bot

In Development Feb 2026

A Python automation pipeline that scrapes 7 UK job boards, applies per-user hard filters (location, salary, security clearance), then uses a two-stage AI pipeline to score listings against anonymised CV evidence. Strong matches arrive via Telegram.

PythonPlaywrightOpenAI APISQLitePydantic
Built with Claude Code OpenAI API

Instagram Following Sorter

Active

Classifies 4,358 Instagram accounts from a Meta data export into categories using GPT-4.1 inference on usernames. Custom biographical context in the system prompt doubled location accuracy from 42% to 98%.

PythonOpenAI APIGPT-4.1openpyxlDuckDuckGo API
Built with Claude Code OpenAI API

Simpsons Vibe Finder

Active

A mood-based Simpsons episode recommender. Take a 4-question vibe quiz or search by similarity using TF-IDF scoring, with smart filters for classic seasons and episode types.

ReactTypeScriptViteTF-IDFTMDB API
Built with Claude Code

Fastmail Extension

In Development

A Chrome/Firefox extension for Fastmail with inbox triage, bulk actions, a rules engine for auto-sorting, smart rule suggestions that learn from your actions, and reply templates via JMAP.

TypeScriptReactWXTTailwind CSSJMAP API
Built with Claude Code

PlexFileFixer

Active

Scans Plex media libraries to identify why files cannot Direct Play on specific clients. Uses the Plex API and ffprobe to analyse codecs, containers, and audio tracks across 14,000+ files.

PythonPlex APIffprobeaiohttpSQLite
Built with Claude Code

EmailSorter

In Development

A Flask dashboard for Fastmail inbox analytics. Connects via IMAP, categorises emails by action type, and provides interactive Plotly charts with dark mode and data export.

PythonFlaskpandasPlotlyBootstrap 5
Built with Claude Code

Plex to Letterboxd

In Development

Syncs Plex watch history to Letterboxd via Tautulli. Exports full or incremental history as Letterboxd-compatible CSV with an interactive rating editor and rewatch detection.

PythonTautulli APILetterboxdCLI
Built with Claude Code

Instagram Analyser

In Development

Analyses Instagram message export data with per-sender statistics, sentiment analysis via NLTK, emoji frequency charts, word clouds, and message volume trends over time.

PythonpandasNLTKTextBlobmatplotlib
Built with Claude Code

A note on how these were built: I use AI tools because they let me build things I couldn't build alone, and I think being upfront about that matters. I come up with the ideas, define what I want, and make the decisions; AI helps me turn that into working code. Each project card shows which tools were involved.