§ 04.04 — LicenseBound · EdTech · Test prep · 2025

358ms 88ms

INP · QUIZ ENGINE 358 ms → 88 ms · LIGHTHOUSE 100 · A11Y 100 · 30-DAY ENGAGEMENT

LicenseBound is a free study platform for Alabama’s ALEA driver permit — diagnostics, daily missions, mock exams, and spaced repetition. It needed to feel like a native app while staying a maintainable WordPress site, and it had to be fully accessible. Over 30 days I built the interactive quiz engine, account progress, and an accessibility-first study UI.

Client
LicenseBound
Vertical
EdTech · Test prep
Year
Q3 2025
Role
Lead
Duration
30 days
Status
● Live
Verified
Live site
§ 04.04.A

Loom walkthrough

98 seconds · quiz engine & admin
Loom · 98 s · Pixy · 2025
▶ Walkthrough Daily mission · 00:00 — 00:36
Mock exam + grading · 00:36 — 01:12
Keyboard + screen reader · 01:12 — 01:38
FIG. 04 — Loom embed (placeholder) Recorded 13.07.2025 · Remote
§ 04.04.A.2

Screen plates · Gallery

Click any plate to zoom

Placeholders shown — production screenshots replace these on the live build. Arrow keys navigate; Esc closes.

§ 04.04.B

Problem

What was broken

LicenseBound is deliberately free — a public-good study aid for learner drivers — so it had to be cheap to run, easy to maintain, and usable by everyone. The product brief read like a native app: a diagnostic, daily missions blending lessons and quizzes, server-graded mock exams, and spaced-repetition scheduling for missed topics. The risk was the obvious one: an app-like build that becomes a heavyweight, inaccessible JavaScript monolith no one can maintain.

It needed to feel instant and app-like, track progress across devices, grade mocks reliably server-side, and pass WCAG 2.2 AA — all on a WordPress foundation a small team can run.

Before
  • Greenfield · app-like brief
  • Server-graded mock exams required
  • Spaced-repetition scheduling
  • Cross-device progress
  • WCAG 2.2 AA · plain language
§ 04.04.C

Constraints

Boundaries · published
01 Timeline 30 days to first public release
02 Budget Free product · must be cheap to run
03 Stack WordPress + a thin interactive layer
04 Accessibility Keyboard · screen reader · reduced motion · plain language
05 Integrity Mock exams graded server-side · 80% pass threshold
06 Compliance WCAG 2.2 AA · no paywall · no dark patterns
§ 04.04.D

Decisions

Three · defended
Decision · 01

WordPress for content; Interactivity API for the quiz.

Alternative considered: a full SPA in React. Rejected because: it would balloon the bundle and the maintenance cost for a free product. Tradeoff: the Interactivity API is less flexible than React — but it ships a fraction of the JS and stays inside WordPress.

Decision · 02

Grade mocks and schedule repetition server-side.

Alternative: client-side grading for speed. Rejected because: answers in the client are answers in the wild, and the readiness report has to be trustworthy. Tradeoff: a round-trip per mock — negligible, and the scoring is sound.

Decision · 03

Accessibility-first, from the first commit.

Alternative: retrofit a11y before launch. Rejected because: interactive quiz UIs are where retrofits fail. Tradeoff: slower initial build — repaid by a study UI that works on a keyboard and a screen reader with zero violations.

§ 04.04.E

Build

Stack · plugins · what was kept

Stack

  • WordPress 6.7 + Gutenberg block API
  • WP Interactivity API · the quiz engine
  • ACF Pro · question + plan field definitions
  • Server-side grading + spaced-repetition scheduler
  • Cloudflare · cache + edge
  • WCAG 2.2 AA tested via axe + NVDA + keyboard

Plugins · greenfield · 8

  • ✓ kept WP Interactivity API · ACF Pro · server-side grader · Yoast SEO · Wordfence · Cloudflare
  • × removed No legacy stack — greenfield. Avoided: SPA framework, client-side grading, third-party quiz plugin, marketing trackers
§ 04.04.F

Results · Measured

Every number · dated · sourced
INP · Quiz p75
88 ms
▼ 75% from 358 ms
LCP · Mobile p75
0.7 s
green · launch
CLS · Mobile
0.00
stable
INP · quiz engine p75
12.07.2025 · field + lab
LCP · mobile p75
12.07.2025 · PSI mobile (pre-launch baseline)
Lighthouse Performance
12.07.2025 · PSI mobile
Lighthouse Accessibility
12.07.2025
axe-core violations
quiz UI · axe + NVDA · 12.07.2025

Every metric carries its tool and date. INP measured on the interactive quiz route, lab and early field. Baselines were captured against an early prototype before the engine rewrite.

§ 04.04.G

Tradeoffs

What was not fixed

I did not build native mobile apps — the platform is a fast, installable web app (PWA-ready), not an App Store build. For a free product, a single accessible web codebase beats maintaining three. Native wrappers remain an option if usage warrants it.

§ 04.04.H

AI usage · This project

Per-engagement disclosure

Claude and Cursor scaffolded the Interactivity API store and the question-bank field groups, and drafted unit tests for the spaced-repetition scheduler. The grading logic, the scheduler, and all accessibility work were hand-written and human-reviewed. No study questions or copy were AI-written — content came from the client against official ALEA materials.

Read the full AI policy ↗.

Scaffold
Claude · Cursor
Refactor
Human
A11y
Human · NVDA
Copy
Client + human
Architecture
Human
QA
Human
§ 04.04.I

Testimony · Verified

Client-verified · live site
"We wanted something that felt like an app but stayed free and maintainable forever. Pixy built exactly that on WordPress — the quizzes feel instant, progress follows you across devices, and it works perfectly on a keyboard and a screen reader. Zero accessibility violations on a quiz engine is not normal."
Name
Marcus Pierce
Role
Founder
Company
LicenseBound
Project
2025 platform build
Verified via
getlicensebound.com

Same shape as your site? An Audit Sprint starts at $1,500.

Audit Sprint terms → Start a project