Platform modernization
A 2022 PHP learning portal, moved to Next.js and a typed API one module at a time — old and new side by side, with no big-bang cutover.
Legacy PHP → Module by module → No big-bang cutover
Live snapshot- Client
- Concept build
- India
- Industry
- Education
- Year
- 2026
- Timeline
- 6 weeks
- Services

Results
- Separate dashboards merged into one app
- 3 → 1
- Modules moved one at a time
- 5
- Big-bang cutovers
- 0
[01]The challenge
Our 2022 learning portal — institute, faculty and student dashboards in plain PHP — still did its job, but every change risked breaking another page. SQL lived inside the templates, sessions handled sign-in, and each dashboard was effectively its own app.
A full rewrite would have frozen the product for months. The goal was a modern platform without ever switching everything over in one night.
[02]Our approach
- 01
We listed every PHP page with the module it belongs to and the data it touches, then put a typed API in front of the existing database so old and new screens read the same records.
- 02
Modules move one at a time, smallest risk first: sign-in, then students, timetables, study material and queries. A routing layer sends each path to the old app or the new one.
- 03
Every move ships behind a switch that can send traffic back to the PHP page in seconds.
[03]The solution
The new platform is one Next.js app with role-based views for the institute, faculty and students, backed by a typed Node.js API and deployed in containers alongside the legacy app.
Timetables update without a reload, study material is served from object storage through signed links, and student queries move out of email and into the app.
[04]What we built
- 01Page-by-page inventory of the legacy app
- 02Typed API in front of the existing database
- 03Routing layer that sends each path to old or new
- 04One app with institute, faculty and student views
- 05Instant rollback switch for every module
[05]Live snapshot
An interactive recreation of the product’s core flow — try it.
01Sign-inwk 1
Sign-in moves first
PHP sessions give way to token sign-in that both apps trust, so people log in once, whichever app serves the page.
- Legacy
- Session
- New
- JWT
- API routes
- 3
Interactive · pick a module
[06]Stack
- Next.js
- TypeScript
- Node.js
- REST APIs
- Docker
Your project next?
Tell us about the problem you’re facing. We’ll show you how we’d approach it — and what success could look like.
We reply to every enquiry within one business day.
