OmniCanvas

University STEM slides are dense, static, and usually studied one page at a time. OmniCanvas turns readable lecture material into a source-grounded Learning Universe: a Miro-like spatial workspace of connected sources, concepts, retrieval questions, misconception checks, notes, learner-created connections, review sessions, and trusted playable simulations.

What students can do

  • Upload PDF, PPTX, Markdown, or text, or paste a source directly.
  • Explore up to six pages or slides on a pannable, zoomable, draggable canvas with a minimap and source rail.
  • Answer retrieval questions before revealing source-backed responses.
  • Run a Study Sprint, then self-rate Again, Hard, or Got it to schedule the next browser-local review.
  • Draw a dashed My connection edge between ideas. OmniCanvas keeps it visibly learner-authored and unverified instead of presenting it as source truth.
  • Keep notes next to the relevant concept.
  • Use embedded deterministic environments for eight reviewed families: graph traversal, 2D transformations, RC circuits, uniform acceleration, Ohm's law, ideal gases, exponential change, and Newton cooling.
  • Follow a predict → change one variable → test → explain loop instead of passively rereading a slide.

No account is required. Saved universes and review history stay in the current browser.

Two flagship demos

Motion Universe

Students begin with uniform acceleration at (a = 3 m/s²), (t = 10 s), and (u = 0 m/s). Doubling only acceleration changes final velocity from 30 to 60 m/s and displacement from 150 to 300 m, making the relationship visible and testable.

Matrix Universe

Students shear a square with (egin{bmatrix}1 & 1\0 & 1end{bmatrix}) at determinant 1, then choose a singular matrix and watch determinant 0 collapse the geometry to a line.

How it works

  1. A bounded FastAPI ingestion layer extracts source text into traceable page, slide, or document units. PowerPoint speaker notes are opt-in.
  2. One selected source unit is sent to the hybrid compiler.
  3. Local code checks for a reviewed simulation match.
  4. A bounded GPT-5.6 Responses API Structured Output request can organize the selected source into concepts, retrieval questions, and an optional misconception check. GPT-5.6 may route only to an allowlisted simulation family.
  5. Pydantic validates the API response, literal-evidence filters reject excerpts absent from the source, and Zod validates it again in the browser.
  6. Reviewed TypeScript engines—not model-generated code—calculate every simulation result.
  7. If the AI service or network is unavailable, an extractive fallback keeps the study workflow usable and reports deterministic provenance honestly.

AI interprets; schemas validate; deterministic engines calculate.

Why this is different

OmniCanvas is not another slide summarizer, and it does not pretend every concept already has a custom simulation. Its product promise has two layers:

  • Broad coverage: readable material becomes a useful spatial study map.
  • Trusted depth: supported concepts also become interactive, reviewed worlds.

Grounding means every learning object retains page or slide traceability and every displayed evidence excerpt is checked against the selected source text. Learner-authored connections are deliberately marked as unverified. The MVP does not claim visual bounding boxes, OCR, handwriting recognition, real-time collaboration, scientific correctness guarantees, AI grading, or adaptive learning.

Built with Codex and GPT-5.6

I defined the slide-to-universe thesis, requested the spatial product pivot, chose the flagship use cases, and set the safety boundary that AI may interpret source material but must never invent or calculate a simulation.

Codex accelerated repository analysis, the typed Learning Universe graph, React Flow experience, bounded ingestion, Pydantic/Zod contracts, deterministic engines, prediction logic, evidence validation, Study Sprint scheduler, learner-edge validation and keyboard flow, accessibility, security review, testing, and deployment hardening.

GPT-5.6 is integrated at runtime through the Responses API for constrained source-to-learning-map interpretation. The request uses strict Structured Outputs, store: false, low reasoning effort, a bounded output budget, one request per uncached compile, allowlisted simulation routing, literal evidence checks, and truthful provenance. A result names GPT-5.6 only when that call actually succeeds; otherwise OmniCanvas says it used the deterministic fallback.

Stack and verification

React 19, TypeScript, Vite, React Flow, FastAPI, Python, OpenAI Responses API, Pydantic, Zod, Vercel, and Render.

The repository currently passes:

  • 98 frontend tests
  • 78 API tests
  • frontend lint and type checking
  • production frontend build
  • Python compilation
  • deployment checks on GitHub Actions and Vercel

The implementation also includes rate limiting, TTL caching, bounded AI concurrency, upload and archive limits, schema-validated local persistence, responsive behavior, keyboard focus handling, and honest privacy/provenance copy.

Try it

Built With

Share this project:

Updates