AI Love You

Learning Platforms

Course content, progress and assessment — built to scale.

A learning platform is a specific kind of build: structured course content, per-learner progress, scored assessment, and often several different audiences — learners, institutions, employers, admins — who each need their own view of the same data. It's the largest platform project I've built, for Renewables Connect, and the detail below is drawn directly from that build.

What it covers

What goes into a learning platform build.

01

Multi-app architecture

Separate learner, institution, employer and admin experiences where the audience genuinely needs it — sharing one type system and design language rather than one app trying to be everything to everyone.

02

Course & content architecture

Modules, sections and content blocks modelled as structured, typed data — text, video, image, callout, chart, quiz — so one viewer renders any course without a bespoke template per page.

03

Progress tracking

Per-learner progress, completion and reading state tracked at the section level, rolling up into part- and programme-level dashboards rather than a single blunt "% complete" figure.

04

Assessment & scoring

Scored quizzes with pass marks, wrong-answer explanations and results that feed straight back into the learner's dashboard — built to confirm learning, not just mark attendance.

05

Authentication at scale

Sign-in that works for a mixed audience — Microsoft Authentication for learners inside a corporate tenant, and open account creation for everyone else — verified independently on the API, not just trusted from the front end.

06

Content authoring

A CMS layer for non-developer editors to publish and update course content without a deploy, once the catalogue is big enough that editing code isn't the right workflow any more.

07

Data visualisation

Progress, completion and cohort figures presented as clear charts and dashboards, in a consistent visual language across every app in the system.

08

Built to scale

A data model, hosting setup and CI/CD pipeline designed for thousands of concurrent learners from day one, not retrofitted once a spreadsheet-and-PDF system falls over.

The build

Renewables Connect — a SharePoint learning archive rebuilt as a four-app platform.

Renewables Connect deliver professional training for the global renewables industry. Their existing platform ran on SharePoint — static PDFs, no accounts, no progress tracking. The rebuild is a four-app Next.js system — learner, institution, employer and admin — with a working dashboard, module viewer, scored assessments and a content model designed to scale to thousands of learners.

01
Renewables Connect learner dashboard

Learner dashboard — programme progress at a glance

02
Renewables Connect module viewer

Module viewer — sectioned content with reading progress

At a glance

The stack and architecture behind Renewables Connect, in brief.

Technology

A Turborepo monorepo — four Next.js apps plus a Fastify API and shared TypeScript packages, typed end to end. One @rc/types package defines Learner, Certificate and JobRole once, used identically everywhere.

Backend & data

A dedicated Fastify + Prisma API over PostgreSQL, containerised with Docker, sitting behind all four apps rather than each one hitting its own database.

Content

Sanity CMS with Portable Text rendering, so course content can be updated by a non-developer editor without a code deploy.

Authentication

Microsoft Authentication (MSAL) against Azure AD B2C, with the API independently verifying every request's token via JWKS.

Assessment

Every sub-module ends in a ten-question, scored Confirmation of Learning quiz with a 70% pass mark and wrong-answer explanations linking back to the relevant section.

Hosting & CI/CD

Each app deploys to its own Azure Static Web App, with GitHub Actions building and deploying automatically on push to main.

Need a course, training programme or internal academy built properly?

See the full Renewables Connect case study for every screen, or read about platform development more broadly. If Claude belongs in the platform too — content drafting, learner support, automated summaries — that's covered on AI integration.

Start a project →