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.