How rbuonodev/cad-vision works
3DE is a browser-based parametric mechanical CAD editor. The user defines sketches and feature operations in a Streamlit workspace; the model is rebuilt as a solid, then presented in a 3D viewer or saved/exported. Sketch constraints, feature history, and geometry export are distinct capabilities. The excerpts show app-to-solver use and engine-to-constraint solving; some UI, rebuild, viewer, and export wiring is not visible, so those links are marked unverified.
Main entry points: app.py Streamlit Workspace · editor.js Sketch Editor · engine.py Feature Validation · constraints.py Constraint Solver
Components 13
CAD Workspace
- Streamlit Workspace
app.py - Feature History
app.py
Sketching
- Sketch Editor
sketch/editor.js - Sketch Assist
sketch/assist.js - Browser Constraint Solver
sketch/solver.js - Constraint Solver
constraints.py
Modeling
- Feature Validation
engine.py - Solid Builder
engine.py - Mesh Generation
engine.py
Viewing & Files
- 3D Viewer
viewer.py - JSON Projects
engine.py - STEP / STL Export
engine.py
Other components
- CAD User
Connections 16
- CAD User → Streamlit Workspace: edits model
README.md - Streamlit Workspace → Feature History: edits history
app.py - Streamlit Workspace → Sketch Editor: opens sketch
- Sketch Editor → Sketch Assist: uses feedback
- Sketch Editor → Browser Constraint Solver: solves constraints
sketch/editor.js - Streamlit Workspace → Constraint Solver: solves relations
app.py - Constraint Solver → Feature Validation: solves polygon relations
engine.py - Streamlit Workspace → Feature Validation: submits features
app.py - Feature Validation → Solid Builder: builds solid
engine.py - Streamlit Workspace → Solid Builder: rebuilds model
app.py - Solid Builder → Mesh Generation: tessellates solid
engine.py - Streamlit Workspace → 3D Viewer: displays model
app.py - CAD User → JSON Projects: opens project
README.md - Streamlit Workspace → JSON Projects: loads JSON
app.py - CAD User → STEP / STL Export: exports geometry
README.md - Streamlit Workspace → STEP / STL Export: exports model
app.py