← All work
Full Stack Developer2024 — 2025ZAWTech.ai

AI-Powered Adaptive Learning & Gamified Assessment Engine

Next.jsPythonOpenAI APIRBAC Architecture

At ZAWTech.ai I helped build an LMS that makes online assessments feel alive — students get fresh AI-generated questions instead of memorized banks, and a rocket that moves with every correct answer keeps them engaged through longer quizzes. Teachers spend far less time writing unique papers while institutions keep full control through a four-tier RBAC model.

Selection Control
LMS configuration portal with roles and taxonomy controls

Role & taxonomy configuration for multi-tenant governance.

Architecture breakdown

01

RBAC System

Super Admin, Admin, Teacher, and Student role isolation — from org billing & LLM budgets down to course modules and learner progress.

02

Dual-Engine Assessment

Toggle between high-throughput database quizzes and OpenAI real-time generation via a Python microservice with structured JSON output.

03

Rocket Motion Engine

Framer Motion trajectory synced to correctness state — correct answers advance the rocket; incorrect answers hold position to reward precision.

04

Multi-Format Support

MCQ, Fill-in-the-Blank, and Passage comprehension logic covering recall, terminology, and deeper analytical understanding.

The core challenge

Traditional LMS platforms rely on static, repetitive question banks. Students memorize fixed patterns (academic dishonesty risk), and form-based quizzes lack real-time visual feedback — causing drop-offs on longer assessments.

  • Four-tier RBAC: Super Admin, Admin, Teacher, Student
  • Dual-engine quizzes: database static banks + OpenAI dynamic generation
  • MCQ, FIB, and Passage-based comprehension formats
  • Gamified rocket progress with real-time correctness sync
  • Sub-2s feel for AI quiz generation via streaming & prompt structure

Technical solution

Next.js App Router for the product shell and gamified assessment UI; NestJS/Node for core business logic & RBAC; Python (FastAPI/Flask) microservice for LLM orchestration; PostgreSQL for users, roles, and static quiz repositories; Redis for session and LLM response caching.

Next.js + Framer Motion delivered a zero-latency-feel assessment UX. Python isolated LLM orchestration, retries, and structured JSON parsing from the core API. PostgreSQL enforced tenancy and role boundaries; Redis cut repeat LLM cost and latency.

Engineering challenges

Academic predictability vs. adaptive generation

Static banks alone were gameable. We added an OpenAI engine that ingests course materials/passages, applies teacher prompt templates, and streams relevant questions without blocking the UI.

Engagement during long assessments

Replaced static progress bars with a rocket motion engine bound to answer correctness — visual feedback that rewards precision without dark patterns.

Role isolation at enterprise scale

Segmented workflows across Super Admin (org, billing, LLM budgets), Admin (onboarding & audits), Teacher (content & prompts), and Student (learn & assess).

Impact

<2s

AI quiz generation feel

60%+

Less teacher question-writing overhead

Quiz completion vs. static forms