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
Loom walkthrough
Screen plates · Gallery
Placeholders shown — production screenshots replace these on the live build. Arrow keys navigate; Esc closes.
Problem
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.
- ▲ Greenfield · app-like brief
- ▲ Server-graded mock exams required
- ▲ Spaced-repetition scheduling
- ▲ Cross-device progress
- ▲ WCAG 2.2 AA · plain language
Constraints
Decisions
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.
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.
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.
Build
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
Results · Measured
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.
Tradeoffs
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.
AI usage · This project
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
Testimony · Verified
"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