Content Operations
Migrating Content to GitHub
Replacing a legacy, license-heavy CMS with a GitHub-based content architecture that scaled to 15 product applications and 70+ engineering partners — with zero production issues.
1 Problem
The content team was spending too much time troubleshooting and managing publishing pipelines in an aging, license-heavy CMS. Content and code lived in separate, disconnected systems, which meant every UI copy change was slow to ship, translation hand-offs were manual, and none of it plugged into the engineering org's CI/CD pipelines. As the product portfolio grew, the CMS became a bottleneck rather than an accelerator.
2 Approach
I architected a content structure that separated code and content, moving UI copy into GitHub content repos alongside the codebase. That unlocked automated translation workflows and GitHub Actions that plugged directly into engineering's CI/CD deployment pipelines.
- Defined a self-describing key-value naming convention (
eqx.product.feature.component.type.location) so any string could be traced to its product, feature, component, and placement without opening the UI. - Partnered with 70+ engineering stakeholders across product groups — Marketplace/Discovery, CRH/AM, ECP/Polar, Fabric/NE, Internet Exchange, Identity/Ping, Secure Cab, and Mobile — to migrate repo by repo.
- Built and shipped a Figma-to-code plugin, Content Companion, that automated key-value generation straight from labeled Figma frames — it won the Equinix Hackathon in 2022.
- Rebuilt the translation hand-off so Smartling could pull directly from GitHub pull requests, with Jira tickets and Figma files attached for full context.
3 Result
Fifteen product applications moved off the legacy dotCMS platform onto GitHub, migrating 750,000 words with zero production issues. Over 8.7 million words were validated back into GitHub from Smartling as part of the new translation pipeline. Retiring the old platform eliminated multiple CMS licensing fees outright and tightened deployment cycles to a reliable two-month cadence.
Just as important: the automation gave the team its time back. UX writers reclaimed an estimated 180 hours per quarter, and the Translation Manager reclaimed roughly 60 hours per quarter — about 24 weeks a year, collectively, redirected from pipeline maintenance into content strategy, design, and higher-value UX content work.