A UK caravan servicing business
A WordPress marketing site alongside a Laravel back office and customer portal, with a five-role permission model and published service reports.
The shipped schema modelled exactly one vehicle per customer, with the vehicle fields on the customer table. The new design needed many — and roughly fifty files read those columns, a good portion at SQL level where an ORM accessor cannot intercept. Migrated additive-first with an observer-synced mirror, so no file had to change on day one and there was no freeze.
An Indian two-sided marketplace
Consumer and expert apps on a shared backend — wallet, coins, paid chat and real voice calls, on both stores.
Apple blocked an update demanding wallet top-up move to in-app purchase, which would have taken the margin with it. Rather than concede, we researched the person-to-person services exemption, benchmarked comparable apps operating under it, and built the appeal on that basis — while scoping a calls-only fallback in parallel in case it failed.
An Indian outdoor media operator
An operations platform for physical advertising inventory — properties, availability and bookings across a city.
Kiosk properties carry a fixed pole capacity, so availability is not free-or-taken. Multiple advertisers can book the same kiosk simultaneously provided enough poles remain free across the overlapping date range, and the system must refuse anything that would exceed capacity in that window. Closer to airline seat inventory than to a calendar.
A Tata-linked Indian B2B commerce group
A telecalling and delivery-confirmation platform with automated outbound IVR, recipient import, telecaller dashboard and filtering.
Edge functions with two invocation paths — triggered manually by a telecaller with per-recipient data, and run one-by-one from a scheduled job for batch processing — so the calling logic lives in one place rather than being duplicated. Hindi text-to-speech, with the supported language set checked against the provider's documentation before it was committed to.
An Indian tea network business
A mobile application on a managed database, on a plan that includes no backups at all.
Rather than making the upgrade a condition, a scheduled job now dumps roles, schema and data nightly and commits the snapshot to a dedicated branch. Every commit is a restorable point-in-time snapshot with restore instructions in that branch's README — and the client took one manual backup first, before trusting the automation.
A UK barcode and auto-ID retailer
An OpenCart storefront whose commercial core is an automated product feed from a distributor, staged and synced by a scheduled job.
Titles and descriptions were not pulling through per SKU — the parent product name was being applied to every variant beneath it, so materially different part numbers appeared identical to customers and to search. Fixed at the mapping layer, with a reconciliation check that flags any variant matching its parent.
An Irish group of certification businesses
A headless rebuild — WordPress as the content backend, Next.js in front, with content modelled in ACF and served through a custom REST namespace.
Roughly nine thousand lines of static country-guide content — the largest file in the repository — retired into editable CMS records. Every guide became a queryable record with typed fields, which is what made the AI content workstream that followed viable at all.
A UK grassroots and academy football platform
Players build verifiable profiles with video; coaches are listed, filtered and discovered. Subscription tiers tied to upload limits, plus a React Native companion app.
Three things testing caught that a feature list would not: age-filtered search silently fell back to random results when nothing matched, a coach could be registered as six years old when real qualifications start at fourteen, and document verification accepted the wrong country's ID entirely. All three were trust problems rather than bugs.
A Siliguri food wholesaler
A B2B ordering app across two legal entities, with items, pricing, price lists and customers all sourced live from the accounting ledger.
A single customer can be scoped to one company, the other, or both — with exclusivity enforced on phone number so an exclusive customer cannot be registered against the other entity. GST-inclusive pricing throughout, plus a price-change warning at checkout because an unauthenticated shopper's prices change once their price list is applied.
A Paris membership publication
A live WooCommerce Subscriptions migration on a revenue-generating base, with two parallel plan types, store credit and custom lifecycle emails.
A fixed cutover date with no rollback. Delivered as must-use plugins so billing-critical code cannot be deactivated by an admin, with Action Scheduler reconciled explicitly — that background runner is where renewals actually execute, and where subscription migrations break silently.
An Indian biologicals and pharma company
A field sales app for medical representatives, published to both stores with assets produced in-house.
Punch-in and punch-out each capture an odometer photograph plus a manual reading, with in and out kilometres recorded and travel allowance calculated automatically. The scope discipline mattered as much: the client's document specified leave management at the depth of a dedicated HR platform, and we said no and triaged it into a later phase.
A UK registered charity
A scoping engagement — technical specification, a vendor evaluation tool and a CRM recommendation — ahead of an invitation to tender.
Rather than bid on a paper design, we built a working prototype of the CRM-to-website integration first. It proved the flow end to end, and it surfaced three blockers that would have wrecked a fixed-price bid: no API keys on trial accounts, payments routed through a connected-account model that cannot be tested without live credentials, and a sandbox available only on the top plan.