A reusable engineering notebook connecting design intent, 3D geometry, revision decisions and simulation evidence. The vehicle project is a worked example; create your own notebook with the included project CLI.
Explore in 3D · Watch the film · Motion and terrain · Documentation · Release v0.1.1 · License
The v0.1.1 source archive includes the examples, documentation and film. Published packages are listed on GitHub Releases. The included docs/ and media/ work offline through the local server.
Requires Python 3.11+ and a WebGL browser. From this directory:
python3 tools/serve.pyOpen http://127.0.0.1:8767/ for the website, documentation and interactive notebook.
python3 tools/project.py init projects/my-rover --name "My rover"
python3 tools/project.py validate projects/my-rover/project.jsonOpen http://127.0.0.1:8767/studio.html?project=projects/my-rover/project.json. The starter is a deliberately simple original rover fixture. Replace it with your own millimetre-unit OBJ:
python3 tools/project.py add-model projects/my-rover/project.json bracket.obj --id bracket --units mmAttach sampled motion from an external engine with add-replay. The integration guide defines body identities, metre units, quaternion ordering, metrics and scope. Keep the exact source and failed results with your project.
- Portable project manifests with stages, model assets, revision graphs and scoped evidence.
- A visible project record with parent links, revision decisions, exact failure statuses and verified artifact downloads.
- 3D orbit, subsystem isolation, wireframe and exploded inspection.
- Four CAD-derived vehicle studies and an archived Project Chrono obstacle replay.
- Original desk-rover and linear-stage examples, with grouped OBJ imports, a retained failed clearance check, and clearly labelled prescribed-motion fixtures.
- Restricted formula evaluation, compact-vehicle quasi-static analysis and optional linkage closure code.
- A 37.5-second hero with an original 128 BPM electronic score, full revision-tree zoom, detailed Ridge R3d inspection, terrain interaction, recorded Chrono contact and coherent separation.
terrain.html: the restored native wheel obstacle inspection and separate recorded Chrono log, pit and steering/braking runs, with chase/driver cameras, collision shapes, contact forces, suspension traces and parameters.- An interactive cinematic inspector with source part selection, isolation, wireframe, system/member separation and graph navigation.
- The separate 96-second educational walkthrough, captions and reproducible capture tooling.
python3 -m venv .venv
. .venv/bin/activate
python3 -m pip install -r requirements-analysis.txt
npm ci
npx playwright install chromium
npm test
npm run test:browser
npm run test:hero
npm run test:motion
npm run check:releaseNode.js 22 is used for browser and capture tools. Running the website and project commands does not require Node. Optional numerical dependencies are in requirements-analysis.txt.
This is an experimental software release. The vehicle designs are not qualified for fabrication or riding. RC25 has not been printed or driven; the R3d fit findings remain open; R5 is a body/ergonomics study. The physics segment replays a separate simplified historical model whose rear axle did not clear the obstacle. Inspection animation is not solved dynamics. Revision history is not an evolutionary optimizer run.
Supplier STEP solids, branding, personal fitting proxies, downloaded reference documents and the full source workspace history are excluded. Provenance records source hashes, omissions and display conversion. Licensing and attribution describe this bounded release.
| Path | Purpose |
|---|---|
index.html, site.css |
Public overview and examples |
studio.html, app.js |
Interactive inspection and guided tour |
projects/ |
Portable projects |
tools/project.py, tools/replay.py |
Project and replay interfaces |
data/ |
Authored display assets and numerical evidence |
tools/build_docs.py, docs/ |
Documentation source and generated pages |
tools/capture.mjs, media/ |
Reproducible media |
Original release material: MIT. Three.js retains its own MIT notice. Chrono and FreeCAD are independent tools; this project is not affiliated with or endorsed by them.
Open http://127.0.0.1:8767/studio.html?project=projects/linear-stage/project.json. Inspect the grouped assembly, keep the initial failed fit, follow its revision, and view the original evidence through Project record. The final motion is an explicitly prescribed adapter fixture. Rebuild its geometry and evidence with python3 tools/build_example.py.
For assemblies exported as OBJ, pass --groups subsystems.json to add-model to map authored object/group names to inspection subsystems. Nested asset directories are supported. See the geometry guide.
