Docs

How Eduira works under the hood.

Technical docs for teachers, IT admins, and developers integrating Eduira content into other systems.

The Learning Interaction Model (LIM)

  • Every lesson is a single JSON document: metadata + activities[] + settings.
  • 8 native activity types (quiz, matching, fill-blank, true-false, sorting, crossword, flashcards, random-wheel) render with React.
  • 32 prebuilt HTML iframe templates (wordsearch, hangman, boss-battle, tug-of-war, etc.) speak a postMessage protocol.
  • Unlimited AI-generated custom HTML activities are produced at runtime.

Live game protocol

  • Every iframe activity emits `activity-progress` and `activity-complete` postMessages.
  • In race mode the runtime injects window.__GAME_MODE__ = 'race' before data.
  • Server-authoritative timing: player timeMs is computed as Date.now() - questionStartedAt.
  • Full protocol reference: docs/LIVE_RACE_PROTOCOL.md in the repo.

SCORM compatibility

  • SCORM 1.2 + 2004 export with self-contained player and cmi.score tracking.
  • Drop the .zip into Moodle, Canvas, Schoology, Blackboard, D2L, or any SCORM-compliant LMS.
  • Activity completion + score round-trips back to the LMS gradebook.

Themes & customization

  • 12 built-in themes (default, playful, dark, space, ocean, forest, candy, retro, wildwest, winter, safari, science).
  • AI-generated custom themes via natural language: "retro arcade", "soft pastel", etc.
  • Theme is a CSS-variable bundle injected into both native React renderers and HTML iframes.