Case Studies / Exam-Prep Platform
Education Sector · Custom Platform · AI-Assisted Content

BuildReady: exam prep they finally own

An education sector client ran its exam preparation through a rented, off-the-shelf learning platform — content locked in, question formats limited, and no way to see how students were actually going. Here's how the question bank was extracted and rebuilt into BuildReady — our custom exam-prep platform — run day to day by the client's own team.

10
Question formats, from multiple choice to drawing-based tasks
2
Apps on one platform — student exam prep + staff authoring studio
1 click
For staff to publish content updates — no developer needed
Live
Trainer view of every student's progress

Renting shelf space in someone else's system

The client prepares its members for high-stakes industry exams. All of that preparation ran through a third-party LMS — a subscription product that held the entire question bank and decided what was possible with it.

The limits showed everywhere. Question formats were restricted to whatever the vendor supported, which ruled out the formats that mattered most for this material — questions built around real technical documents and drawings. Staff couldn't reorganise topics or evolve content without fighting the platform. And there was no meaningful visibility: trainers couldn't see where individual students were struggling, so support was guesswork.

Worst of all, the content — years of accumulated exam questions, the client's real intellectual property — lived inside a product they didn't control and couldn't easily leave.

The real problem

The question bank was the client's most valuable training asset — and it was locked inside someone else's product, on someone else's roadmap, at someone else's pace.

Own the content, then own the experience

The first job wasn't writing code — it was getting the content out. The full question bank was extracted from the legacy LMS into clean, structured data the client owned outright.

Then, before any build, the actual workflows were mapped with the people who'd use them. Three needs kept coming up: students needed realistic practice that matched the exam they'd sit, state by state. Trainers needed to see how their students were going. And the content team needed to author and publish questions themselves — in tools they already knew — without raising a ticket or waiting on a developer.

LEGACY LMS the question bank, locked in extracted Q Owned question bank Student app Trainer view Studio · staff Owned outright — updates published in one click
The shape of the build · click to replay
The Transformation

Two apps, one platform

BuildReady split cleanly into a student-facing experience and a staff-facing studio, sharing one database and one source of truth. Five moves got it there.

01

Extract

The whole question bank out of the legacy LMS — owned outright.

02

Student app

Mock exams, ten formats, state variants, self-tracking progress.

03

Studio

Excel-based authoring and curation, one-click publish.

04

Trainer view

Live cohort and per-student visibility.

05

AI drafting

Copilot drafts from the reference library; humans approve.

You're thinking

"Our content is locked in the old system."

01

Extract the question bank

Scripted the extraction of the entire bank out of the legacy LMS into structured, portable data. From that point on, the content belonged to the client — the platform is built around it, not the other way round.

You're thinking

"Will practice actually feel like the exam?"

02

Build the student experience

Mock exams that mirror the real thing, topic-by-topic practice and state-specific variants — including question formats built on real technical documents and drawings, which the old platform simply couldn't do.

You're thinking

"Can our team run it without a developer?"

03

Build the Studio

Staff author in any of the ten formats, bulk-import from Excel workbooks — a tool the team already lives in — organise topics and check coverage. Publishing is one click, not a ticket.

You're thinking

"How do trainers know who needs help?"

04

Give trainers a live view

Every student's attempts, strengths and weak topics, live — so the struggling student gets a phone call before exam day, not a commiseration after it.

You're thinking

"Can AI help without dropping the standard?"

05

Add AI-assisted drafting

A Copilot agent drafts candidate questions from the client's own curated reference library — and staff review, edit and approve every one before it goes anywhere near a student.

Ten ways to ask a question

Real exams don't stick to multiple choice, so the practice can't either. The platform's question engine supports ten formats — each one built because the material genuinely needs it, including tasks that put a real technical drawing in front of the student.

Multiple choice
Multi-select
Matching
Ordering
Categorising
Fill the blank
Numeric
Short answer
Image identify
Drawing tasks
What It Looks Like

Three audiences, one source of truth

Real BuildReady screens, demo data throughout. The student practising, the trainer reviewing and the content team building are all reading the same live facts — scroll through the story.

You're thinking

"Will my team actually use it?"

01

Pick a topic, press start

Students sign in with the account they already have and land on their topics — every card shows exactly where they're up to, ready to continue.

You're thinking

"How do we know it's working?"

02

Progress that tracks itself

Every answer loops back to the database and rolls up into topic-by-topic competency — with a focus-your-revision nudge on whatever is below the line.

You're thinking

"Which student needs help before exam day?"

03

The roster tells you who to call

Trainers see the whole cohort at a glance, then drill into any student's per-topic story. The struggling student gets a phone call before the exam, not a commiseration after it.

You're thinking

"Who keeps the questions honest?"

04

Trainers review every question

Anything wrong gets flagged with a severity and a note, straight onto the question record — before a student ever sees it.

You're thinking

"What should we write next?"

05

The program audits itself

Bank totals, live versus draft, the mock exams, and how students actually score topic by topic — thin coverage is flagged so the team always knows the next job.

You're thinking

"Do we need a developer every time?"

06

Assemble, publish, done

Mock exams are drag-and-drop, and publishing is one click — the update becomes a versioned feed the student app reads immediately. No developer in the loop.

Modern stack, two front doors, one set of rules

For the technically curious: BuildReady is a React application hosted on Vercel, with Supabase (Postgres) as the single source of truth for questions, topics, programs and progress. Access control runs in the database itself — row-level security and defined roles decide who can see and change what, so the rules hold no matter which app is asking. Content goes live through a publish pipeline (a Supabase edge function) that turns the Studio's one-click publish into a versioned feed the student app reads.

Authentication has two deliberate front doors:

The members' door

Students sign in through the client's existing membership system (Memberstack) — the same account they already use, no second password to forget, no separate user list to maintain.

The staff door

Staff are authorised through a Microsoft app registration tied to their work identities — access to the Studio follows the organisation's own accounts, so when someone joins or leaves, IT already controls it.

Before — the rented LMS

  • Question bank locked inside a vendor's product
  • Formats limited to what the vendor supported
  • No document- or drawing-based questions
  • No trainer visibility of student progress
  • Content changes at the vendor's pace

After — the owned platform

  • Content extracted, structured, and owned outright
  • Ten question formats, matched to the real exams
  • State-specific exam variants from one bank
  • Live progress view for every trainer
  • Staff author, curate and publish themselves

Everyone touches the same platform differently

AudienceWhat changed for them
StudentsRealistic mock exams and topic practice in their state's variant, with their own progress visible — signed in with the account they already have
TrainersA live view of how each student is going, so support lands before the exam instead of after it
Content teamThe Studio — author in ten formats, bulk-import from Excel, organise topics, check coverage, publish in one click
AdministratorsAccess managed through the organisation's own Microsoft accounts and database-level roles — no shadow logins
The contentExtracted from a rented product into structured data the client owns, versioned and re-usable

Their content, their platform, their pace

Owned
The question bank — years of intellectual property — extracted and under the client's control
10
Question formats live, including the document and drawing tasks the old LMS couldn't offer
Self-serve
The content team authors, curates and publishes without a developer in the loop
Live
Trainer visibility of student progress, for the first time

BuildReady is live and in use, with student feedback coming back positive within weeks of launch — and the roadmap now belongs to the client. New question formats, new programs and better content don't wait on a vendor anymore; they're a conversation, a build, and a one-click publish.

The pattern here repeats across engagements: the technology matters, but ownership matters more. A tool your team can run, holding content you control, beats a rented product every time. That's the kind of build we do — and it always ends with the client holding the keys.

The Lesson for Your Business

If your content lives in someone else's product,
it's not really yours.

Subscription platforms are a fine way to start — and a costly place to be stuck. If a rented tool is holding your best asset hostage, an Efficiency Audit will tell you honestly whether owning it is worth it.

Book a Free Efficiency Audit Tell us what you need →