-
-
Production Home — Equations have limits. Find them.
-
Explore Spring — Hooke’s law and mechanical loading
-
Spring analysis — Measurements, model fit and result summary
-
Residuals — Inspect sustained disagreement
-
Explore Pendulum — Small-angle approximation
-
Custom data — Real Gemini setup proposal awaiting confirmation
Inspiration
Students often memorize equations without learning their assumptions or valid regimes. A high fit score can hide systematic residual disagreement. ModelScope makes model adequacy an evidence-based learning task: when should we stop trusting this approximation for these measurements?
What it does
ModelScope helps students understand where scientific models stop adequately matching experimental data. It compares measurements with a configured scientific baseline, searches continuous segmented alternatives, and exposes the supporting evidence. Students explore four 3D scientific systems—Spring, Pendulum, Beer–Lambert, and Sensor Calibration—inspect linked plots and measurements, or bring CSV, pasted tables, and manual data. Outcomes distinguish supported, ambiguous, no clear transition, and insufficient evidence.
The graph-first workspace keeps the main model fit and compact result together. Residuals, Model comparison and Evidence offer successive checks; Full Evidence opens deeper findings and diagnostics. The collapsible Measurements editor links source rows to plotted points. Reproducible JSON exports preserve provenance and numerical evidence.
How we built it
Pure TypeScript performs baseline fitting or fixed-theory prediction, residual analysis, penalized continuous segmented comparison, sustained same-direction disagreement checks, and an influential-observation safeguard. The same complete observations remain in the reported fits. The transition sensitivity range describes sampling and candidate sensitivity; it is not a confidence interval.
Next.js and React provide the responsive workspace. Three.js, React Three Fiber and Drei provide the scientific scenes, while Recharts connects plots and evidence. Explore uses system-specific motion and pauses offscreen scene work. The production application runs on Vercel.
Challenges we ran into
Distinguishing sustained model disagreement from an attractive fit improvement or one influential point. Keeping AI proposals reviewable, explanations bound to the current finding, and scientific results reproducible. Making four scientific scenes and dense evidence views usable on desktop and mobile.
Accomplishments that we're proud of
A working public product with four 3D systems, custom data, linked evidence, JSON exports, and real bounded Gemini. The verified release has 306 passing tests with typecheck, lint and build passing. The human-voice demo uses actual production recordings, including explicit AI setup confirmation. The design connects cinematic exploration with inspectable numerical evidence.
What we learned
Model adequacy depends on assumptions, sampling and residual structure. Better fit alone does not establish a transition, and a transition does not establish a physical cause. Keeping AI outside the calculation path makes results reproducible and explanations easier to review.
What's next
Evaluate the educational experience with teachers and students, then test independently collected classroom datasets and the suitability of the current assumptions. These are proposed future steps; improvements in learning outcomes have not yet been measured.
Responsible AI and development disclosure
AI explains. The analysis engine decides.
Gemini proposes only a supported configuration from an experiment description and exact column headers. The student reviews and confirms it, supplies a justified response scale, and separately runs analysis. Gemini can also explain an existing deterministic finding using minimal summary context. It cannot fit the model, select the breakpoint, invent uncertainty, or change support. Optional AI can fail or misinterpret; manual analysis remains usable.
Luis Contreras designed and built ModelScope end-to-end as a solo developer. The project was started from scratch during the overlapping eligible hackathon period; retained Git history begins October 4, 2026. Codex assisted engineering, debugging, research, documentation and verification. Runtime Gemini is separate from AI coding assistance. Open-source dependencies and the pre-trained Gemini model are disclosed. The final video uses Luis's recorded narration, existing production footage, Python, Pillow and FFmpeg; it contains no synthesized replacement speech.
Limitations and privacy
Built-in datasets are synthetic educational demonstrations, not laboratory validation. The prototype supports restricted baselines and one possible hinge with ordinary least squares and assumed response scales. It has no calibrated false-positive rate, confidence interval, causal mechanism inference, arbitrary equation support, or classroom outcome study. Repeated X values and measurement-input uncertainty are unsupported.
Normal analysis and raw measurements stay in browser memory. Optional Setup sends description and headers; Explain sends one selected finding and limited evidence context, including summary statistics and caveats. Free-tier Gemini context may improve Google products; avoid sensitive context. The provider key remains a production server secret.
Built With
- codex
- drei
- gemini
- next.js
- papaparse
- react
- react-three-fiber
- recharts
- tailwindcss
- three.js
- typescript
- vercel
- vitest
- zod

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