-
-
Sophie is an instructor-governed AI platform for building coherent, interactive STEM curricula with scientific judgment at the center.
-
ASTR 201 Spoiler Alerts lesson reading, made by Sophie.
-
ASTR 201 Discovering the HR Diagram module landing page, made by Sophie.
-
ASTR 201 Foundations module landing page, made by Sophie
-
ASTR 201 homepage, made by Sophie
-
Sophie slides, made by Sophie
-
Sophie slides, made by Sophie
-
Sophie slides, made by Sophie
-
Sophie slides, made by Sophie
-
Sophie slides, made by Sophie
Inspiration
I am a computational astrophysicist and STEM professor at San Diego State University. I teach astronomy and computational science, mentor students in research, build scientific software, and genuinely enjoy ambitious, forward-looking pedagogy. I am also tired: instructors are rarely given the time, infrastructure, or space to redesign a course well. Innovation becomes another layer of unpaid manual work.
Over the last year, AI assistance helped me build a set of ambitious learning environments:
- ASTR 596: Modeling the Universe
- ASTR 201: Astronomy for Science Majors
- ASTR 101: Principles of Astronomy
- COMP 536: Computational Modeling for Scientists
- Cosmic Playground
They revealed the same problem. I was manually synchronizing readings, slides, figures, derivations, activities, assignments, interactives, documentation, and instructor materials across several tools. AI accelerated drafting, but it also drifted from my pedagogical choices, forgot authoring conventions between sessions, and could confidently make incorrect scientific claims. Even with carefully developed skills and project instructions, I repeatedly had to re-explain the course structure, voice, and standards.
My courses emphasize scientific judgment and systems thinking. Students need to distinguish an observable from a model, an inference from an assumption, and a plausible answer from a validated claim:
$$ \text{observable} \rightarrow \text{model} \rightarrow \text{inference}. $$
That is even more important when AI makes text, code, figures, and explanations cheap to produce. An answer is not a substitute for understanding and verifying the system that produced it.
MyST and Quarto are excellent publishing systems. I used MyST for its visual quality and responsive authoring loop, then moved course sites to Quarto for Reveal slides, executable Python, and PDF generation. Neither could express and maintain the relationships across a whole curriculum. Cosmic Playground, a collection of physics-grounded interactive astronomy demonstrations built with Astro and TypeScript, made the need clearer: my pedagogy needs more than static readings and slides, but those modalities must still form a coherent learning environment.
Sophie began as an answer: build a system that helps ambitious STEM
instructors create ambitious, multi-modal curricula without giving up their
scientific authority, teaching voice, aesthetics, or judgment.
What it does
Sophie is an open-source, schema-driven, AI-authorable platform for STEM
instructors building interactive scientific textbooks, course websites,
presentations, activities, assessments, and instructor materials.
Sophieturns AI from an unconstrained course generator into an instructor-governed curriculum-engineering collaborator.
Instead of treating a lesson as only a Markdown page, Sophie models its
teaching meaning. Flexible prose sits alongside stable learning objectives,
scientific reasoning roles, figures, equations, derivations, formative checks,
problems, sources, and curriculum connections. Those semantic objects can be
reused and validated across media without forcing a reading, a slide, and an
interactive to have identical prose or layout.
The current platform includes a live authoring preview and Inspector; typed course, module, and lesson structures; accessible pedagogical components; semantic curriculum artifacts and diagnostics; reusable Problems and assignments; source-grounded provider-neutral AI revision packets; and native Reveal presentations from readable lesson-owned slide source. The presentation workflow supports full-screen presenting, speaker/rehearsal support, review, study, export, fragments, notes, themes, and automated geometry and accessibility checks.
The public ASTR 201 Sophie pilot
is a real, independently versioned consumer course, not a fictional demo.
How we built it
Sophie did not begin Build Week as an empty repository. Claude Opus 4.8 had
helped establish a promising foundation: useful pedagogical primitives,
meaningful package boundaries, accessibility work, and an extensive test suite.
The product vision was stronger than some of the implementation evidence.
Documentation sometimes described planned behavior as shipped, compiler state
and artifacts were not always cleanly aligned, APIs included speculative
contracts, and broad tests could miss failures in a packaged consumer.
During Build Week, I used Codex with GPT-5.6 as a persistent engineering and
authoring collaborator. I supplied the instructional goals, scientific
judgment, aesthetic direction, architectural decisions, and approval boundary.
Codex inspected both the Sophie platform and the external ASTR 201 consumer,
traced behavior across package boundaries, proposed evidence-based designs,
implemented approved slices, and verified the results.
Build Week work hardened the platform around real instructor workflows:
- canonical course → module → lesson structures and immutable compilation;
- semantic teaching sequences and shared artifact identity across outputs;
- readable lesson-owned slide source compiled to native Reveal presentations;
- provider-neutral, source-grounded authoring and review workflows for Codex and Claude subscription clients;
- stronger accessibility, package, browser, visual, deployment, and external consumer verification; and
- documentation and ADR cleanup that distinguishes current capability from planned work.
Sophie is built primarily with TypeScript, Zod, Astro, MDX, React, Reveal,
Playwright, Vitest, Storybook, pnpm, and Turborepo. Its manim-sophie Python
foundation supports manifested scientific-animation workflows.
Challenges we ran into
The central design challenge was combining flexible scientific writing with reliable structure. Prose must remain expressive, but objectives, models, derivations, assessments, sources, and provenance need stable identities if AI is going to help revise them safely.
“One source of truth” also cannot mean one identical rendering. A reading
explains, a slide focuses attention, an animation makes change visible, and an
interactive lets students manipulate a model. Sophie shares the underlying
meaning while allowing each medium to do its own job.
We also learned that source-tree tests alone create false confidence. A build can pass while a packaged dependency, a non-root deployment, an accessibility portal, or an independent consumer course fails. The verification strategy had to test what instructors and students actually receive.
Finally, AI can perform large mechanical work, but it cannot silently rewrite the meaning of an ASTR 201 lesson. AI proposes and accelerates; the instructor decides.
Accomplishments that we're proud of
- Proving
Sophieagainst a real public STEM course rather than a toy example. - Making scientific and pedagogical structure explicit while preserving flexible prose and instructor style.
- Building one platform for course sites, readings, reusable problems, assignments, review, and native Reveal presentations.
- Establishing source-grounded, provider-neutral AI workflows with visible provenance and instructor approval boundaries.
- Replacing brittle or speculative pathways with cleaner contracts, documentation, and external-consumer validation.
- Improving the course that motivated
Sophie, rather than creating a disposable hackathon demonstration.
What we learned
AI development speed magnifies architecture quality. Unclear ownership lets an agent create inconsistency faster; explicit contracts and validation let it work safely across a larger system. Schemas can stabilize meaning without making prose rigid, and “single source” should mean one source of meaning, not one universal rendering.
Human-in-the-loop cannot be only an ethical aspiration. It must appear in the data model, source packets, proposal workflow, provenance, tests, and release boundary. That is also a matter of instructor agency and academic freedom: educators need tools that amplify their expertise rather than flatten their courses into generic AI output.
Codex was most valuable not as a code generator, but as a collaborator that could inspect a large repository, challenge stale assumptions, carry evidence from design through verification, and implement decisions I approved.
What's next for Sophie
The immediate goal is to finish ASTR 201 as a flagship proof: coherent lesson bundles, readings, slides, scientific animations, polished interactives, formative checks, problem sets, printable assignments, and instructor-gated solutions built from shared course meaning. The next platform work includes source-grounded revisions, semantic curriculum diffs, objective-assessment alignment, provenance review, and synchronized publishing.
manim-sophie will expand toward astronomy-specific and foundational physics
and mathematics media. Cosmic Playground resources will become trusted parts of
complete predict–interact–explain sequences rather than isolated simulations.
Longer term, Sophie will become approachable for instructors beyond technical
Codex or Claude users, while preserving the same expert-governed model. It will
also support learner-centered scientific-software documentation and research
communication. Student-facing tutoring and grading are intentionally deferred:
they require a stronger privacy, accessibility, provenance, and educational
evidence base than this instructor-focused prototype.
Additional project-page fields
Built with
Keep only technologies that ship in the final project.
GPT-5.6, Codex, TypeScript, Astro, React, MDX, Zod, Reveal.js, Python, Manim, Playwright, Vitest, Storybook, Vite, pnpm, Turborepo, Biome, GitHub Actions, GitHub Pages
Try it out
Built With
- astro
- biome
- codex
- github
- github-actions
- gpt-5.6
- manim
- manim-voiceover
- mdx
- playwright
- pnpm
- python
- react
- reveal.js
- storybook
- turborepo
- typescript
- vite
- vitest
- zod


Log in or sign up for Devpost to join the conversation.