Skip to content

3D-print softwarePrototype2026

Real CAD for charm bracelets: configure in the browser, export STL for printing or STEP for engineers.

Ø 180.00.STL.STEP
export formats from one model
STL + STEP
export formats from one model
built-in charm shapes
8
built-in charm shapes
print-in-place vertical clearance
0.25 mm
print-in-place vertical clearance
services in the local stack
6
services in the local stack

The problem

What people put up with

Most bracelet generators can only give you a mesh. That's fine for printing, but a maker who wants to edit the design in Fusion or FreeCAD, or a shop that needs exact dimensions, gets a pile of triangles they can't change.

The odd angle

The insight

If the geometry comes from a proper CAD kernel, the same model can leave as an STL for the printer or a STEP file for engineers. Build the bracelet from parametric parts (a male pin, a C-shaped jaw, a link body) and let the tolerance be one number the user can turn.

The approach

How we built it

  1. 1

    Parametric parts in CadQuery

    Each link is a male pin and a female C-jaw on a shared body, scaled by a tolerance multiplier, with 0.25 mm of vertical clearance so the chain prints in place. The links are then arranged in a circle to the chosen diameter.

  2. 2

    Slow geometry off the request path

    Solid modelling can take seconds. Exports go into a Redis queue and an RQ worker builds the model, so the web app never waits on the CAD kernel.

  3. 3

    Built for a campaign

    Accounts, saved designs, Stripe checkout and backer tokens are part of the data model from day one, so crowdfunding backers can redeem their reward straight into an account.

What it does

Features

  • Live Three.js preview with diameter, shape, colour and tolerance controls
  • Charm library: heart, star, cat, moon, D20, sword, pizza and coffee
  • STL and STEP export through a background job queue
  • Import and clean up your own STL charms
  • JWT accounts, saved designs, Stripe checkout and backer-token redemption
  • One-command local stack with Docker Compose

The hard parts

What fought back

Server-side CAD versus a live preview

A real B-rep kernel gives perfect solids but runs on the server, so the preview and the final file are built in different places. That trade-off is the main thing CharmForge taught us. Bracelet Studio takes the other path and runs its geometry kernel in the browser, so the preview and the exported file always match.

What's next

On the roadmap

  • Compare print results against Bracelet Studio's in-browser kernel
  • STEP export for Bracelet Studio's seller tier