Skip to main content

FastBuild123

A browser UI for build123d models that is generated directly from the code and has two way caching (both of the UI inputs and the code itself) to enable live, responsive updates of the parameters.

Quick start

Try a bundled example with uv:

uvx fastbuild123 demo enclosure

Install in your project:

uv add fastbuild123      # or: pip install fastbuild123

Save this as my_model.py:

from typing import Annotated
from build123d import Box, Part
from fastbuild import App, Range

app = App()

@app.part()
def block(
    width: Annotated[float, Range(20, 200, step=1, unit="mm")] = 80,
    depth: float = 50,
    height: float = 30,
) -> Part:
    return Box(width, depth, height)

Open it in the browser:

fastbuild view my_model.py

The viewer preserves your camera when rebuilding. If a build fails, it shows the error and keeps the last working model.

Parameters

Every parameter needs a type annotation and a default value.

Type Control
float / int with Range(...) Slider
float / int Number input
bool Checkbox
Literal / Enum Dropdown

Use Group("Label") and Desc("Help text") from fastbuild inside Annotated to group controls and add tooltips. Multiple @app.part() functions get a part selector.

Export files for printing/milling/etc

fastbuild export my_model.py block --param width=120 -o block.step

Values are validated against each parameter's Range; output format follows the extension (.step/.stp/.stl).

AI

AI coding agents

Install the bundled skill with API usage and caching guidance:

fastbuild agent-docs --install

Writes to .claude/skills/fastbuild123/ and .agents/skills/fastbuild123/. Re-run after upgrading. Omit --install to print the docs.

Requirements

Python 3.10–3.13 on macOS, Linux (glibc 2.31+, x86-64 or aarch64), or 64-bit Windows. The install is roughly 500 MB, mostly OpenCASCADE. Alpine/musl is not supported.

License

MIT — see LICENSE. Bundles three-cad-viewer (MIT), whose license is included at fastbuild/static/vendor/LICENSE-three-cad-viewer.

Metadata

Release files for fastbuild123 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fastbuild123 0.1.6
File Size Uploaded
fastbuild123-0.1.6.tar.gz 639.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fastbuild123 0.1.6
File Interpreter ABI Platform
fastbuild123-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 1.1 MB

Release files / fastbuild123-0.1.6.tar.gz

Download URL fastbuild123-0.1.6.tar.gz
Size 639.8 kB
Tags Source
SHA-256 checksum
How to use checksums
b8a1e7ab96bcc52532ef0c46ba317ad9de6ea994f44483bc8bf512b02b36655f
BLAKE2b-256 checksum
How to use checksums
93db5e1651334f23f54dead26ee7ff6dbdf5188594a6d316119eaf5dc8ad2ac5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.8

Release files / fastbuild123-0.1.6-py3-none-any.whl

Download URL fastbuild123-0.1.6-py3-none-any.whl
Size 497.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
437f8fe59013105b0365d4ee92e881ad3602b8663864a8a0a14fa5167d79fe9a
BLAKE2b-256 checksum
How to use checksums
4037e3aff634f74fbd2ffa84c5b6504bda98d6411b1c7485a5e41641e6345fb6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.8

Release history Release notifications | RSS feed

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page