Case study
Legacy ERP modernisation with a modern web interface
- Business context
Manufacturing · UK-wide. Mission-critical Progress OpenEdge ERP with decades of embedded rules.
- Application age / version
30+ years of business logic in OpenEdge. Functionally rich; UX and access methods were the constraint, not capability.
- Starting condition
Users locked to a legacy client. Slow task completion from UI friction. A rewrite of the ERP was not an acceptable risk.
- Main technical risks
Breaking decades of industry-specific workflows. Dual-running old and new access. Treating the UI as a place to re-implement rules that already lived in the ERP.
- Audit findings
The ERP had to stay the source of truth. The job was an integration layer and a browser UI, with a gradual rollout — the same “do not rewrite first” sequence used on inherited Laravel apps.
- Work completed
Angular frontend in the browser. Secure integration layer to OpenEdge. Core ERP logic untouched. Critical workflows rebuilt with modern UX: fewer clicks, validation at each stage, lower latency on common actions.
- Deployment / migration
Gradual rollout to reduce operational risk. Browser access removed the legacy-client dependency without a big-bang cutover.
- Integrations
Progress OpenEdge as source of truth. Angular as the new access layer.
- Testing added
Rollout sequenced so operational capability could be compared against the existing client. Zero loss of business logic was a release requirement, not a slogan.
- Result
Noticeable speed gains on day-to-day operations. Reduced time on core ERP actions. Higher adoption. Zero loss of business logic or operational capability. A foundation for further enhancement without a rip-and-replace.
- Ongoing support
ERP remains; the web layer is the ongoing enhancement surface.
Facts as published on HTML Studio case studies. Expert involved: Oliver Burton. Stacks are named as built — not recast as Laravel.
Why this sits on a Laravel practice site
OpenEdge is not Laravel. The judgement is: wrap, don’t rip — reproduce, keep the money and stock rules where they already work, then add a safer access layer. That is the same advice as legacy PHP to Laravel and rescue / takeover.
Full write-up: Legacy ERP modernisation.