Materializr
Open-source parametric 3D CAD for makers — constraint sketches, solid modeling, threads, SVG & text engraving, STL/STEP export. Android, iPad, Linux, Mac, Windows. Vibe coded.
Live parametric OpenSCAD preview
Translation pending
DesignPython · TypeScriptGitHub @SeanOCOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Parametric 3D-printable designs authored with Claude Code. Next.js + WASM web UI for live sliders and STL export. https://stuff.seanoc.com
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
A small collection of 3D-printable parametric designs — mostly
Multiboard accessories — written in OpenSCAD
on top of BOSL2 and
QuackWorks, plus a
Next.js + WASM web UI that renders every model in the browser and
downloads STLs on demand.
Everything under models/ is a single-file parametric design. Pop one
open in OpenSCAD, or visit its page in the web app (see below) to
twiddle sliders and grab a fresh STL.Read the full README ↗3D-printable parts written by Claude Code and previewed live in the browser. Every model is a single-file parametric OpenSCAD design on top of BOSL2 and QuackWorks; a Next.js
The interesting part isn't the models — it's the authoring loop.
.scad, annotates each @param, seeds a
<stem>.invariants.py sidecar (watertight / bbox / single-body
claims), a param-sweep test, and a catalog entry.main.A minimal first prompt worth copy-pasting:
Add a new model: a parametric wall-mounted hook for hanging a bike helmet. Parameters: hook diameter (30–80 mm), mount plate size, Multiboard backer. Annotate with
@param, add an invariants sidecar, add a catalog entry, render thumbnails.
See AGENTS.md for the agent-facing spec (param grammar,
invariants, render pipeline) and app/README.md for
web-app architecture.
Every .scad under models/ ships with a gallery card at
stuff.seanoc.com. The catalog —
category and blurb per model — lives in
lib/models/catalog.ts, which is the single
source of truth (CI fails on a model without an entry, so the site
listing is always complete).
Adapting an externally-authored STL for openGrid wall mounting? Follow
docs/imported-model-opengrid-playbook.md
— the step-by-step recipe (import, snap orientation, supportless
printability, blending, verification) distilled from the
ego_powerhead_mount series.
After cloning:
./scripts/setup-git-hooks.sh # one-time — commit-trailer + pre-commit gotcha
# gate (see docs/dx-precommit.md)
npm install
npm run dev # http://localhost:3000
Render a model directly via OpenSCAD (the project pins engine snapshot
2025.06.12.ai25773 — downloadable from this repo's
openscad-2025.06.12.ai25773 release tag; other builds can disagree
about watertightness, see docs/ci.md):
openscad -o out.stl models/cylindrical_holder_slot.scad
libs/ vendors BOSL2, QuackWorks, and gridfinity-rebuilt-openscad
pinned to compatible commits — newer BOSL2 breaks QuackWorks'
vector-spin syntax. See libs/README.md for the
pins and docs/deps-review-2026-07.md
for the July 2026 dependency review.
Every push and PR runs vitest unit tests and Playwright end-to-end
tests. Model-touching changes additionally run render-thumbnail
regeneration, STL export with per-model invariants (watertight,
single-body, triangle ceiling, PRINT_ANCHOR_BBOX drift), and a wasm
param sweep that renders every model at each parameter's extremes
through the site's real browser pipeline. Renders happen on a pinned
OpenSCAD engine (2025.06.12.ai25773) for watertightness parity. See
docs/ci.md for the full pipeline and the job/trigger
matrix.
models/*.scad) —
(see also models/LICENSE)build123d/holders/cartridge_holder.py) retains CC BY-NC-SA 4.0; it is
excluded from the MIT grant (personal/non-commercial use).libs/BOSL2/LICENSE (BSD-2-Clause) and
libs/QuackWorks/LICENSE (CC BY-NC-SA 4.0).assets/ keep their own source licences
and attribution, including CC BY 4.0, CC BY-SA 4.0, CC BY-NC-SA 4.0 and MIT.
See each directory's NOTICE and the
provenance exception register
for the recorded per-source licences and scopes.build123d/multibuild/tile.py,
build123d/multibuild/fixpoint.py (with
the spool cradle's points presets built from it) and the
MultiBuild-derived reference artefacts in build123d/reference/
(build123d/reference/measured/mb-*) are remixes of Multiboard LTD's
MultiBuild designs. They are licensed only under the non-commercial
Multiboard Licence; see
build123d/multibuild/LICENSE-MULTIBOARD.md.
Other measured artefacts carry their source licence (for example CC BY
4.0), recorded per file in
.Built with Claude Code using a multi-agent authoring workflow.