Open Source CAD In The Browser

Some people love tools in their browsers. Others hate them. We certainly do like to see just how far people can push the browser and version 0.6 of CHILI3D, a browser-based CAD program, certainly pushes.

If you click the link, you might want to find the top right corner to change the language (although a few messages stubbornly refuse to use English). From there, click New Document and you’ll see an impressive slate of features in the menus and toolbars.

The export button is one of those stubborn features. If you draw something and select export, you’ll see a dialog in Chinese. Translated it has the title: Select and a checkmark for “Determined” and a red X for “Cancelled.” If you select some things in the drawing and click the green checkmark, it will export a brep file. That file format is common with CAD programs, but you’ll need to convert, probably, if you want to 3D print your design.

The project’s GitHub repository shows an impressive slate of features, but also notes that things are changing as this is alpha software. The CAD kernel is a common one brought in via WebAssembly, so there shouldn’t be many simple bugs involving geometry.

We’ve seen a number of browser-based tools that do some kind of CAD. CADmium is a recent entry into the list. Or, stick with OpenSCAD. We sometimes go low-tech for schematics.

42 thoughts on “Open Source CAD In The Browser

  1. I wish we could see more AAA games in browser. No more wasting time downloading, no more wasting HDD space. Just open URL and play. This will be the future of gaming.

    1. No more wasting time downloading

      It’s only good for simple games. Otherwise you need to download at least title screen, first level, music and all sounds required on first level. Which you can do also for desktop games, but then you have to wait for download of next levels anyway, or download them in background just before finish of first level.

      1. That is assuming you are really doing the compute on the local hardware – which isn’t a certainty. If it is a stream system then in truth you will only ever get the the pre-rendered data shipped to you, so plenty of the game even for levels you are in may never be sent to you at all.

        That said I don’t like the idea much, be it streaming or more download in the background – I just can’t see the point to accepting the limitations that system would create. Modding would probably end up entirely dead, and so many games actively need mods to make them actually good, though in some instances even to make them work at all. The Elderscrolls games for instance would have been long long forgotten for the most part had it not been for the modders.

        1. I cant hit the pause button on a “simple” 4k stream without 3 second of lag on a fiber optic connection

          you want to enter the world where 30ms button lag is considered “on the edge of bad”

          1. As I said I don’t like the idea of browser gaming either way…

            Though I’ve heard from some folks that have tried game streaming services they can work pretty well if conditions are right. Will always be a little more latency than local, but up to a point it doesn’t matter you have added latency. The important bit is it being a consistent latency, as then it won’t really stop you playing or enjoying it – the latency can actually get pretty bad there and while you might well notice initially adapting while its consistent isn’t a major problem.

            In the case of multiplayer games it might actually be a more ‘fair’ latency to add and improve overall latency. As you’d think largely if not entirely it would be eliminating the “game client”-server-“game client” type latency that can be pretty wildly varied and force folks with good connections to suffer (as presumably the servers and game clients would all be effectively Local Area connection or maybe even on the same physical system for even higher bandwidth and lower latency so every gamer gets only the added latency of their own connection).

            But still I’ll never really want to stream or do ‘real’ games in a browser – I personally don’t even like the games you do have downloaded and play locally but required paid online services as a business model. Anything that means you have no control of what you supposedly paid for is just a bad idea as a general rule.

            Also really hard to justify these days – if we happened to be in an alternate world where the portable devices in most of our pockets and bags just didn’t have real computing grunt for whatever reason maybe doing it all remotely makes sense. But when a really low power SOC type device like the mid-high end phones, the Steamdeck or now it seems the new Switch can realistically play modern titles in an acceptably performant way (even when rendering at higher than native resolutions in many cases, at least on the Steamdeck – very little I’ve thrown at it has ever made it struggle at 1080P, and sometimes it will even handle 4K at a stable and playable frame rate for instance)…

    2. Oh… yeah… me too… actually I’d like to be able to eat and sleep in the browser too, no more flavour or quality of life, just open the supermarket URL and subscribe to “basic meal number 4” and “quality sleeping bag beige one size fits all”. This will be the future of living.

    3. The code, maps, sound models and textures would still be downloaded (into the browser storage) or else your graphics card would not be able to display them.

      1. its the broken toilet fill valve for me, I have the part in the garage but meh

        welcome to 2 kids while being in your mid 40’s, what are you doing to find a new job …. everything in my power, my back hurts from cooking fried eggs

    4. No download time?
      The download size of a AAA game is mostly images used to render. You still need that when rendering in a browser. You still need to store it all locally.

      The only difference would be the rendering engine. A browser isn’t as good as a purpose built game engine.
      The assets that are fed into the engine for rendering are the same.

          1. Eh, using symmetry a bunch in sketches is asking for pain even in mainstream CAD programs like SW. While I still sometimes resort to it, it just means intention breaks when you add or remove something. It’s typically better to use symmetry at the feature tree level.

        1. Same for me. It was hard learning FreeCad and even harder leaving Fusion. Like an abusive ex i needed a clean break.

          I found the 1.1 releases much nicer as it allows you to bring in more geometry from external sketches and fixes some (infuriating) problems with assembly. The tradeoff in stability is worth-it for me.

      1. Onshape is in rude health and hasn’t shown any signs of eliminating their free tier in the near-decade I’ve been using it – they tweaked the provided features in the free tier about a year after they launched, and they clearly are happy with it as it stands.

        It also gives them a massive library of searchable designs and parts that they wouldn’t have any other way, so there’s a strong financial incentive for them to keep it around indefinitely.

    1. Onshape is terrible for their UI and their documentation.
      I tried to do a slab with a hole in it and it was hilarious complicated to figure out, their metaphors are awful.
      I would say it’s why it never caught on.

      1. “Is it me that is out of touch? No, it’s the developer who is wrong”.

        Every time someone comes in here complaining about how “X CAD tool has a crap UI and interface semantics” it invariably turns out it’s really “I learned Y CAD tool and X is different and strange and I refuse to accept that I need to put the effort into learning the new way”.

        See also, every Kicad article on here, at least until recently.

        1. That might be true.
          Except for Blender.

          It’s UI truly stinks to heaven.

          Not only does it do things different from other CAD, it does things different from the OS’s presentation layer.
          Ass backward different.

          e.g. the file picker dialog is far far worse than ANY UI layer’s native one (last I used it, it was bugged badly w big directories, unusably laggy, obvious that everything was done in UI thread and was slow AF).
          MacOS 7 or Win 3 style would be preferable, but the sane choice is ‘whatever is native’.

      2. Select a plane, add a sketch, draw a rectangle, draw a circle, dimension and constrain both. Extrude to the height of your slab. Done.

        Same metaphors that have been in use since the 80’s when parameteric CAD was introduced.

  2. If you are looking for a Tinkercad like interface, but would prefer a local version, might I suggest CADoodle (https://cadoodlecad.com/). It is early in development (Version 0.17 dropped 5 days ago) but is already rather impressive. It can export in multiple formats (including STL, OBJ, Blender, SVG and FreeCAD) and can use Blender and OpenSCAD plugins. Written in Java and released under the CC0 1.0 Universal license it runs on Linux, Windows, Mac, and Chrome.

    (Not affiliated with the program, just a satisfied user)

    1. Still better then FreeCAD.

      If you search for any FreeCAD problem, the first 10 results will be:
      ‘How to resolve problem, working around 5 years ago’s bugs.’
      Won’t have any applicable version information or date.
      Of course it won’t work, good chance the workbench referenced no longer exists.

      The thread that solves the problem, working around this years bugs, isn’t obvious.

      No documentation is better than wrong docs.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.