-
Notifications
You must be signed in to change notification settings - Fork 0
Development
Bryan Chen edited this page Apr 16, 2026
·
1 revision
- Node.js 18+
- npm
git clone https://github.com/IlliniOpenEdu/PhysicsSims.git
cd PhysicsSims
npm install
npm run devVite will print a local URL, typically http://localhost:5173.
npm run dev # start development server
npm run build # type-check + production build
npm run preview # preview production build
npm run lint # run eslint
npm run deploy # build and publish dist/ to GitHub Pages- This repository is configured for GitHub Pages project-site hosting.
-
vite.config.tsusesbase: '/PhysicsSims/'. - Build output includes
dist/404.htmlcopied fromdist/index.htmlso client-side routes work on refresh.
Primary app wiring points:
- Route registration and app-level constants:
src/App.tsx - Internal admin state and persistence keys:
src/config/internalAdmin.ts - Collider defaults, bounds, detector map:
src/lib/collider/constants.ts - Collider runtime update cadence:
src/hooks/useColliderSimulation.ts
When changing behavior, locate the source constant first and update docs in Hardcoded Values and Keys.
- Run
npm run lint. - Run
npm run build. - Test at least one sim in each track (mechanics, E&M, statics).
- If you changed routes or admin visibility, verify nav links and featured content still work.
- If you changed any hardcoded key/path/ID, update Hardcoded Values and Keys.
- Read Development Setup
- Check Hardcoded Values and Keys
- Make changes and verify locally
- Update docs in Simulation Catalog or other affected pages
- Follow PR checklist in Contributing