Back to Home

Projects

var(--variable-cM9ypOjZX)
var(--variable-cM9ypOjZX)

IT Step School

Migration of IT Step School’s website from WordPress to a modern Next.js stack — faster pages, a cleaner editorial workflow, and a maintainable foundation for the school’s growth.

My Role

Tech Lead — owned the migration strategy at Koober Coders: architecture, content modeling, the build and deployment pipeline, and performance targets.

Project Type

Client Project — WordPress-to-Next.js migration for a private IT school in Tbilisi.

Tools Used

Next.js, React, TypeScript, headless git-based CMS, multi-language localization, performance optimization, Docker, Nginx, custom CI/CD

Live Link

https://itstep.school.ge

Read the write-up

Leaving WordPress Without Losing the Editors

Problem & Solutions

Leaving WordPress Without Losing the Editors

Problem

WordPress gave the school’s staff a familiar editing experience, but it dragged down performance, security, and development velocity — and a rewrite risked taking the editors’ workflow away with it.

Solution

A headless approach kept both sides happy: a typed, componentized Next.js frontend for the team, and a git-based CMS that still gives editors visual, in-context editing.

Performance as a Requirement, Not a Wish

Problem

The legacy theme and plugin stack made every page heavy — and for prospective students browsing on phones, slow pages read as an outdated school.

Solution

Static generation, image optimization, and a minimal-JavaScript budget per page turned speed into a property of the architecture instead of an afterthought.

Migrating Content Without a Content Freeze

Problem

Years of WordPress pages, news posts, and media had to move to a new content model while the school kept publishing — a broken URL or a missing article during enrollment season was not acceptable.

Solution

Content was mapped field by field into the git-based CMS, migrated with scripts, and verified against the old site before cut-over; redirects preserved every indexed URL so search rankings carried over.

Architecture

ARCHITECTURE
IT Step School
Hover a part to see why it is there · click to pin
ApplicationDataExternal / peopleInfrastructure

Editors commit through TinaCMS into the Git repository; every commit builds a static Next.js site served by Nginx, with a redirect map preserving the old WordPress URLs.

Decision log

The calls that shaped the build — what was decided, why, and what it cost.

A git-based CMS instead of headless WordPress

Decision. Move content into the repository with TinaCMS as the editing UI.

Context. Editors needed a visual editor; the team needed versioned content and one deployment path.

Consequence. Every change is a commit and every rollback a revert. Publishing waits for a build, kept short and previewable.

Static generation

Decision. Generate pages at build time and serve them as files through Nginx.

Context. Page weight and a plugin attack surface were the two things wrong with the old site.

Consequence. No server-side process to exploit and nothing to slow down under load; content changes trigger a rebuild rather than appearing instantly.

The redirect map is a deliverable

Decision. Treat URL preservation as reviewed work, not cleanup.

Context. Search rankings were the school's lead source during enrollment season.

Consequence. No indexed URL 404s after cut-over; the map was diffed against a crawl of the old site before DNS switched.

A Program Catalog That Loads Instantly

Art-directed program pages rendered by Next.js — the playful 3D visual identity kept intact, with none of the WordPress weight behind it.

A Self-Service News Hub

Editors publish STEM articles and campaign banners through the git-based CMS — the site picks them up and ships them as fast static pages, subscribe funnel included.

The Campus, Front and Center

An image-heavy environment gallery stays quick through Next.js image optimization — every photo served responsively.

Growth & Outcome

The school now runs on a modern, fast stack: editors kept a friendly editing experience while page loads, security, and maintainability improved dramatically over the legacy WordPress site.

Gallery