Selected work

Real clients. Real numbers.

A sample of what's shipped. Every one started as someone's manual, painful process.

rows: 165,420 · recalc: 0.0s
Tradeforcepython · sheets api

A 165k-row sheet was choking on array-formula recalculation. Rebuilt as an offline Python pipeline that pushes clean data back through the Sheets API.

165k+ rows, recalc near-instant
View case
10 sheets · CSE arrays · live dashboard 2,140 records tracked 0 manual lookups
BLU Cleaningsheets · apps script

Manual payroll calculations replaced with an Apps Script routine that reads hours and outputs pay, every cycle, with no hand-math.

0 manual payroll math
View case
cron › GET /listings?p=14 200› parsed 380 records› classify(model) ✓› dedupe → 312 unique› push → sheet ✓
All Points Northscraping · ai processing

Public sources scraped and AI-classified into a clean, categorised member directory, with no manual data entry.

100% directory built, no manual entry
View case
price watch · every 15 min Model A · competitor drop alert sent → sales Model B · competitor drop watching Model C · competitor drop watching
Toyota dealershipscraping · alerts

A scraper watches competitor listings on a schedule and fires an alert the moment a relevant price moves.

15 min price-change detection loop
View case
21 files · Rhino 1 file · V8 function sync_(){ batch.update() } zero downtime ✓
Willow Glen Tutoringapps script migration

A legacy Apps Script project migrated from the deprecated Rhino runtime to V8 and consolidated from 21 files into one maintainable codebase.

21 → 1 script files, zero downtime
View case
deal model · scenarios
Hicham Ritab — Real Estatesheets modeling

A reusable Google Sheets model that runs every real-estate deal through the same assumptions, scenarios and outputs.

1 model every deal, same framework
View case
10 sheets · CSE arrays · live dashboard 2,140 records tracked 0 manual lookups
Government operations unit · UAEexcel · array formulas

A ten-sheet Excel operations workbook with CSE array formulas and a live dashboard, built under a strict no-VBA, no-Power-BI constraint.

10 linked sheets, one live dashboard
View case
callwhispergptsheet voice → structured row · < 8s
Nonprofit donation line · UStwilio · whisper · gpt

A serverless pipeline that takes a phone call, transcribes it, extracts the donation details with an LLM, and writes a structured row to Google Sheets.

< 8s voice call to structured row
View case
1,398 venues · geocoded · QA'd
Fitness industry client · USscraping · qa · maps

A 1,398-record competitor dataset built, QA'd and corrected, then turned into an interactive Leaflet map and a portfolio infographic.

1,398 gyms mapped & QA'd
View case
etude-notariale.fr
Notary practice · Franceweb · secure access

A repeatable pipeline for taking exported web apps to a live, password-gated deployment on Vercel — diagnosing the build failures most people get stuck on.

100% deploy success, gated & live
View case
rows: 165,420 · recalc: 0.0s
E-commerce brand · UKsheets · apps script · api

Shopify stock, supplier feeds and a master Google Sheet kept in continuous two-way sync, so inventory is never wrong twice.

0 stockouts from sync gaps
View case
dispatch.internal
Logistics SMB · FRreact · supabase

A real-time React dispatch board on Supabase that shows every job and driver status as it changes, replacing a physical whiteboard and a group chat.

1 board live dispatch, all drivers
View case
cron › GET /listings?p=14 200› parsed 380 records› classify(model) ✓› dedupe → 312 unique› push → sheet ✓
Recruitment agency · EUscraping · enrichment · email

Scraping plus enrichment plus sequenced cold outreach, assembled into a lead engine that surfaces qualified prospects every week on autopilot.

380/wk qualified leads surfaced
View case
portal.gestion
Property manager · MAreact · supabase · auth

A web portal on Supabase + React giving owners and tenants their own secure logins for documents, requests and status — replacing scattered email threads.

1 portal owners + tenants, one login
View case
10 sheets · CSE arrays · live dashboard 2,140 records tracked 0 manual lookups
Finance team · CHexcel · power query

A Power Query–driven Excel pack that ingests the source files and rebuilds the month-end reporting automatically — refresh instead of rebuild.

3 days → 3 hrs month-end reporting pack
View case
callwhispergptsheet voice → structured row · < 8s
Hospitality · FRcalendar · automation

A booking-to-calendar automation that creates events, sends confirmations and fires reminders automatically, cutting no-shows without manual follow-up.

0 no-shows chased by hand
View case
10 sheets · CSE arrays · live dashboard 2,140 records tracked 0 manual lookups
Multi-store retail · EUlooker · bigquery

A data pipeline feeding a single Looker Studio dashboard so every store's KPIs sit side by side and refresh on their own.

1 view every store, live
View case
callwhispergptsheet voice → structured row · < 8s
Services SMB · EUpython · ocr · sheets

A Python + OCR pipeline that reads incoming invoices, extracts the fields and writes a structured row straight into the ledger sheet.

secs invoice → ledger row
View case
price watch · every 15 min Model A · competitor drop alert sent → sales Model B · competitor drop watching Model C · competitor drop watching
Marketplace seller · USscraping · alerts

A scraping-and-alerting system that monitors competitor pricing across SKUs and flags meaningful moves, with a dashboard for the full picture.

24/7 competitor price watch
View case
members.site
Creator · FRweb · auth · vercel

A web app with authentication and a paywalled member area, deployed on Vercel — content behind a clean, reliable login.

gated paywalled member area
View case
Loading next projects

Have a process that looks like one of these?

Describe it in one sentence. You leave the call with a clear scope and a fixed price — not a sales pitch.

Book a 30-min scoping call →