← Work
03
WordPress → Strapi — Zero-downtime Migration
StrapiLexicalNode
Overview
Owned the end-to-end migration of PhonePe's corporate CMS from WordPress to Strapi — content modeling, data migration scripts, custom plugin development, infra architecture, and a zero-downtime cutover coordinated across SRE, AppSec, and compliance.
What I built
- Wrote Node.js scripts to extract, transform, and import all WordPress content into Strapi — posts, taxonomies, custom fields, and media assets — with full fidelity.
- Developed a custom Lexical-based rich-text editor plugin for Strapi, replacing the generic editor with one tailored to the editorial team's content model.
- Built a custom audit log plugin using Strapi hooks and middleware — captures who changed what and when across every content entry, giving the team full traceability.
- Planned and executed a zero-downtime cutover — running both CMS systems in parallel, gradually shifting editorial traffic, and decommissioning WordPress only after validation.
- Coordinated the live cutover with SRE, AppSec, and compliance — ran both CMS systems in parallel, validated parity, and decommissioned WordPress with zero downtime.
Impact
- → Publish-cycle time cut by 30–40% through a cleaner, purpose-built editorial UI.
- → Zero downtime during cutover — live site was unaffected throughout.
- → Audit log delivers content traceability the team had no visibility into before.
- → Custom Lexical editor reduced editorial friction and became the foundation for the Articles section on business.phonepe.com.