Open source CAD in the browser (Solvespace)

FreeCAD vs SolveSpace and Other CAD Tools

  • FreeCAD is praised as increasingly powerful, comparable to commercial tools, and for some has replaced Fusion 360 for woodworking and general CAD.
  • Critiques of FreeCAD: still convoluted UI, steep learning curve, many corner cases where models “break” with little guidance, and a somewhat fragile geometry kernel (fillets/intersections can fail).
  • SolveSpace is seen as lightweight, fast, and “joyful” for smaller 3D prints and laser-cut parts, but significantly less capable than FreeCAD.
  • Dune3D is described as a spiritual successor to SolveSpace: uses SolveSpace’s constraint solver plus OCCT for solids, gets fillets/chamfers and better STEP handling, but still far below FreeCAD in breadth (no BIM, FEA workflow, etc.).
  • Onshape and Fusion 360 are viewed as slick and approachable, but with licensing, cost, and cloud/lock‑in concerns.

SolveSpace Capabilities, Limitations, and Roadmap

  • Major limitation: lack of robust chamfers and fillets, considered “rudimentary” features elsewhere.
  • A maintainer states chamfers/fillets are now a top priority but extremely difficult to implement generally, especially corners where multiple fillets meet.
  • Technical challenges highlighted: floating‑point tolerance issues, messy intersections that break point classification, singularities in parameter space, and many special cases.

Geometry Kernels: Custom vs OCCT vs Parasolid

  • SolveSpace uses a very small custom NURBS kernel (<10k LOC), contrasted with OCCT (>1M LOC).
  • Pros of the custom kernel: small, understandable code, easier contributions, feasible browser port.
  • Cons: more boolean bugs and NURBS failures, missing advanced operations.
  • There is discussion of possibly swapping in OCCT under the hood, but concerns about preserving SolveSpace’s entity tagging and constraints.
  • Some participants wish for a “cleanroom” Parasolid‑like kernel; others stress how hard this is and reject the idea that LLMs can simply “vibe-code” a robust kernel.

Browser-Based CAD, WASM, and UX

  • SolveSpace’s web version runs entirely locally in the browser, using WebAssembly; total download is under ~3 MB, including fonts and a bundled viewer.
  • This is contrasted with web‑based services like Onshape that require online access and server-side infrastructure.
  • Basic navigation: scroll to zoom around cursor, right‑drag to pan, middle or Shift+right‑drag to rotate; “f” fits the model to the view.
  • Some users find the zoom behavior unintuitive at first (origin appears to drift), others note it matches many other editors.

Text Rendering and UI Aesthetics

  • The browser version uses GNU Unifont, a bitmap font also used on desktop; chosen for Unicode coverage, small size, and platform independence.
  • Some users like the sharp pixelated look; others see badly scaled, uneven strokes, likely due to scaling/HiDPI issues in certain browser/OS combinations.
  • Maintainers suspect a bug on some setups and ask for detailed reports.

Scripted CAD and LLM Integration

  • One project explores an LLM‑to‑CAD pipeline and initially favors OpenSCAD as a target language.
  • Others argue OpenSCAD is too limited: polygonal-mesh CSG only, no NURBS, no native constraints, and complex smooth operations (fillets/chamfers, surface trimming, geometric queries) are painful.
  • Libraries like BOSL2 help but can be extremely slow for many fillets; fncad offers “smooth CSG” but still lacks advanced querying.
  • Python-based build123d, sitting atop a richer kernel, is pointed out as a more natural target for LLMs generating CAD.
  • Another browser project (vcad.io) implements a Rust-based kernel compiled to WASM; commenters inquire about NURBS, STEP export, B‑rep representation, and numerical robustness.

Learning Curve, Ecosystem, and Licensing

  • Some users report learning FreeCAD quickly with modern tutorials; others bounced off older versions but are told 1.0+ is significantly better.
  • Suggestions for newcomers beyond TinkerCAD include FreeCAD (1.0+), Onshape (with caveats about public documents and high paid tier), and even learning on SOLIDWORKS (pirated or hobby license) to understand parametric workflows.
  • Several comments emphasize the value of supporting open tools (FreeCAD, OCCT, SolveSpace) financially instead of paying high subscription fees to proprietary cloud CAD.