EmStudio · AI Production Platform · Emversity · 2024–25

Making AI do
the content work. Then I built the QC engine myself.

What existed

A manual, multi-step content production process spread across several disconnected tools. The workflow worked because people cared. Not because it was designed to.

The missing layer

No shared view of progress, quality, or accountability. No way to scale. Errors lived in reviewers' heads, not a system.

The constraint

One developer, brought in to close out the backend. Everything upstream of that — the workflow architecture, the frontend, the QC engine — had to come from me.

My scope

End to end: discovery and UX research, defining the workflow, building the frontend and the QC engine myself in Cursor, then partnering with one developer to close out the backend and ship.

01 The problem

Content production spanned several disconnected tools with no shared quality standard; errors lived only in reviewers' heads.

02 What I did

I led discovery, designed the workflow, and built EmStudio's frontend and AI QC engine myself in Cursor.

03 The outcome

EmStudio unified seven production stages into one platform Emversity's team runs today, tracking quality live at 90.05%.

The problem

Fragmented, review-heavy. Impossible to scale.

Content creation at Emversity involved subject experts, writers, QC reviewers, designers, and video producers — all working across disconnected tools. No shared view of progress. No quality standard anyone could point to and say "this is the rule."

I spent the first weeks tracing the actual flow with Abdullah (ops), interrogating Ankita's QC team on what kept slipping through, and shadowing Pooja (SME) on what good content actually meant. What I found was a system held together by goodwill, not architecture.

The rework wasn't random. The same error types kept resurfacing — spelling policy violations, factual slips, image-text mismatches — but nobody had written the rules down anywhere a system could enforce them.

What kept surfacing across discovery
Many Manual steps per subject before it was ready to ship
Several Disconnected tools across the production chain
Regular Rework on QC pass — errors that shouldn't have made it that far
Zero Codified quality standards. All rules lived in people's heads

Stakeholder research

Two stakeholders. Completely different needs. One platform.

Stakeholder 01 · Pooja (SME)

The subject expert

→ Knows exactly what correct content looks like for their domain
→ Needs inline commenting — feedback must map to specific text, not email threads
→ Wants to accept/reject changes with clear reasoning, not just red markup
→ Trust signal: "the AI flagged it, I reviewed it" — not "the AI changed it"
Stakeholder 02 · Ankita (QC Lead)

The QC reviewer

→ Reviews 100s of pages per week — needs speed, not depth on every word
→ Needs errors categorised — "Spelling" goes to writers, "Factual" goes to SMEs
→ Wants a number she can report — quality score per subject, not just "reviewed"
→ Her sense of what "correct" looks like became the standard the categorisation logic was built against

Most tools solve for one. An editor for the SME, a tracker for the QC lead. The opportunity was one interface that routed errors to the right person automatically — without either stakeholder having to navigate the other's workflow.

Paths rejected

Why the obvious solutions didn't work

DROPPED

Hire more QC reviewers

Scales linearly with content volume. Compounds at 3× scale. Doesn't solve the fragmentation problem or give anyone a shared quality standard. Treating a system problem with a headcount solution.

DROPPED

Off-the-shelf LMS with QC module

No existing tool handles academic content QC with subject-specific accuracy standards. Customisation cost exceeded build cost. And the SME trust requirement — "AI flagged, human reviewed" — isn't a feature any LMS vendor ships.

DROPPED

Auto-correct everything with AI

For factual academic content, auto-applying corrections without human sign-off is a liability. An AI changing "for some children" to "for all children" unreviewed is academically wrong. SME trust evaporates immediately.

The decision

Build the platform. Code the engine. Ship it myself.

EmStudio unifies the entire production workflow — Subject Creation → Learning Objectives → Content Drafting → Illustration → QC Review → Academic Approval → Export — in a single interface, replacing five disconnected tools. Every stage feeds the next. Progress is live and visible to every role, not just whoever happens to be tracking it that week.

The QC engine I built runs AI-generated checks against the content — spelling, grammar, factual accuracy, image relevance — and hands every flagged issue to a human with a suggested fix attached. Nothing ships without a person accepting it first.

The second decision was Accept/Reject over auto-correct. For factual academic content, auto-applying AI corrections without human sign-off is a liability. Every error gets a suggested fix — the reviewer makes the final call.

Option A

Single quality score

PRO Simple to build and report on
CON Hides where the work actually needs to go
CON A spelling fix and a factual fix look identical on the dashboard
Option B · Selected

Categorised by error type

PRO Spelling and grammar route to writers, factual routes to SMEs, image routes to illustrators
PRO Matches how Ankita's team already triaged issues by hand
CON More categories to design, build, and keep consistent
Accept/Reject — not auto-correct

Reviewers stay in the loop on every factual call. The AI Autocorrect button exists only for unambiguous cases — formula deduplication, clear spelling policy violations. Nothing that changes meaning ships without a human eye on it.

Five categories — not one score

Spelling errors need writers. Factual errors need SMEs. Image errors need designers. A single quality score hides where work actually needs to go. Bucketing by type routes errors to the right person automatically — without any manual triage.

Trade-off accepted

Chose categorisation over a single score. Costs more to build up front — five error types instead of one number — but it's the difference between a dashboard that looks tidy and a workflow that actually routes work to the right person without anyone manually triaging it first.

The work

Seven stages. One platform. AI everywhere.

EmStudio replaces five disconnected tools with one interface. Every stage feeds the next. The dashboard gives the whole team one source of truth — quality score, team velocity, and per-stage progress, live.

EmStudio Dashboard

Dashboard — quality score 90.05%, team velocity, active projects, calendar

The All Projects view gives the whole team one source of truth on production status. Every chapter, every stage, every overdue flag — visible to everyone at once. No more "where is Chapter 3?" over email.

All Projects — production status across every chapter, started / in progress / completed

All Projects

The Content Lab is where AI-generated drafts meet SME review. Writers edit in a Word-like rich editor. SMEs leave inline comments mapped to specific text — not email threads. The feedback loop that used to take days now happens in the same interface as the content itself.

Content Lab

Content Lab — AI draft, SME inline comments (Pooja, Rahul, Ankita), accept/reject controls

QC Studio · built by me

The engine I coded from scratch.

This is the part I built myself using OpenAI APIs, Claude, and Cursor. Engineering bandwidth was constrained. The problem was real. I had enough context on the requirements and enough access to AI coding tools to just build it.

The engine reads academic content and surfaces errors across five categories — Spellings, Grammar, Factual, Image, Miscellaneous — with specific fixes suggested for each one. For each error: the original text, the error type, and a suggested correction. Accept or reject with one click.

Codifying what "correct" means for academic content — British English, factual accuracy, image-text relevance — was the real work. Once that logic existed, the AI could apply it consistently at a scale no reviewer could match alone. One early rule flagged too aggressively — [NEEDS INPUT: example of an overly strict/loose initial rule and how it was corrected] — until the categorization logic was tightened against real reviewer feedback.

Validating the engine

[NEEDS INPUT: accept/reject rate reviewers gave to flagged errors, or a description of the manual spot-check process against Ankita's QC standard]. [NEEDS INPUT: one concrete example of a QC rule/prompt that was wrong initially and got corrected].

Spellings 16
Grammar 10
Factual 12
Image relevancy 5
Miscellaneous 11
QC Studio

QC Studio — quality issues panel, flagged document with inline errors, error analysis with suggested fix

After QC, EmStudio auto-generates slides and runs Video QC — the same error detection logic applied to recorded lectures with exact timestamps. Voice errors, visual errors, factual errors, flow errors — all surfaced without manual review.

Slide Studio — AI-generated per lecture

Slides

Video QC — timestamped error report

Video QC

Final Review — multi-stage sign-off, reviewer assignments, 4/5 stages completed

Final Review

Impact

What changed

7

Production stages unified

From several disconnected tools to one interface. Subject Creation through Academic Approval, in a single system instead of scattered across email, spreadsheets, and separate editors.

One

Screen, every role

SME, illustrator, QC reviewer, and academic head each get a dashboard built for their job — but it's the same system underneath, so nobody has to chase status across tools anymore.

Real

Categorised, not guessed

Every QC issue now carries a category and a suggested fix instead of living only in a reviewer's memory — spelling and grammar route to writers, factual issues route to SMEs, automatically.

Live

In active use

This isn't a concept file. It's the system Emversity's content team runs subjects through today. [NEEDS INPUT: proxy metric — turnaround time per subject before/after, manual QC passes eliminated, or rework rate] — the team's day-to-day is the clearest evidence: this is genuinely how the work gets done now.

Reflection

Three things I'd do differently.

01

Build the manager-level dashboard in v1

QC errors are surfaced per document but there's no cohort view — which error types are most common across all content, which stages are the real bottleneck. That's where the training signal lives for the whole team. I shipped the reviewer experience first and deferred the manager view. It should have been concurrent.

02

Make the QC categories configurable without touching code

Spelling, grammar, factual, image, miscellaneous — those five categories were right for this content type, but they're hardcoded. If Emversity adds a new content type with different quality rules, that means going back into the code. It should be a config a reviewer can edit, not a redeploy.

03

Instrument before shipping, not after

I made the Accept/Reject-over-auto-correct call directionally, based on what felt right for factual academic content. The team's continued day-to-day use suggests it was the right call, but I never set up a way to measure it against the alternative. Next time: define the metric, instrument the decision point, then ship.

EmStudio · Emversity · Apr 2024 – Mar 2025 · Anubha Kanwar Next case study: PitchMate →