7 ms·
Open source CAD in the browser (Solvespace)
- masonhensley 7mo agoI've been using FreeCad more and more, but solvespace has been a great, lightweight tool to design parts for laser cutting by SendCutSend/Oshcut. Neat that they got it working in the browser.
- bhouston 7mo agoFreeCAD is amazing these days. It has completely replaced my use of Autodesk Fusion 360 for woodworking projects. It is capable and the UI is understandable. Its feature depth is incredible. FreeCAD is becoming like Blender and Inkspace - incredibly robust and capable and equivalent in most cases to the commercial alternatives. I find the rendering side of things under developed though.
- ur-whale 7mo ago> FreeCAD is amazing these days. FreeCAD has become much better, no denying it. "Amazing" is however not the word I would use though, the UI is still very convoluted and very hard to learn. The worst part in FreeCAD, and which remains true to this day is the load of minutia you need to know to handle/avoid weird corner cases that you inevitable run into when you start building complex models and where FreeCAD stubbornly refuses to let you carry on with your work. When you paint yourself into one of these corners, the software is hugely unhelpful when it comes to understanding what you did wrong and how to correct it. In short, the word "Amazing" only works if you compare it to the absolute abomination the UI was a few years back. But compare FreeCAD today to, for example, how slick Fusion is, there is still a very, very wide gap. Finally, the geometry engine, is a somewhat old and creaky thing that sometimes downright fails to compute fillets or surface/surface intersections correctly, so yeah, YMMV. FreeCAD is however, free software, and not controlled by one of the worst corp. in the world of software: Autodesk. So huge thumbs up there.
- jstanley 7mo agoThe word "amazing" fits perfectly if you compare FreeCAD to viable alternatives, of which there are none.
- trey-jones 7mo agoThis is really accurate to my experience learning FreeCAD earlier this year. I am a former professional CAD user (of a lesser software than AutoCAD) and I don't think I would have gotten far without being able to ask ChatGPT for help understanding some of the quirks of FreeCAD. For free and open it's truly impressive though. Actually I think my time building iOS UIs in Storyboard was at least as useful as previous CAD experience, since constraints are the foundation of (at least one approach to) designing parts.
- blacklion 7mo agoI nominate Adobe to the worst corp. in the world of software. Fusion360 at least works on Linux Photoshop/Lightroom don't.
- ruevs 7mo agoThe last Autodesk software I've used was AutoCAD 2000 (released in 1999). And I've not followed them since. Perhaps they have indeed become "one of the worst corp. in the world of software", but in the early years they were very interesting. The founder of Autodesk, John Walker (he died in 2024) wrote/edited and interesting book on the early years: "The Autodesk File" https://fourmilab.ch/autofile/ https://fourmilab.ch/autofile/
- lopsotronic 7mo agoYeah anything involving 2d art I confess I just send to Blender, even technical illustration, with the exception of O&D style sheets. The fact anyone got a CAD kernel working in the browser is insane. Parsing the vagaries, vendor cruft, and gaping holes in STEP files has occupied a non-trivial amount of my career. You want to talk about poisoned specs . . .
- 3yr-i-frew-up 7mo agoYep, love FreeCAD. I did a major project with it in 2019 and it was great back then. The issues it has are pretty minor. Admittedly I ended up using a fork for Assembly3(IIRC)
- hrmtst93837 7mo ago[flagged]
- olavgg 7mo agoI just started with FreeCAD this weekend, and in 3 hours I managed to create a simple pci bracket that I could 3dprint. I just followed some YouTube tutorials. When I learned 3D Studio Max 25 years ago, I struggled a lot more.
- MrDOS 7mo agoSolveSpace is a wonderfully different take on parametric CAD, but development has really slowed, and it seems fundamentally incapable of some pretty rudimentary features (like chamfers[0]). Dune 3D[1] seems like a pretty effective spiritual successor. 0: https://github.com/solvespace/solvespace/issues/149 https://github.com/solvespace/solvespace/issues/149 1: https://dune3d.org/ https://dune3d.org/
- julbaxter 7mo agoDune3D uses SolveSpace behind the scene.
- phkahler 7mo agoOnly for the constraint solver. Dune uses OCCT for the solid model.
- amelius 7mo agoI'm curious why you didn't go with OCCT for Solvespace.
- phkahler 7mo ago>> I'm curious why you didn't go with OCCT for Solvespace. I didn't start Solvespace, but Jonathan was apparently in a DIY mode after developing his take on constraint-based sketching. It's also very easy to go from NURBS curves to NURBS surfaces, the challenge begins at boolean operations which continue to be a source of bugs for us. This is really the only option other than OCCT and the code is small and approachable so I try to make it better.
- amelius 7mo agoWould it be worthwhile to consider switching to OCCT (or make it optional)? It would make certain things such as fillets/chamfers much easier, I suppose, and it would make those boolean operation bugs go away. And exporting to various formats would be easy.
- TheJoeMan 7mo agoI scrolled with the mouse wheel and the origin drifts off screen. Is there an open-source "cleanroom" re-implementation of the Parasolid kernel? I just like the way Solidworks does things vs. Autodesk.
- gcr 7mo agoThe mouse wheel zooms. The bounds of the axis stay fixed on the screen however. It will become more intuitive if you draw a circle to the screen first. To pan around the space, use the right mouse button. To zoom, use the scroll wheel. To rotate, use Shift+Right mouse button. Why not play with it a little bit before dismissing it so suddenly? I don't need to mention to a Solidworks/Autodesk user that CAD tools take some patience to understand properly :-)
- phkahler 7mo ago>> To rotate, use Shift+Right mouse button. Or middle mouse button / click the scroll wheel.
- phcreery 7mo agoThis is expected behavior. The zoom action is into the cursor center. This is the same behavior of many other 2d/3d editors, such as Autodesk Autocad, Inventor, etc. Even MS Paint does this. If you place your cursor perfectly at the origin, it will not appear to drift.
- ruevs 7mo agoIf you get lost press `f` to "fit" the current drawing to the screen. By the way working in SolveSpace is extremely fast if you use keyboard shortcuts - almost everything can be dome with a shortcut key. No need to search for them - you can learn them by looking in the menus. A very short "crash course" on the navigation is in the "Quick start:" section at the bottom of the download page. https://solvespace.com/download.pl https://solvespace.com/download.pl The "demo video" on the home page is also a great starting point. After that the "Tutorials" and "Reference" go in as much detail as one may want :-)
- steveharing1 7mo agoCurrently I'm comfortable using FreeCAD but i'll try this one for sure.
- ponyous 7mo agoDoes this use its own backend/engine? I've been working on LLM to CAD tool[0] and have realised there are so many backends and options to choose from. Since the realisation I'm trying to find the best representation for an LLM. I think OpenSCAD is currently the best and most feature complete choice, but I definitely need to dig a bit deeper. If anyone has any pointers I welcome them! [0]: https://GrandpaCAD.com https://GrandpaCAD.com
- yangcheng 7mo agoI have tried OpenSCAD, it seems very slow to compile to display on web. are you using the official wasm or some other ways?
- mikeayles 7mo agoyou may find this useful: https://phaestus.app/blog/blog0031 https://phaestus.app/blog/blog0031 Edit: Forgot I also got doom running in openscad: https://www.mikeayles.com/blog/openscad-doom/ https://www.mikeayles.com/blog/openscad-doom/ and doom running in openscad in the browser at https://doom.mikeayles.com/ https://doom.mikeayles.com/
- yangcheng 6mo agocool! it's way faster on desktop. I also recompiled to include 3MF support. However on mobile phones compile is still slow even if I set fa to be lower.
- ponyous 7mo agoI export it as .3mf file and display it with threejs on the web. Compilation seemed fast enough - few seconds tops.
- ur-whale 7mo ago> I think OpenSCAD is currently the best and most feature complete choice As much as I love OpenSCAD, I would strongly disagree with your conclusion. All the OpenSCAD language can do is boolean operations and moreover, the engine can only implement those on polygonal (triangle actually) meshes. That's a very far cry from what a modern commercial CAD engine can do. For example, the following things are very, very hard to do, or even specify using OpenScad: - Smooth surfaces, especially spline-based - Fillets / Chamfers between two arbitrary surfaces - Trimming surfaces - Querying partly built models and using the outcome in the subsequent construction (e.g. find the shortest segment between two smooth surfaces, building a cylinder around it and filleting it with the two surfaces, this is an effing nightmare to do within the confines of OpenSCAD) - Last but not least: there is no native constraint solver in OpenSCAD, neither in the language nor in the engine (unlike - say - SolveSpace) I might have misunderstood what you're looking to do, but, yeah, digging deeper feels very much like the right thing to do.
- JoshTriplett 7mo agoImpressive work! Minor nit: why does the rendered in-window text use a really awful pixelated font? It looks like what happens when a font gets rendered onto a pixel grid without any hinting or snapping.
- dfox 7mo agoIt uses exactly the same font in the desktop version, and is probably entirely intentional.
- JoshTriplett 7mo agoI assumed it likely looked like the desktop version, and that was exactly what was motivating my question.
- ruevs 7mo agoIntentional indeed. It is GNU Unifont - a 973KiB file that covers practically all of Unicode. In a bitmap font, platform independent, self contained, small. Practically all that SolveSpace strives to be. https://www.unifoundry.com/unifont/index.html https://www.unifoundry.com/unifont/index.html Perhaps I've been using computers for too long but I actually like the non anti-aliased "sharp" and "pixely" look :-)
- JoshTriplett 7mo agoPixelated can sometimes look okay on screens it was designed for. But I think the pixelated look improves with hinting that helps snap it to stroke widths, rather than randomly jumping between 1 and 2 pixels depending on how it happened to line up with the pixel grid. This is what it looks like on my screen: https://imgur.com/a/YeAdiXC https://imgur.com/a/YeAdiXC A good pixel font would be a vast improvement over this, though I'd still prefer something that scales well (and respects the DPI of my screen, and isn't too small compared to the menu font...).
- ruevs 7mo ago
- mandarwagh 7mo agoCrazy
- mclau153 7mo agoonShape does this already
- ruevs 7mo agoBut does it run etirely locally in the browser after downloading a total of 2993991 bytes (less than 3 megabytes) of code? ;-)
- phkahler 7mo agoLocal storage too. We don't want your data. That 3MB also includes gnu unifont, the builtin vector font, and the 3js viewer for when you export models to html (viewer gets bundled in the file)
- ruevs 7mo agoGNU Unifont is 973KiB, and we also have the vector font unicode.lff.gz at 1.03MB. So the web version of SolveSpace is literally one megabyte of WebAssembly.
- maxglute 7mo agoReminds me of installing Autocad from 1 x 5.25 floppy.
- contingencies 7mo agoAhh, but can it do a clean self-reversing diamond thread including the reversing portion? See https://news.ycombinator.com/item?id=47580583 https://news.ycombinator.com/item?id=47580583
- ruevs 7mo agoHad to Google this one :-) Since SolveSpace has a helix tool that can "extrude" any sketch along a helix it should be doable.
- contingencies 7mo agoPerhaps if the author makes a demo it would be a good showcase for how much better it is than the other open source tools!
- phkahler 7mo agoAfter looking at some videos of what this even is, I'd say it can do it but will likely fail on the boolean operation where the two spirals intersect. It might work fine but it's an operation likely to trigger a bug, and it would be sensitive to the exact placement/pitch of everything. Having said that, using the "force to triangle mesh" option solvespace will probably work fine. That should be sufficient for the home 3D printing crowd to make some fun stuff, but you won't be able to save a STEP file then. Just my guess as to how this might go.
- contingencies 7mo agoThanks for sharing your insight.
- ecto 7mo agoHere's my take on CAD in the browser! https://vcad.io https://vcad.io I implemented a full kernel in rust and compile it to wasm https://github.com/ecto/vcad https://github.com/ecto/vcad
- phkahler 7mo agoDoes that handle NURBS? It says STEP import, but not export?
- latand6 7mo agoSo I can ask an LLM to write rust code to generate CAD designs???
- marshray 7mo ago> Could not locate file: "https://huggingface.co/campedersen/cad0-mini/resolve/main/onnx/model_quantized.onnx https://huggingface.co/campedersen/cad0-mini/resolve/main/on..."
- coderenegade 7mo agoDoes this use a boundary representation for the geometry?
- throwup238 7mo agoWhat strategy are you using for tolerances, compounding errors, and the nuances of floating point math?
- deleted 7mo ago[deleted]
- GorbachevyChase 7mo agoI’ve wondered how feasible it would be to start building browser-based CAD/design products to replace our expensive and poorly supported paid plugins and niche products. Seems promising!
- henrebotha 7mo agoSo stoked to see the movement on this project. Once lofts are possible, it'll be so over for FreeCAD
- jLaForest 7mo agoChambers aren't available so I wouldn't hold you breath waiting for lofts
- 4gotunameagain 7mo agoJust curious, why are you so excited for the demise of FreeCAD ? Has worked quite okay for me thus far for semi professional & hobby projects
- Jaco07 7mo ago[flagged]
- Chilko 7mo agoThis comment gives astroturfing vibes, like an LLM optimised version of masonhensley's comment: https://news.ycombinator.com/item?id=47587834 https://news.ycombinator.com/item?id=47587834
- fps-hero 7mo agoOr simply that Solvespace is a fantastic tool for 2D work? The sketcher is amazing and it has a straight forward workflow for laser cutting. Draw your panel, export to SVG, adjust in Inkscape (cut lines, etches, fills), send to cutter. I'd argue Solvespace is the best free and open source tool for the purpose. This is exactly what I use it for and I love it. I even use it for front panel decals, not just the laser cut panels. Something about laying out graphics using a CAD tool is really appealing. I need the dimensions tools! I struggle getting things accurately placed using Inkscape. Another 2D use case is a simple parametric sketch pad. If I need to draw something up quickly and pull measurements, this is the tool I'm reaching for. It falls down a bit in 3D because unless you're making a very straight forward blocky shape, it's either too cumbersome, or literally impossible to make the geometry you need. If the geometry could be made on a 3-axis CNC, Solvespace should be capable of making it. Anything else, I'm reaching for Fusion360. I've been meaning to give Freecad another crack as the UX seems to finally be getting some priority.
- masonhensley 7mo agoOh weird. I definitely did not do this for the record.
- somat 7mo agoI love solvespace, it is hard to describe but despite it's limitations and problems (and there are many) it feels joyous to use if that makes sense. Something about it's simple and straightforward interface just makes it fun. To the point that my biggest gripe is the modal dialogs that pop when a constraint is deleted or it's conditions cannot be met. It is quite awkward compared to the rest of the workflow. Anyhow, salutes to the author of this web port, very slick.
- phkahler 7mo ago>> Anyhow, salutes to the author of this web port, very slick That credit goes to whitequark, who quit solvespace maintainership in 2020. The branch lingered and suffered some bit-rot. Then a couple people brought it up to date and fixed a few issues. It seemed like a good idea to merge it to prevent it falling behind even though its not quite up to par with desktop. With the newest release we also opted to put this right on the site (even merged a PR today as a result). Anyway we owe whitequark most the credit for this one even though we havent heard from her in several years.
- gouggoug 7mo agoI recently got into 3D printing and, of course, after seeing countless ads on YouTube for OnShape, that was my first choice. Anyone having used both can share their thoughts about how solvespace and OnShape compare? On my end I’ve been loving OnShape and find it pretty intuitive. I also tried fusion360 but closed it after 5 minutes, it felt too sluggish.
- landsman 7mo agoImpressive
- __natty__ 7mo agoLooking at stream events, the event type is so long and often repeated for each event with little extra payload it could be potentially easy win for Anthropic to optimize system bandwidth by using shorthands. > {"type":"content_block_delta","delta":{"text":" search"}}
- ruevs 7mo agoOne more fun fact: SolveSpace officially is supported on Windows (Vista-11), Linux and macOS, and compiles with Emscripten and runs in a browser. However with a little effort it also compiles for and runs on Windows 2000. https://github.com/solvespace/solvespace/issues/1036#issuecomment-3405830198 https://github.com/solvespace/solvespace/issues/1036#issueco... So it runs on all the majour platforms from the last 26 years (excluding MacOS 9).
- ruevs 7mo agoOne more fun fact: SolveSpace officially is supported on Windows (Vista-11), Linux and macOS, and compiles with Emscripten and runs in a browser. However with a little effort it also compiles for and runs on Windows 2000. https://github.com/solvespace/solvespace/issues/1036#issueco https://github.com/solvespace/solvespace/issues/1036#issueco... So it runs on all the majour platforms from the last 26 years (excluding MacOS 9).