The challenge
Over its lifetime, the website had been maintained by many developers and teams. Each added their own fields, content types and custom logic, leaving a tangle of non-standard, interdependent components that was hard to maintain, upgrade or extend.
The brief: move everything to Drupal 9 without losing data or taking the site offline, rebuild the frontend, and retire functionality that was outdated or redundant.
What we did
- Audit. We mapped every field, content type and piece of custom logic, with their dependencies and redundancies, and decided what to keep, update or retire.
- Incremental migration. We migrated in stages, starting with the least dependent components, so the site kept working throughout — and tested data integrity and functionality after every step.
- A new frontend. We rebuilt the interface in Drupal 9 for speed, responsiveness and a clearer user experience.
- Code cleanup. We refactored to Drupal standards and replaced custom logic with standard modules wherever possible, so the platform is easier to maintain and extend.
- Support after launch. We monitored the new system and refined functionality as needed.
The result
A clean, standards-based Drupal 9 platform with its data intact, minimal disruption during the move and a codebase the team can maintain with confidence.