Everything from a landing page to a product, built by one person who stays accountable.
No account managers, no hand-offs between three contractors. You brief the person who writes the code, and that person is still there when you need a change in eight months.
Sites that stay fast and editable after I leave.
Most WordPress sites are slow for the same reason: too much was solved by installing something. I build with as little as the job needs, so the site loads quickly and your team can actually use the editor.
- Custom themes and block-based builds
- Builder work in Bricks, Oxygen, Breakdance and Elementor when that is what you are on
- Redesigns and rebuilds that keep your SEO intact
- Migrations between hosts, domains and platforms
- Multisite setup and management
- Editor experience designed around how your team actually publishes
Typical engagements
- Brochure site rebuild
- 3–5 weeks
- Custom theme build
- 4–8 weeks
- Platform migration
- 1–3 weeks
- Template or page addition
- 2–5 days
Timelines assume content is ready. I will tell you honestly where yours sits before we start.
When custom beats a plugin
- The plugin that does it costs more per year than building it once
- You use 5% of a plugin and carry 100% of its weight on every page
- The plugin is abandoned, or the author just announced a rewrite
- Your requirement is genuinely specific to how your business works
- You need it to talk to a system the plugin has never heard of
And when a plugin is the right answer, I will say so and save you the money.
One job, done properly, in a hundred lines instead of two megabytes.
Seven years of writing WordPress plugins to spec — content architecture, admin tools, front-end features and integrations with whatever system you already run on.
- Custom post types, taxonomies and admin screens
- Filterable directories, listings and search with shareable URLs
- Booking, enquiry and multi-step form flows
- REST and third-party API integrations — CRM, email, payments, shipping, ERP
- Calculators, configurators and pricing tools
- Role and capability tuning so clients cannot break their own site
When it stops being a website and starts being software.
Accounts, permissions, business logic, billing, dashboards, integrations. I build these on real application frameworks rather than bending WordPress into something it was not designed to be.
- Laravel and Node.js back ends with MySQL
- React, Next.js and Vue front ends
- Client portals and authenticated customer areas
- Internal tools replacing spreadsheets that outgrew themselves
- Multi-tenant SaaS with plans, billing and self-serve onboarding
- REST APIs and integration layers between systems that disagree
I have shipped my own
Tuli Builder is a commercial SaaS product I designed, built, launched and support entirely on my own — architecture, AI layer, billing, licensing, infrastructure and customer support.
That means I have lived with the consequences of every decision you are about to ask me to make. It changes the advice you get.
Read the case studyWhy not an overlay widget?
Overlay tools are the most heavily marketed accessibility product in the US, and the least effective. They do not change the underlying markup, they frequently interfere with screen readers users have already configured, and they have themselves been named in ADA complaints.
Everything I do is source-level remediation. Slower, more expensive up front, and the only version that actually holds up.
Accessibility fixed in the code, not painted over it.
ADA web accessibility demand letters are a real and growing cost for US businesses. I audit against WCAG 2.1 AA, fix the source, and give you a written conformance summary you can rely on.
- Automated scanning plus manual keyboard and screen-reader testing
- Semantic structure, landmarks and heading order
- Focus management, skip links and keyboard-complete components
- Form labelling and error handling that screen readers announce
- Colour contrast corrections that keep your brand intact
- A published accessibility statement and a conformance report
- Training so new content does not undo the work
Finding the real reason your site is slow.
Installing a fourth caching plugin is not a performance strategy. I profile the site, find what is actually costing you seconds, and fix that.
Diagnose
Real-user and lab data, waterfall analysis, query profiling and server-level checks — before touching anything.
Fix the cause
Render-blocking assets, oversized images, bloated plugin stacks, slow queries, missing indexes, PHP worker starvation.
Prove it
Before-and-after numbers on LCP, CLS and INP, plus a written note of what changed and what to avoid doing again.
The unglamorous work that keeps a site online.
I spent two and a half years keeping 150+ WordPress sites updated, secure and fast for a US agency. The process that came out of that is what I offer directly.
- Core, theme and plugin updates staged and tested, not fired blind
- Off-site backups, verified by actually restoring them
- Security hardening, monitoring and malware cleanup
- Uptime and performance monitoring with real alerts
- A monthly report in plain English
- An allocation of hours each month for the small changes that always come up
How a care plan works
- Billing
- Monthly, cancel any time
- Included hours
- Agreed block, rolls for 1 month
- Emergency response
- Prioritised, same business day
- Reporting
- Monthly written summary
- Lock-in
- None — you own everything
Development capacity that behaves like it's in-house.
I spent two and a half years as the development side of a US agency. I know how agency work actually runs — and how badly a contractor who emails your client can go.
In your process
Slack, Basecamp, ClickUp, Teamwork, Jira, Trello — I work in whatever you already use, with the ticket hygiene your PM expects.
Invisible to your clients
Your brand on everything. I never contact your clients, never publish your projects without permission, and sign non-solicitation terms as standard.
Updates you can forward
I write progress notes in client-readable English, so your account manager can paste them straight into an email instead of translating.
Four steps, no surprises.
Call & scope
30 minutes to understand the goal, constraints and deadline. You leave with a written scope and a fixed price or an honest hour estimate.
Build in the open
Work happens on a staging site you can watch, with short written updates at agreed checkpoints.
Test & review
Cross-browser, mobile, keyboard and screen-reader checks before you see it. Then your feedback round, revisions included.
Launch & support
Deployment handled, backups verified, handover document written, 30 days of free post-launch fixes.
Not sure which of these you need?
Describe the problem and I will tell you. Quite often the honest answer is smaller and cheaper than what you came in expecting.