What If Tinkercad Was Self-Hosted?

While we use a lot of CAD tools, many of us are fans of Tinkercad — especially for working with kids or just doing something quick. But many people dislike having to work across the Internet with their work stored on someone’s servers. We get it. So does [CommonWealthRobotics], which offers CaDoodle. It is nearly a total clone of Tinkercad but runs on Windows, Linux, Mac, or even Chrome OS.

Is it exactly Tinkercad? No, but that’s not always a bad thing. For example, CaDoodle can work with Blender, FreeCAD, OpenSCAD, and more. However, on the business end, it sure looks like the core functions of Tinkercad.

The program appears fairly new, so you have to make some allowances. For example, the Linux AppImage seems to have difficulty loading plugins (which it needs to import many of its file formats). In addition, on at least some systems, you have to resize the window after it starts, or it won’t respond. But, overall, it is pretty impressive. The Settings, by the way, has a checkbox for advanced features, and there are some other goodies there, too.

One reason we found this interesting is that we sometimes go into schools, and they don’t want us to have kids on the Internet. Of course, they don’t like us installing random software either, so you can pick your battles.

Tinkercad, of course, continues to add features. Not all of which you’d expect in a drawing package.

11 thoughts on “What If Tinkercad Was Self-Hosted?

  1. Hey there folks! I am the creator of CaDoodle and I am so happy people are hearing about it and using it! After the Tinkercad outage due to the AWS outage, I started noticing CaDoodle getting lots of attention.

    I am always looking to improve this tool, and am especially looking for other Java devs to help out with the slowly growing back-log of issues. If you are interested in helping, or just using, CaDoodle, please consider joining our discord through the link on the main page.

    Feel free to AMA :)

      1. Yes! There are stand alone for linux and windows, but the Mac app security settings prevent any portable applications. You can also configure CaDoodle to pick where the working directory is, so you can save all the students’ work to the flash drive.

    1. especially looking for other Java devs to help out

      I saw this and became interested, but after looking at the code, I have a lot of concerns/questions.

      Why is there a git submodule to BowlerStudio, which appears to be a completely unrelated project?

      Why are there so many shell scripts for building/running/installing when you’re already using Gradle?

      Where are your unit tests?

      I feel like the installer/updater being its own thing in another repo is also a smell, and the associated website being in a third repo, in a different organization. I’d have included all of that in the same project.

  2. I was introduced to tinkercad while trying to introduce 3d modeling to kids. OpenSCAD is clearly a little advanced for trying to teach the fundamentals of 3d space, and Fusion 360 (or any Autodesk software) was prohibitively expensive. Tinkercad was a great idea, and after learning and teaching it, I’ve found myself using it more often than I anticipated. For us the primary downside is the browser-only online environment. There are always trade-offs with anything though.

    I hadn’t heard of CaDoodle before this, and this sounds great–I’m surprised that after being so well-received for what it is that Tinkercad never released any standalone offline versions. We run Debian, so I’ll give CaDoodle a try tomorrow! We have a pc that has windows, but it’s not ideal for us to resort to that, so hopefully we can get the Linux package running reliably. A project like this would really great news for us!

    Thanks for posting, can’t wait to give it a go!

  3. Works with OpenSCAD? I’m interested.

    Being able to assemble some geometric shapes in a tinkercad-like interface and then have it spit out a script for further use would make it a killer app. Being able to flip back and forth would be revolutionary.

    1. Or, here’s an idea (tempted to tackle this one myself):

      Suppose you have a large and complex rubber gasket thing you need to make a replacement for. But printing flexible stuff by itself is a pain, because it needs support.

      So you design the flexible gasket itself here, in this tool. Then you export it as an OpenSCAD script. Then, you mash that script together with some boilerplate to make OpenSCAD build a solid shell around the actual gasket meant to be printed in flexible filament. Then you use the color tagging example presented in https://hackaday.com/2025/10/14/openscad-in-living-color/ to export the solid shell (to be printed in water-soluble PVA) alongside the flexible filament part into separate files for your 3D printer host software. Then you call the octoprint API and get it printing.*

      Tada, this becomes the human interface to a sophisticated 3D print post-processing toolchain that ends at the hotend nozzle.

      *(along the way you might be able to import generated STLs into something like Open3D if you want to run some sanity checks, like if you have enclosed PVA that won’t dissolve, though that python library is a bit flaky)

    2. Well it is sorta like that, but not quite. You can import an OpenSCAD script into CaDoodle, and that script will be copied in as a local file, but still OpenSCAD. You can open the copy from within CaDoodle and continue to tweak the scad, and the CaDoodle steps will be applied to it in sequence. It has a file watcher, so when you save the openscad file, the reloads it in CaDoodle and reapplied all the subsequent steps.

      The file format is a sequence of operations in a JSON file. It would be theoretically possible to generate an OpenSCAD file using the .doodle file as a sequence source. I do not have any plans for that path, but if someone wanted to make it, i’d be happy to help incorporate it!

Leave a Reply to WinstonCancel 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.