v0.7.0 · free and open source

Describe a part in a few lines of code. Print it tonight.

Code2Form renders as you type, weighs the part and checks its gears and wiring before the first layer, then exports STL and 3MF for your slicer. Your .scad files open as they are.

The Code2Form window: a night light in the 3D view, and the agent’s chat floating over it, showing the line of code it changed

The agent’s chat, floating over the view.

One model, three ways in

Codelamp.c2f
// Height of the shade, in mm.
height = 40; // [20:80]
difference() {
  cylinder(h = height, d = 60);
  translate([0, 0, 2])
    cylinder(h = height, d = 56);
}

In code

Short programs in the .scad language. Numbers you mark in a comment get sliders, and the view follows every keystroke.

With the mouse

Add shapes from a toolbar, drag handles to move them, draw a sketch and extrude it in the view. Each gesture is written into the code, one undo step at a time.

By asking

A chat floats over the view and edits the open model live, through your Claude subscription with Claude Code, or an API key.

The watch winder, designed in Code2Form

Thought through.
Then printed.

Scroll to turn it, take it apart, and see what the plan changed.

The watch winder: a tilted drum on a printed frame, turning as the page scrolls
  1. A watch winder for a bedside table.
  2. The drum turns on three 608 bearings, not on the motor.
  3. A 14 to 64 tooth gear gives the motor its margin.

Exploded view

Every part, where it goes.

  • Drum and cushionPLA · TPU
  • 608 bearings22 × 8 × 7 mm
  • Pinion, 14 teethmodule 1.5
  • Back plate and baseno supports
The watch winder’s parts sliding apart as the page scrolls

Live, with the agent

“Make the dome 8 mm taller.”

nightlight.c2f
28  // Height of the dome above the top.29  dome_h = 34; // [10:40]30  // Thickness of the dome’s shell.

✓ edit_code · line 29 · rendered, no errors

What the plan changed

torque margin, from 0.77 with the motor alone
9.41
left on the motor’s bushing, from 17.5 N
0.0 N
it can lean before it tips over
37°

Checked before the first layer

Before anything is drawn, the plan thinks the object through as an engineer would: masses, balance, forces, torque. For the watch winder it found the motor short of torque and carrying the watch, and fixed both. Then the design is measured against the brief.

check_brief · watch_winder.c2f
holds mass < 600 g
476.6 g
holds tipping > 25°
37.0°
holds torque margin ≥ 2
9.41
check quiet enough for a bedroom
you

Through the MCP server, in Claude Code: the plan_object prompt.

The watch winder’s sheet of views at one scale: diagonal, front, right, top and a section, 112 × 154.33 × 161.8 mm
The agent’s change under review: line 50 of the code, removed and added, with Decline and Accept

You keep the last word

Every change the agent makes is one undo step, and one button undoes all of an answer. Ask it to wait for you, and each change shows as a diff, the new model over the old one, before you accept it.

Your turn.

Free and open source

MIT or Apache-2.0 · every Mac, Apple silicon and Intel · Windows and Linux from source

Download v0.7.0