Skip to main content
Q1/Q2 Capacity: Now accepting select web engineering & AI code rescue projects.
JoinAffix - Web Engineering
ModernizationIndustry: Industrial Manufacturing

Modernizing a 10-Year Monolithic PHP Internal ERP

Client: Omnex Industrial Supply (Wholesale Distributor)

Strangling a fragile 200,000-line legacy PHP codebase into modular Next.js micro-frontends with zero business interruption.

Modernizing a 10-Year Monolithic PHP Internal ERP
0 sec
Unplanned Business Downtime
3.5x
Faster Inventory Search
100%
Type-Checked Code Coverage on New Modules
The Challenge & Context

The Problem

The core ERP system was built on PHP 5.6 without version control or tests. Any developer trying to add features risked breaking warehouse pick-lists.

Project Constraints

Key Constraints

  • Warehouse staff could not pause scanning operations during business hours
  • Extensive legacy MySQL stored procedures had to be phased out gradually
Solution Architecture

Technical Approach & Execution

Implemented the Strangler Fig architectural pattern via an Nginx reverse proxy, routing modernized feature modules to Next.js while legacy modules ran untouched.

Phase 01

Reverse Proxy Strangler Architecture

Configured intelligent path routing so new inventory and reporting modules ran on modern Next.js while legacy routes remained active.

Phase 02

Shared Authentication Session Bridge

Built a secure Redis session bridge allowing users to navigate between legacy PHP and modern Next.js without logging in twice.

Infrastructure Topology

Cloud & Deployment

  • Nginx Gateway Proxy
  • Next.js Frontend Modules
  • Redis Session Bridge
  • PostgreSQL Data Warehouse
Technology Stack

Tools & Languages

Next.jsTypeScriptNginxRedisDockerPostgreSQL

Key Engineering Lessons Learned:

  • Incremental strangler migration eliminated the high risk of a single big-bang rewrite

Facing a similar engineering challenge?

Let's review your architecture, code repositories, or deployment roadblocks.