All projects

Case study

Infinity Suite

A modular platform of 35 modules running on more than 200 client websites, so a feature built once can serve every client.

My role
Architect and lead developer
Built with
PHP, WordPress, REST API, a custom test harness
Status
In production on 200+ sites

The problem

Across more than 200 client sites, the same kinds of features come up again and again: resource libraries, maps, timelines, events, listings. Building each one site by site means maintaining many slightly different copies of the same thing.

What I decided

  • Package each feature as a module that a site turns on when it needs it, with dependencies resolved automatically.
  • Start every module in its own sandbox. If one fails, it's quarantined and the rest of the site keeps running.
  • When a module is removed, delete only the data that module declared it owns.
  • Deliver updates through the normal WordPress update screen, so nobody has to learn a new process.

Where it stands

35 modules are in production, from a gated resource portal with document scheduling to security headers. Every release has to pass the suite's PHP test harness before it ships.