Strategy · Product design · Engineering · AI integration
Filenod Academy
Building and operating an in-house IT training platform — 35 live courses, 48 cohort slots, 1,000+ alumni.
Overview
The brief we gave ourselves
Filenod Academy started as a single Frontend cohort in 2022 with 14 students and a spreadsheet. By 2024 it was 600 active students, six tracks, and a 14-year-old PHP admissions admin written by a part-time staffer. We needed a public marketing site, a student portal, a cohort scheduling system, and an admin operations centre — without throwing out the PHP CRM the academy team already used, and without a 12-month migration project.
Outcomes
35
live courses across 7 tracks
48
cohort slots running concurrently
1,000+
students through the platform
Approach
Two-stack architecture (instead of one rewrite)
We built the new system in Next.js 15 (academy.filenod.com) reading and writing the *same MariaDB* the legacy PHP admin uses. Students apply on the new site → the application lands in the existing admissions CRM with zero process change for staff. The legacy admin keeps working untouched while we replace one workflow at a time on the new stack. Three months in, 70% of staff workflows have moved to the new admin; the legacy PHP is read-only for the rest.
In one line
“Thirty-five courses, forty-eight cohorts, one platform — built around the agency it lives inside.”
The build
Public marketing site + 35-course catalog
academy.filenod.com is a Next.js App Router site with ISR caching, server-rendered course pages, and full SEO instrumentation (Course + EducationalOrganization + FAQPage + BreadcrumbList JSON-LD on every course, dynamic per-course OG images, sitemap, multi-language hreflang). Course catalog is database-backed — admin adds a course, it's live on the marketing site within 5 minutes.
What we shipped
Brand identity
Display type · gradient palette · academy mark.
Marketing site
35-course catalog · SEO-instrumented · ISR-cached.
Student portal
Lessons · tasks · quizzes · attendance · fees.
Mobile-first design
All flows responsive · works on entry-level Android.
Admissions CRM
Application intake · scoring · cohort assignment.
Operations centre
Courses · cohorts · timetable · salaries · reports.
SSO + impersonation
HMAC-signed session bridge with agency portal.
Hosting + ops
Docker + Caddy on managed VPS · daily backups.
Outcome
Where we are now
1,000+ students through the platform. 35 live courses, 48 concurrent cohort slots, 7 tracks. The marketing site is Lighthouse 95+ across the board with dynamic per-course OG cards. Two more academies (one external client, one Filenod-incubator project) are in active scoping using the same platform as a multi-tenant base.
“We needed a system that lets us add a course in an hour, run a cohort without spreadsheets, and not lose anyone between admissions and graduation. The platform our agency team built lets us do all three. It's the reason we can run 48 cohorts concurrently with the team we have.”
Built on
Next.js 15 · MariaDB (shared with legacy PHP) · Better Auth · Tailwind v4 · OpenAI / Anthropic API · Stripe + local PSPs · Cloudflare R2 · Docker + Caddy
Have a project?
Let’s build something like this.
A 20-minute call to scope the shape of your project. Quote within 24 hours.
Work with us