Run OpenSCAD in your browser - no install required

OpenSCAD online tools are useful when you need an OpenSCAD web editor with no installation: a work laptop, a Chromebook, a tablet, or a friend's PC. This page is the writing space - test a snippet, tweak a module, paste generated code, or build a small parametric part directly in the browser.

That's what this playground is for. The full OpenSCAD engine runs in your browser via WebAssembly. You get a code editor, a live preview you can orbit, and one-click export of both your .scad source and a rendered STL. No account, no queue, no server-side rendering - the same engine that powers the desktop app, running on your hardware.

Just need to preview an existing file? Try the OpenSCAD Viewer instead.

What you can do here

Write code from scratch or paste in an existing script. The editor ships with a small sample so you can hit Render and see the pipeline work before writing a line. Typical uses:

  • Testing a module or snippet before adding it to a bigger desktop project.
  • Tweaking parameters on a downloaded .scad file when you're away from your main machine.
  • Learning OpenSCAD basics - primitives, translate, rotate, difference, union - with instant visual feedback.
  • Rendering quick one-off parts to STL: spacers, washers, simple brackets, test cubes.
  • Sanity-checking generated code from our SVG to OpenSCAD and DXF to OpenSCAD converters.

Privacy: your code stays on your device

Everything renders locally in your browser. Your code is never sent to our servers - relevant if you're prototyping commercial designs or client work in SCAD. The flip side of local rendering: complex models with high $fn values, big minkowski() operations, or heavy boolean trees can take a while on slower hardware, the same way they would in the desktop app. If a render times out, drop $fn, simplify the booleans, and add detail back gradually.

Use BOSL2 and threads.scad in the playground

You can use BOSL2 and threads.scad here without downloading or installing either library. Add the matching include or use line at the top of your code, then render your model as usual.

Click Run in playground on either example to load it into the editor, scroll to the playground, and render it. If you have edited the current code, you will be asked before it is replaced.

BOSL2: shapes, rounded edges, and more

BOSL2, short for Belfry OpenSCAD Library v2, adds ready-made shapes and tools for positioning, rounding, and combining parts. It is useful when you want to build more complex models without writing every shape from scratch.

For example, this code creates a block with rounded edges:

BOSL2/std.scad
include <BOSL2/std.scad>

cuboid([40, 25, 10], rounding=2, $fn=32);

Paste the example into the editor and render it. Change the three dimensions to resize the block, or adjust rounding to change its corners. The playground loads BOSL2 when your code references it.

Explore the BOSL2 documentation for more shapes, examples, and modeling tools.

threads.scad: create screw threads

Ryan Colyer’s threads.scad library provides tools for making threaded parts and matching screw holes. You can set the thread diameter, height, and pitch directly in your code.

This example creates a short externally threaded cylinder:

threads.scad
include <threads.scad>

ScrewThread(
    outer_diam=12,
    height=20,
    pitch=2
);

Here, outer_diam sets the nominal outside diameter, height sets the length, and pitch sets the spacing between threads. Dimensions are in millimeters. Printed fit depends on your printer and material, so test a small part before making a complete assembly.

See the threads.scad documentation for matching holes and other thread options.