Partwright Beta
Open editor →

What’s new

A running log of recently shipped features, newest first. Partwright is moving fast — here’s what’s landed lately.

July 5, 2026

Partwright 1.4 — figures that hold and wear things, and an AI that looks before it plans

Releases

  • Partwright 1.4 — A backward-compatible feature release — existing sessions and exported files all keep working, and the running version is shown in the About dialog. The headline is a full accessory system for the figure API: figures can now hold weapons and tools and wear belts, armor, and jewelry that actually fit. Four new showcase figures join the catalog to prove it out, the ground grid is now on by default, and the AI assistant's plan mode can inspect your session before proposing a plan.

Figures

  • Accessories — figures can hold and wear things — The figure API gained a whole attachment layer: body frames (neck, waist, shoulders, back, forearms) plus placement verbs for bands, straps, hanging pendants, and glasses. Garments and armor conform to the body part they belong on — a belt wraps the waist without bleeding onto the arms, a vambrace hugs the forearm, and a necklace drapes with gravity. It's all ordinary model code, so every accessory stays parametric and re-poseable.
  • One-line grasping that works on the first try — Writing "a person holding a sword" used to take wrist-roll math and per-figure tuning. Now F.grasp(prop, rig.grip.R) places the prop in the curl of the fingers, auto-flips for either hand, and a holds: 'up' hint on the arm pose aims the blade — two intent-clear lines and the grip is right. A graspProbe helper lets model code (or the AI) verify the grip before rendering.

Catalog

  • Knight, Scholar, Noble Lady, and Lumberjack — Four new figure entries built to showcase the accessory system: an armored knight gripping an upright sword (plate cuirass, pauldrons, and vambraces included), a scholar, a noble lady with a jeweled collar and draped pendant, and a flannel-clad lumberjack holding a vertical axe.
  • A leaner figure shelf — Twenty-one defective or redundant figures were retired from the catalog, so what remains is the curated, quality-checked set.

AI assistant

  • Plan mode can look before it plans — With Plan first switched on, the assistant used to draft its plan blind — it had no tools at all until you approved. Planning turns now get read-only access: it can read the current code, session notes, version history, and geometry stats, and render snapshots if vision is enabled, so the plan is grounded in what's actually in your session. Anything that mutates — running code, saving versions, painting — stays locked until you approve the plan.

Studio

  • Grid on by default — The XY ground-plane grid — which scales with your model — is now on in new sessions, so parts read at a glance against a real sense of scale. Toggle it off from the viewport toolbar as before.
June 24, 2026

Partwright 1.3 — chibi pets, painted patterns, and ~3× faster figures

Releases

  • Partwright 1.3 — A small, backward-compatible feature release — existing sessions and exported files all keep working, and the running version is shown in the About dialog. This update adds a parametric chibi cat and chibi dog with colorway presets, a new algorithmic-pattern paint API, and a roughly 3× speed-up on figure rendering.

Catalog

  • Chibi cat & chibi dog — parametric, with colorway presets — Two new figure catalog entries, built on the same paramsSchema system as the rest of the figure library. Pick a pose, build, and colorway — siamese, calico, tabby and tuxedo points for cats; brindle, dalmatian and more for dogs — and remix any preset by tweaking individual sliders. The cat's face also got a polish pass: cream muzzle, ω-shaped mouth, and flatter eyes framed by figure-API eyelids that no longer protrude.

Painting

  • Algorithmic colorway patterns — stripes, spots, patches, gradients — A new api.paint.pattern(...) call lets model code declare procedural colorways instead of painting them by hand: stripes, spots, patches, and gradients render at runtime, so tabby cats and brindle dogs stay crisp at any zoom. Patterns can be scoped to a label or to a regional predicate (above/below a Z height, inside a sphere, …), and they render live as you edit.
  • Cleaner paint at edges, smoothed brushes, and concave regions — Three fixes to the painting pipeline that mostly show up on smoothed and figure-shaped models: smoothed-edge brush strokes no longer leave bright sliver streaks along the seam, api.label underlays now stay covering the mesh across incremental strokes (no more peek-through), and concave-footprint paint regions no longer leave buried triangles unpainted.

Performance

  • ~3× faster figure rendering — The figure SDF compiler now flattens distance functions into straight-line JavaScript instead of walking a tree on every sample, cutting figure evaluation time to roughly a third. The Character Creator preview, model bakes, and live edits on figure models all feel noticeably snappier.
June 21, 2026

Partwright 1.2 — the AI paints images onto your model, and a grid that scales to your room

Releases

  • Partwright 1.2 — A small, backward-compatible feature release — your existing sessions and exported files all keep working, and the running version is shown in the About dialog. This update teaches the in-browser AI to paint real images onto a surface and makes the viewport grid scale with your model.

AI assistant

  • The AI can paint an image onto your model — The in-browser assistant can now project a raster image or SVG — a logo, label, or decal — straight onto the model surface, instead of approximating it with flat color blobs. Point it at a named view (front, back, left, right, top, bottom) and it finds the surface for you, or name a painted part and the decal centers and sizes itself to fit. Ask for “put this logo on the front” and it just works.

Studio

  • A grid that scales to your model — The ground grid used to be a fixed patch — too small under a large model and oversized under a small one. It now tracks the size of your model and the studio room, like the floor does, and respects the grid-density setting in Advanced Settings so the cells stay readable at any scale.
June 21, 2026

Partwright 1.1 — the Character Creator, session attachments, and directional surface textures

Releases

  • Partwright 1.1 — A backward-compatible feature release — your existing sessions and exported files all keep working. The running version is shown in the About dialog; this update bundles the new Character Creator, typed session attachments, directional surface textures, and a redesigned color picker.

Figures

  • Character Creator — build a figure with no code — A new no-code panel drives the whole figure system through a GUI: pick a body build, face, hair, garments and footwear with live controls and an instant preview, and Partwright writes the model code for you. The fastest way yet to go from idea to a printable character.
  • Faster, truer figure previews — The Character Creator preview cancels an in-flight render the moment you change a control, so dragging a slider stays responsive, and the fast SDF preview now shows the model’s estimated colors — including painted catalog figures — instead of a flat gray shape.

Sessions & attachments

  • Typed session attachments — Reference images are now first-class “attachments” you can label by type and annotate with a description, so a session can carry the photos, sketches, and notes a design was built from. Attachments now survive a page refresh and come through correctly on import.
  • Parts pane on mobile — The editor’s Parts list is now reachable on phones through the pane toggle, so you can switch between a session’s parts without a desktop-width screen.

Modeling & surface

  • Directional surface textures — api.sdf.tube — A new SDF helper sweeps flutes, rings, or a helix along a path, so you can add grip ribbing, decorative reeding, or a spiral straight in code — the texture follows the tube instead of being stamped flat.
  • New designs start in millimetres — New sessions now default to millimetres instead of unitless, so dimensions and exported files line up with real-world print sizes out of the box. You can still switch a session to another unit (or back to unitless) at any time.

Painting & color

  • A redesigned color picker — The browser’s native color inputs are replaced everywhere by a shared palette modal — pick from your filament palette or a custom swatch in one consistent dialog, with proper keyboard focus handling.
  • Recolor a whole part at once — The paint menu’s Labels list can now set an entire part’s color in one click, instead of repainting region by region.
  • Stamp a reference image with AI — paintImage — The assistant can place one of your attached images onto the model as a decal from a named view (front, side, top…), so you can ask it to apply a logo or pattern and have it projected onto the surface for you.

Studio & publishing

  • Studio lighting — Studio lighting and a soft ground shadow give the viewport a rich, lit look by default, with an explicit “Light” toggle so you can switch to a fast, flat view whenever you want.
  • AI-assisted publishing — When you publish a model, the assistant can auto-populate a title, description, and tags for you, so a design is ready to share with a single review pass.
  • Pick your exact Bambu printer, nozzle, and filament — Multi-part 3MF export now targets any of 14 Bambu Lab printers — single- and dual-nozzle — with a nozzle-size and filament-type picker, so the exported project opens with the right machine profile and bed instead of a one-size-fits-all default.
June 14 – 20, 2026

Partwright 1.0 — multi-part & multi-color export, a big figure expansion, and pinned version URLs

Releases

  • Partwright 1.0 — Partwright reached its first tagged release. The running version is shown in the About dialog, and every release from here on is semantically versioned (vX.Y.Z) so you can tell at a glance whether an update is a routine fix or a bigger change.
  • Pinned version URLs — The site root always serves the latest version (the usual /, /editor, /catalog…). Each major version is now also reachable at its own path — e.g. /v1/editor — which stays frozen even after a newer version takes over the root, so a link you pin keeps working. /current/ is a stable alias that always points at the newest.

Export & printing

  • Export every part at once — A session with several parts now exports them all together — to 3MF, STL, OBJ, or GLB — instead of one part at a time.
  • Multi-plate Bambu / Orca layout — Multi-part 3MF export lays your parts out across printer plates with their filament colours preserved, arranged to fit the bed, ready to open in Bambu Studio or OrcaSlicer.
  • More than three colors — Color export is no longer capped at three filaments — every distinct color in a model is exported to its own filament, and hand-painted per-triangle color carries through to the slicer.
  • Don’t lose unsaved work on export — The export dialog now warns when any part — including parts you’re not currently looking at — has unsaved or never-saved changes, surfaces printability issues right in the confirm step, and can jump you straight to a save chooser so nothing ships stale.

Figures

  • Many more ready-made figures — The catalog gained 20+ full-body figures showcasing the figure builder, plus ear-showcase busts — all baking as clean, single printable pieces.
  • More expressive faces — Figure faces got richer noses with a properly sculpted, projecting form (and a cleaner nostril carve), named lip-shape presets, preset-driven eyebrows that track the eyes, and an elf-ear option with an adjustable point and tilt.
  • More varied bodies — New body controls include a native belly knob, a maternity build with a cradle pose and dress for expectant figures, and areolae/nipples that seat flush and paint cleanly across slim, muscled, and fuller chests.
  • Smoother, faster figure preview — Figures now render progressively — a coarse pass appears almost immediately and refines to full detail — so posing and tweaking feel responsive instead of waiting on a single slow render.

Garments & footwear

  • Conforming and draping garments — Figures can wear front/back-panel garments — apron, bib, tabard, cape — that either conform to the torso or drape from it (with apron ties and adjustable thickness), and dress/robe skirts now reliably cover the legs and chest instead of leaving gaps.
  • Footwear that fits the foot — Shoes and boots are now derived from each figure’s bare foot via an SDF offset rather than a generic last, so they fit without heel jut or club toe, and a lifted (plantarflexed) foot gets a flat sole instead of a bubble.

Editor, paint & AI

  • Cancel a slow render — The render Cancel button is now wired up from the moment a deep-linked model starts rendering, so a heavy model opened from a link can be interrupted instead of locking the view.
  • Smoother painting — After a smooth stroke the mesh no longer needlessly re-subdivides on every subsequent paint, and the paint refine modal offers a one-click “turn off edge smoothing” tip when it would give cleaner results.
  • AI can target any part — The in-app AI can now address parts by name, id, or index — not just whichever part is selected — and the advisory triangle budget was raised to 500k for more detailed models.
June 12 – 13, 2026

Diverse figures, footwear and expressive faces, plus editor and viewport polish

Figures

  • Diverse figures — skin tones, faces, and hair — The figure builder gained diversity axes: a range of skin tones, face shapes, and hair styles (including cornrows and locs). Ready-made catalog figures were diversified to match, and each bakes as one clean printable piece.
  • Footwear — shoes and boots — A clothing.shoes / clothing.boots builder gives figures real footwear, with soles that follow the foot’s curvature (welt or flush styles), a paintable sole, and an F.standOn / F.ground helper to stand a figure level on a surface. A new “Sneakers Character” joins the catalog.
  • Expressive eyes — Figure eyes now read as a recognizable layered iris and pupil painted onto a smooth eyeball, instead of raised beads, with smoother eye meshing across all the figures.
  • Eyelids — Eyes gained paintable eyelids that wrap the eyeball — two independent lids (upper and lower) you can dial from open to a slit to fully closed, plus named presets (upper, hooded, half, closed, almond, tapered). The catalog figures now wear lids suited to each character.
  • Headwear and richer hair — F.placeOnHead positions headwear, and the hair system expanded with new styles — a tousled mop, a face-framing afro, and Bart-style spikes — plus a printable relief texture.

Editor

  • Editor settings menu — A ⚙ settings menu adds font-size and line-number controls, and a line-wrap toggle landed in the editor header.

Viewport & UX

  • Smoother panels and steadier camera — The AI panel and code pane now slide open and closed instead of snapping, and the AI panel steps aside when you open a viewport tool. Opening the Customizer or applying a surface modifier now keeps your current camera angle instead of resetting the view.

Export

  • Set units inline on export — The export warning modal now lets you set the model’s units right there, instead of cancelling out to change them first.

Catalog

  • Catalog refresh — Eight catalog models were redone with richer colors, paint, and surface textures.

Voxel & API

  • Voxel rounding from the console API — setVoxelRounding / getVoxelRounding were added to the window.partwright console API, so agents can drive voxel edge rounding the way the UI does.

Reliability

  • Recover from stale deploys and stuck AI turns — The app now recovers from stale-deploy chunk-load failures instead of spinning forever, and the AI assistant recovers from tool-call timeouts and orphaned tool history rather than wedging the chat.
June 8 – 12, 2026

Pose-able figures, Tinkercad-style Arrange mode, scoped textures, and engraving

Figures

  • Pose-able humanoid figures — A new figure builder (api.sdf.figure) generates smooth, single-piece humanoid characters from a rig you pose joint by joint — arms, legs, head, hands — using one consistent vocabulary. A dozen ready-made figures (ballerina, warrior, rocker, wizard, and more) join the catalog as starting points.

Arrange & assemble

  • Tinkercad-style Arrange mode — Insert primitives from the palette, then drag, rotate, resize, align, group, and boolean them right in the viewport. Snap-to-grid, group-centroid pivots, a shift-drag marquee, and full undo/redo make assembling multi-part models direct and forgiving.

Surface textures

  • Scope a texture to part of a model — Surface textures (knit, fuzzy, knurl, voronoi, …) can now be confined to a named region or an area you click, instead of always covering the whole model — so a grip is knurled while the rest stays smooth.
  • Engrave and emboss text or images — Carve or raise text and image artwork onto any surface, including wrapping it around curved faces. The heavy carve runs off the main thread with a live progress indicator and a Cancel button.
  • Machinist-diamond knurl — The knurl texture gained a pyramid profile — straight-sided machinist diamonds — alongside the original rounded bumps.

Printing & transforms

  • Non-destructive parametric scale — Resizing a manifold-js model now keeps it parametric (wrapping the source in a scale) instead of baking it to a fixed mesh, so you can keep editing the original code afterward.
June 7, 2026

Voxel rotation, print-ready AI, voice input, and remembered views

Voxel

  • Rotate voxel models — Voxel code gained a rotate() operation for 90° turns on the lattice, so you can reorient a voxel build along any axis without rebuilding it cube by cube.

AI assistant

  • 3D-printable mode — A new 3D-printable toggle feeds the assistant FDM design guidance — wall thickness, overhangs, and bed-friendly geometry — so the models it builds come out print-ready. On by default.
  • Voice input — A mic button in the AI panel lets you dictate prompts instead of typing them.

Sessions

  • Remembered camera view — Each session now remembers its working view, so reopening a model frames it the way you left it instead of resetting the camera.
June 5, 2026

Filament palettes, the Self-Modeling Studio, and a searchable catalog

Filament palette & multi-color

  • Filament palette manager — A standalone palette manager opens from a new 🧵 Palette pill in the viewport: define your printer’s filament slots, reorder or reset them, and constrain new colors to the palette. The paint panel keeps a live swatch row, a custom-color picker, and an over-budget badge (colors used vs. slot capacity), with a “Manage…” link into the full editor — edits propagate everywhere live.
  • Slot-aware painting — Painting with a slot stamps each region with a stable slot id, so a multi-color model maps cleanly onto a printer’s AMS/filament slots — recolor a slot and every region on it recolors at once. Multi-color 3MF export now orders its materials by slot so the material index follows AMS slot order, and the export step warns you when a model is over palette budget or when exporting to color-less STL.
  • Build a palette from a photo — Import palette colors straight from an image: the manager auto-detects the dominant colors and gives you a click-to-eyedrop canvas to pick exact filament colors from a screenshot. A “Recent colors” history keeps colors you’ve used so you can re-add them as slots.
  • Reconcile a model against the palette — A “Colors in this model” view tags every color as on- or off-palette and offers Replace (swap to a palette or recent color), Merge (collapse one color into another), and Apply-palette auto-match (snap every color to its nearest slot). Save, switch, rename, and delete named palette collections for different printers or projects.

Self-Modeling Studio

  • Photo → multi-view → 3D — A guided Studio (Import → “Photo → 3D”) turns a single photo into a model: upload a source image, generate a turntable of alternate angles with a Gemini image model (or upload the angles by hand), curate the tiles, then either carve a voxel model from the silhouettes or hand the angle set straight to the AI modeler. Cardinal / Isometric / Full angle-set presets pick how many views to use.
  • The AI reads your reference images — The assistant can now pull in attached images as a single labeled grid, so the Studio’s reference angles — and any photos you attach — actually feed the AI’s vision when it models for you.

Catalog

  • Searchable, filterable catalog — Both the /catalog page and the in-editor catalog overlay gained a search box and per-language filter pills, so you can narrow a growing gallery by keyword or by modeling language. A new curated “Fidget Toys” group leads the catalog.
  • Print-in-place fidgets — The spiral fidget cone is now a real print-in-place mechanism — a cone split by a helical slab into two interleaved ribbons that twist apart straight off the bed, with a built-in clearance gap.

Painting & editor

  • Wrap tolerance stops paint at sharp edges — The paintbrush gained a “Wrap tolerance” slider (0–180°, default 90°): a stroke crosses an edge only when the two faces bend by no more than the tolerance, so paint flows over gentle curves but stops at a sharp fold instead of bleeding onto an adjacent face or the next wall of a hollow part.
  • Starters you can experiment with — The JavaScript, OpenSCAD, and BREP starters are now capability samplers — a row of primitives, booleans, and operations to poke at — and the voxel starter is a layered pine tree with ornaments and a star. The Quality panel’s curvature preview also gained an explicit Apply button.
June 4, 2026

Fabric textures, image paint, region-targeted modifiers, and a catalog refresh

Surface textures

  • Fabric & knit textures — A new family of surface modifiers wraps a model in stitched fabric: V-strand knit (stockinette), cable knit, waffle stitch, fur / velvet, and woven fabric. The displacement follows the surface via UV unwrapping — BFS triangle unfolding, with LSCM and harmonic-field layouts for cleaner whole-mesh maps — and runs on a WebGPU compute shader where the browser supports it. A mesh-detail slider trades triangle count for fidelity, and the textures are available to the AI assistant too.
  • Apply modifiers to part of a model — Every surface modifier — fuzzy skin, smooth, voxelize, and the new fabric textures — now takes a click-to-select flood-fill region selector, so you can texture just one area. Additive multi-region selection, a color-sensitivity control, and triplanar blending round out a redesigned selector UX inside a draggable Surface panel.

Painting

  • Image paint — Project an image onto the model surface as color regions: click to stamp it where you point, with a hover preview, rotation, and a smooth (stamp-then-refine) mode that subdivides the footprint so the picture conforms to curvature. Alpha-channel flood fill drops the background, and SVG inputs stamp at full vector quality.
  • Smarter color bucket — The bucket now walks and persists the real connected region, with a live flood-fill preview that tracks the tolerance slider. Region selection uses an explicit Preview button instead of auto-previewing on every click.

Catalog

  • Catalog quality pass — Redesigned 8 catalog entries and colorized 6 more, added 5 voxel creatures, and shipped five new models — a chain, a hot dog, a voxel castle, a watchtower, and a retro TV.

Viewport & rendering

  • Reset view & zoom limit — A reset-view button returns the camera to its default framing, and a zoom-out limit keeps a model from shrinking away into the distance.
  • Cancel long renders instead of timing out — Heavy renders no longer hit a hard execution timeout — they run until you cancel them with the Cancel button, so a slow-but-valid model finishes instead of being killed. Out-of-memory failures in the manifold-js engine now surface a clear hint instead of an opaque crash.
  • Mesh-quality knobs — The Quality panel’s simplify / enhance controls gained edge-length and size-threshold knobs for finer command over triangle reduction and refinement.

Diagnostics

  • Worker health & engine memory — The diagnostics log gained a worker-health panel that surfaces the geometry Worker’s state and each engine’s WASM heap usage. Disconnected-component results now also raise a transient warning toast.

Reliability

  • Resilient sessions — The geometry Worker now recovers automatically after a fatal WASM fault, autosaved drafts clear on save (with a warning if you save error-state code), and paint, annotations, and parameters survive switching between parts. SCAD parts cache their mesh so flipping between parts skips a recompile, and Customizer number fields can now exceed their declared min / max.
May 31 – June 3, 2026

Multi-file OpenSCAD, unified viewport panels, and instant static pages

Modeling & editor

  • 3D text in JavaScript (api.text) — Build raised or cut lettering directly in a manifold-js session with api.text() and api.textSection() — no need to drop to OpenSCAD for a label. OpenSCAD’s own text() primitive now works too, backed by the Liberation Sans font family loaded into WASM.
  • Resize panel — A new ⇲ Resize tool in the viewport overlay scales a model along X / Y / Z with independent or uniform sliders, a typeable exact size, an optional “preserve colors” pass, and a live preview before you commit a new version.
  • Find / Replace in the editor — A Find/Replace control in the editor header for quickly searching and rewriting code.

OpenSCAD multi-file

  • Companion files for multi-file SCAD — Import a .scad file that pulls in your own include <…> / use <…> dependencies and Partwright detects the missing files (by actually compiling), then prompts you to supply them. Companion files get their own editable, syntax-highlighted tabs and persist with the session.
  • Two-phase preview & cancel — SCAD renders show a fast preview first, an elapsed-time status bar while the full render runs, and a Cancel button so a long compile never traps you.

Painting

  • Color-based bucket & new Replace tool — The Bucket tool can now flood-fill by color as well as by geometry, and a new 🔄 Replace tool swaps one color for another across every matching region at once. Slab is now the default paint surface (and works with spray).
  • Projection paintbrush & no more editor lock — A projection-based paintbrush with BVH-accelerated picking and a faster smooth-brush commit. Painting no longer locks the code editor — it stays fully editable, and version history is your rollback path.

Viewport panels

  • Unified, draggable overlay panels — The Quality, Resize, Surface, and Relief panels now share one set of UX conventions — draggable, kept on-screen (and mobile-friendly), with consistent headers and behavior.
  • Quality panel (was Simplify) — The old Simplify tool is now the ○ Quality panel: it folds curvature quality together with simplify / enhance triangle-count controls in one place.

AI assistant

  • Plan-first mode — A new toggle makes the assistant draft a plan and wait for your approval before it touches the model — you can keep refining the plan while approval is pending. Also fixed a Gemini retry loop on malformed function calls.

Pages & polish

  • Instant static pages — The landing, catalog, help, legal, and what’s-new pages are now pre-rendered as static, app-free HTML — they paint instantly without loading the editor or WASM, behind a unified top header shared across every non-editor page.
  • In-app dialogs everywhere — Native browser alert / confirm / prompt pop-ups are gone, replaced by in-app toasts and dialogs that match the rest of the UI. A “Beta” pill now sits in the landing nav and editor toolbar.
  • Version provenance — Saved versions now record where they came from (their parent version and the operation that produced them), laying groundwork for clearer history.
May 30, 2026

Surface modifiers, Ideas library, and landing page performance

Modeling

  • Surface modifiers — Apply post-processing effects to any model: fuzzy skin adds randomized surface noise (mimicking FDM printed texture), smooth rounds out faceted geometry, and voxelize converts the surface to a cube grid. All three are available from the command palette, the viewport overlay, and the window.partwright API. Paint carries through the modifier via nearest-triangle transfer, and each apply creates an undoable new version with a live preview before committing.

AI assistant

  • Ideas page and in-pane prompt library — A new /ideas page showcases starter prompts and technique ideas. In the AI panel, clicking 💡 opens a searchable prompt library — pick a tile to populate the input without sending. Empty-state chips suggest quick starts when the chat is blank.
  • Printability feedback — The AI now sees printability data (overhangs, thin walls, floating parts, non-manifold status) in its tool responses. The viewport shows a live printability indicator after each successful render.
  • Import confirmation — The AI must now show a confirmation dialog before importing files into a session — you see exactly what it intends to import and can accept or cancel.

Relief Studio

  • Remove background, double-sided, and mirror — Three new import options: automatic background removal (reads the alpha channel when available, pre-quantization RGB otherwise), a double-sided toggle for wall-hung reliefs, and a mirror axis selector.

Settings

  • Advanced Settings overhaul — 30 new configurable fields across AI, renderer, import, and UI — each with a ? tooltip explaining what it controls. The start-fresh / uninstall action moved from the landing page into Advanced Settings.

Performance

  • Landing page speed and stability — The landing page now renders from static HTML before JavaScript loads, eliminating black-screen flash and layout shift on first visit. Skeleton ghost loaders fill catalog and session tiles while data arrives; fonts use fallback rendering to prevent reflow; WASM loads are deferred until the editor actually opens.
May 29 – 30, 2026

AI slash commands, custom endpoints, and auto-continue

AI assistant

  • Slash commands — Type / in the AI chat input to get a pop-up menu of quick commands (keyboard-navigable, floats above the input, only fires when the selection is unambiguous).
  • Custom OpenAI-compatible endpoint — Point the built-in AI at any self-hosted OpenAI-compatible server — llama.cpp, vLLM, LM Studio, and similar — by setting a base URL and model name. The API key is optional; the CSP now passes traffic through to custom origins.
  • Auto-continue (♾) — A new ♾ toggle makes the agent keep working across multiple turns until it explicitly calls a finish tool, instead of stopping at every end_turn. On by default in Standard and Full presets; bounded by the existing iteration and spend caps. Toggle state is remembered across reloads.

Import

  • Import session from URL — Paste a URL that resolves to a .partwright.json and it loads directly — no download-then-upload step. The import target modal (new part / add to current / new session) applies as usual.

Voxel

  • Improved image import — The voxel image-import wizard is now modal-first with a custom palette picker and editable JavaScript codegen — tweak the generated code before it lands in the editor. Repeated voxel groups collapse into compact for-loops automatically.

Branding

  • New voxel-P logo and landing theme — A pixel-art voxel P mark replaces the old logo across the app; the landing page now uses a calmer, studio-style theme.
May 25 – 29, 2026

New modeling engines, image relief, and sharing

New ways to model

  • Voxel engine — A brand-new voxel modeling language — build from cubes, import an image as voxels or load a .vox file, paint individual voxels, and surface the result with rounded edges. Includes cylinder, mirror, translate, and hollow operations.
  • BREP solids (OpenCASCADE) — True solid modeling via replicad: selective edge fillets and chamfers, STEP import and export, plus cone, torus, revolve, shell, and linear/circular patterns. Reach it from api.BREP.* inside a JavaScript session, or switch a session fully to the BREP language.
  • Signed-distance fields (api.sdf) — Model with SDF primitives and combinators, including a TPMS family (gyroid and friends), polarRepeat / repeatN tiling, and smooth boolean blends — great for organic and lattice geometry.
  • Customizer parameters (api.params) — Declare tunable parameters in your code and adjust them from a parameter panel without editing the source.

Relief Studio

  • Image-to-relief wizard — A HueForge-style studio turns a photo into a painted relief, with a guided 2-column wizard, 512px resolution, crop, a live 3D preview, and remembered recents.
  • Stepped relief & tiles — Z-banded stepped relief that prints faithfully on a single nozzle (with an invert-heights toggle), plus flat-color, silhouette, and SVG tile inputs, tile chamfers, and freely-positioned keychain holes.

Painting

  • Geodesic & airbrush tools — A surface-following brush with curvature-adaptive refinement and boundary-conforming edges, plus a dither-spray airbrush that stays on the connected surface.
  • Paint by name (api.label) — Label regions directly in code (JavaScript and OpenSCAD) and paint them by name — and model-declared colors now export to 3MF and OBJ. The palette editor recolors regions in place.

Sharing & sessions

  • Shareable session links — Generate a fully client-side link that opens a read-only preview of your model — anyone can view it and fork it into their own editable session. No server, nothing uploaded.
  • Multi-select parts — Select multiple parts in the rail to bulk-delete or merge them into one, and import external meshes as new parts.

Catalog

  • Dozens of new models — Colored BREP showcases (Robot Buddy, Bird Feeder, pendant lamp, vintage camera, wall clock, coffee mug, lighthouse), BOSL2 OpenSCAD entries, SDF showcases, and new parametric models.
May 18 – 24, 2026

Workspace overhaul, smoother painting, and AI controls

Workspace & layout

  • Activity rail & unified sidebar — The old tab strip became a labeled activity rail, with Workspace and Parts stacked into a single left sidebar and the session switcher moved into the rail header.
  • Docked, resizable AI panel — The AI assistant now opens by default as a persistent, resizable layout column, with the toggle strip tidied behind an Options disclosure.
  • Command palette & shortcuts — Press ⌘K / Ctrl+K for a searchable command palette, and ? for a keyboard cheat sheet. Added OS-aware undo / redo / save shortcuts and faster custom tooltips.
  • Multi-part sessions — Hold multiple objects in one session via an IDE-style parts rail with per-part geometry previews.
  • Versions tab & About dialog — A dedicated Versions tab with thumbnail previews in the session list, plus an About dialog showing build and version info.
  • Editor niceties — Autocomplete for the manifold-js API and a mesh-edge (wireframe) viewport toggle.

Painting & meshes

  • Smooth paintbrush — A smooth brush with adaptive edge subdivision (offloaded to a Web Worker with a Cancel button), a detail slider, and smooth edges for slab and shape painting.
  • Simplify tool — Reduce a model’s triangle count behind an Apply button with a progress bar; the original mesh is preserved when you save a simplified version.

AI assistant

  • Per-session thinking level — A 🧠 control sets the reasoning effort across cloud providers, with a collapsible thinking box for models that expose their reasoning.
  • Upgraded render views — A reworked renderViews replaces the old Views/Elevations tabs, and budget presets gained render-resolution, angle, and notes knobs.

Quality & viewing

  • Ultra quality tier — A new Ultra (1024-segment) preset plus custom segment counts; the quality preset now drives curve smoothness everywhere.
  • Read-only viewer mode — A dim-overlay viewer mode with reliable, reload-based take-control for shared tabs.

Catalog

  • 20+ colorized models — New gallery models across game, medieval, and retro themes, with clean hero thumbnails and a randomized featured catalog on the landing page.
April 2026

Launch & foundations

  • Browser-based parametric CAD — The first releases: a live code editor, a Three.js viewport, sessions with versioning, and GLB / STL / OBJ / 3MF export — all powered by manifold-3d, running entirely in the browser.
  • Built for AI agents — The window.partwright console API (with the legacy window.mainifold alias), session-context notes for resuming work, and the /ai.md agent reference, refined for agent discoverability.
  • Onboarding — A first-visit guided tour, auto-created sessions, and an auto-run toggle so geometry re-renders as you type.
  • Infrastructure — A staging → production deployment pipeline, CSP and security hardening, and social-preview images.
Want to try the latest? Jump into the editor. Open editor