GraV-IT
← All work

2019 · Solo developer

ApproveMe.com

For ApproveMe

A multi-year build for the team behind WP E-Signature — managing a network of twelve interconnected WordPress sites without WordPress Multisite, via a custom global-theme infrastructure, an atomic CSS system that doubled as Gutenberg blocks, per-component asset compilation, and a coordinated sale-state engine that propagated pricing and merchandising across the whole network.

Stack
WordPress Easy Digital Downloads Stripe Advanced Custom Fields Gutenberg Atomic BEM PHP

The brief

ApproveMe is the company behind WP E-Signature, a private WordPress plugin for legally-binding electronic signatures. I came in via a local WordPress Slack community in 2019. The team was running twelve interconnected WordPress sites stitched together with reverse proxies — each one nominally independent, collectively a mess to keep coherent.

The owner was emphatic: no WordPress Multisite, even though the situation made the case for it. So the brief was sharper than usual — keep the autonomy, drop the chaos, and find an architecture that let twelve sites move like one network without the Multisite shortcut.

What I built

A managed VPS migration. The network originally ran on Pagely. Real DevOps work to lift it onto a VPS we configured ourselves — same uptime, about a thousand dollars a month off the bill.

A global theme that auto-deployed across every site. Each site got its own child theme for site-specific overrides — autonomy where it mattered, DRY everywhere else. Cross-site CTAs that fed back into the sales funnel lived in the global theme, so a copy change shipped to all twelve at once.

Atomic BEM, all the way down. Inside the global theme, an atomic-design CSS architecture: atoms, molecules, organisms, page templates. Molecules and organisms did triple duty — custom template parts, custom Gutenberg blocks, and ACF field groups. One definition, three editorial entry points.

Per-component asset compilation. The piece I was most proud of: the build pipeline emitted CSS and JS per component, with compression, lazy-loading, and tree-shaking pre-performed at deploy time. Components a site didn’t use never shipped to that site. The network stayed fast as the catalog of organisms grew.

A coordinated sale-state engine. A formalized network-wide sale state that, when toggled, propagated across the entire network — pricing changes, custom modals, header and footer treatments, dynamic merchandising. A small marketing team could coordinate a promotion across twelve sites without touching twelve themes.

A heavily-customized Easy Digital Downloads checkout. EDD was the e-commerce spine; Stripe under the hood. The entire checkout, pricing logic, CRM sync, and email-marketing handoff were custom.

What’s notable about it now

The architecture honored the constraint. Twelve sites moved like a network without sliding into Multisite, which is what the owner asked for and what the team got. The global + child theme split kept additions DRY for years; the per-component asset pipeline meant performance didn’t decay as the catalog grew; the sale-state engine gave a small marketing team coordinated control across the whole network. And the infrastructure savings held — the VPS migration paid for the engagement many times over.