How maxthraxx/openmaic works
OpenMAIC turns a learner’s topic or uploaded material into an interactive, multi-agent classroom, then supports live teaching, discussion, and export. The main path runs from the home-page generation experience through outline and scene generation into classroom playback. The README documents slides, quizzes, simulations, PBL, whiteboard/TTS, and PPTX/HTML export; those capability links are shown at the documented level. Source excerpts confirm pipeline staging and playback/action execution, but many UI and API implementations were not sampled.
Main entry points: [id]/page.tsx Classroom view · app/page.tsx Creation workspace · scene-renderer.tsx Scene rendering · pipeline-runner.ts Generation pipeline
Components 24
Classroom creation
- Creation workspace
app/page.tsx - Outline generation
lib/generation/outline-generator.ts - Generation pipeline
lib/generation/pipeline-runner.ts - Scene generation
lib/generation/scene-generator.ts
Classroom runtime
- Classroom view
app/classroom/[id]/page.tsx - Scene rendering
components/stage/scene-renderer.tsx - Agent discussion
components/roundtable/index.tsx - Lecture playback
lib/playback/engine.ts - Agent action engine
lib/action/engine.ts - Whiteboard
components/whiteboard/index.tsx - Project learning
components/scene-renderers/pbl-renderer.tsx - Quiz scenes
components/scene-renderers/quiz-renderer.tsx - Interactive scenes
components/scene-renderers/interactive-renderer.tsx - Classroom chat
app/api/chat/route.ts
AI and media services
- Document parsing
app/api/parse-pdf/route.ts - LLM providers
lib/ai/providers.ts - Image and video
lib/media/media-orchestrator.ts - Speech services
lib/audio/tts-providers.ts - Web search
lib/web-search/tavily.ts
Classroom state and export
- Classroom storage
lib/server/classroom-storage.ts - Browser persistence
lib/utils/database.ts - Classroom export
lib/export/use-export-classroom.ts - PPTX export
lib/export/use-export-pptx.ts
Other components
- Learner
Connections 24
- Learner → Creation workspace: describes topic
README.md - Creation workspace → Document parsing: submits materials
- Creation workspace → Generation pipeline: starts generation
- Generation pipeline → Outline generation: generates outlines
lib/generation/pipeline-runner.ts - Generation pipeline → Scene generation: generates scenes
lib/generation/pipeline-runner.ts - Scene generation → Classroom view: produces classroom
README.md - Classroom view → Scene rendering: renders scenes
- Classroom view → Agent discussion: hosts discussion
README.md - Classroom view → Lecture playback: plays lecture
- Lecture playback → Agent action engine: executes actions
lib/playback/engine.ts - Agent action engine → Whiteboard: draws content
lib/action/engine.ts - Scene rendering → Project learning: renders PBL
README.md - Scene rendering → Quiz scenes: renders quizzes
README.md - Scene rendering → Interactive scenes: renders simulations
README.md - Agent discussion → Speech services: speaks aloud
README.md - Agent discussion → Whiteboard: draws diagrams
README.md - Learner → Classroom chat: sends message
README.md - Classroom chat → LLM providers: requests response
app/api/chat/route.ts - Learner → Image and video: requests media
- Learner → Web search: searches topic
- Classroom view → Classroom storage: loads classroom
- Creation workspace → Browser persistence: persists settings
- Classroom view → Classroom export: exports HTML
README.md - Classroom view → PPTX export: exports slides
README.md