Template Cookie was an in-house agency portfolio platform built to showcase web development services, projects, and content through a modern JAMstack-style architecture. I was primarily responsible for handling the frontend refactoring and stability during a major Nuxt migration.
Overview
The project served as a content-driven agency website powered by DatoCMS, with data delivered via GraphQL and Markdown-based content structures. During my involvement, the application was undergoing a framework upgrade, which required careful refactoring to ensure nothing broke while improving maintainability.
Tech Stack
Frontend
- Nuxt
- Vue
- Tailwind CSS
Content & Data
- DatoCMS
- GraphQL
- Markdown (MD content)
Responsibilities
Migration & Refactoring
- Handled most of the frontend refactoring during a Nuxt version upgrade
- Updated and reconfigured dependencies to align with the new framework version
- Ensured legacy components continued working after structural changes

Package & Configuration Management
- Added and removed packages based on updated project needs
- Followed installation and configuration requirements for new tooling
- Maintained project stability during dependency transitions

UX & Stability Assurance
- Reviewed UI and flows after migration to ensure nothing visually or functionally broke
- Fixed layout shifts, spacing inconsistencies, and interaction issues
- Ensured a smooth browsing experience after structural changes

CMS & Data Handling Support
- Worked with GraphQL-based content structures from DatoCMS
- Assisted in maintaining Markdown-rendered sections
- Helped ensure content-driven pages rendered correctly after migration

Challenges
- Working inside an existing codebase written by other developers
- Handling framework migration without introducing regressions
- Issues with Markdown rendering (e.g., missing TOC and layout breaks) that required deeper system-level debugging
Solutions & Approach
- Focused on incremental refactoring instead of large rewrites
- Tested UI components frequently during migration to catch issues early
- Coordinated with senior developers when deeper CMS or Markdown issues required backend-level adjustments
Key Learnings
- How to confidently work inside someone else’s codebase
- Practical understanding of how a Nuxt application runs internally
- First exposure to GraphQL, Markdown pipelines, and headless CMS integration
- Real-world experience solving migration-related breakages
Outcome
The migration was completed with the application remaining stable and usable. Although the project was later redesigned and is no longer live in its original form, this experience significantly strengthened my ability to handle framework upgrades, legacy refactoring, and content-driven frontend systems.