Work
15 projects in five categories, grouped by the kind of problem rather than the client. Five are live products you can open.
AI & agents
Voice agents, LLM pipelines and tool servers, built so the model never owns a decision it can get expensively wrong.
6 projectsProducts
Client web products that are live and that you can open right now.
5 projectsInfrastructure
Small services sized precisely to the constraints they run under.
6 projectsData & integrations
Pipelines that reconcile systems with no clean keys, and survive the APIs they depend on.
3 projectsMobile
Flutter applications, offline-first where it matters.
2 projects
2026
Azlytics
5.0Shopify rating
Profit analytics for direct-to-consumer Shopify brands. Revenue is not what lands in the bank, so the whole dashboard is built on contribution margin instead.
Next.js · Shopify GraphQL · Node.js · OpenAI · MongoDB
2026
WhatsApp order extraction
85%straight through
Turning free-form WhatsApp haggling into matched orders against a hand-kept catalogue with no clean keys, for an oil-blend vendor.
Meta Coexistence API · Python · PostgreSQL · LLM extraction
2026
Tasks & calendar MCP server
35tools live
One endpoint that lets an assistant read and write Google Tasks and Calendar, hardened against a specific client's probing behaviour.
Python · FastMCP · Google APIs · systemd · Cloudflare Tunnel
2026
Multi-provider LLM router
15keys rotating
An OpenAI-compatible proxy over several providers that rotates a pool of keys and keeps working when the coordination layer does not.
Node.js · TypeScript · SQLite · Supabase · MCP
2026
Sport Card Auctions
5kcards / month
Consignment marketplace for collectible sports cards. The seller ships cards in and the operator handles everything through to payout.
Next.js · Neon Postgres
2026
PinkDetect
iOS + Androidboth stores
Breast health screening and education, shipped as a mobile app with a risk questionnaire, a symptom journal and exam reminders.
Flutter · Node.js · MongoDB
2025
DealsBuilder
Self-hostedVPS, not a platform
Coupon and deals aggregation with social sharing, browsable by store and category, running on a server I manage rather than a platform.
Next.js · Node.js · MongoDB · Hostinger VPS
2025
Pinch
Split stackSPA and API
A marketplace product for restaurants, built as a separated front end and API with a relational store behind it.
React · Vite · NestJS · PostgreSQL
2026
Ebook conversion service
954MiB of memory
An HTTP API that converts an ebook for a 2011 Kindle, sized to fit a machine far too small to do it comfortably.
FastAPI · Calibre · systemd cgroups · Cloudflare Tunnel
2026
Serverless file store
Zero stateon the worker
A two-way file store an AI assistant and a phone browser can both use, holding no server state at all.
Cloudflare Workers · R2 · TypeScript · MCP
2026
Client demo front end
37charts, one token
A reusable demo application that reskins to a new client's brand by editing one file, with the colour system enforced by the build.
Vite · React · Tailwind · ECharts
2026
Component library
3independent axes
A React component library where domain, skin and brand vary independently, and a component that knows which skin it is under is treated as a bug.
React · TypeScript · Vite · OKLCH tokens · Playwright
2026
German thesis harvest
11,675files gathered
An open-access harvest of computer science graduate theses from German university repositories, with the metadata gaps backfilled.
Python · OAI-PMH · DataCite · OpenAlex
2026
Lead enrichment pipeline
6phases, resumable
A long-running enrichment and scoring pipeline that survives the third-party rate limits and timeouts it is built on.
Python · MongoDB · LLM scoring · supervised runners
2026
Wardrobe catalogue
Offline-firstworks in airplane mode
A wardrobe app that answers one question in five seconds while you are standing in a shop: what do I already own that looks like this?
Flutter · Drift · SQLite · on-device inference