MakerRepo is an open-source Python library that brings the Manufacturing as Code concept into the Build123D ecosystem. It is designed to have as little impact on your existing Build123D project as possible — add a dependency and a few decorators; your models and workflow stay the same.
MakerRepo is a GitHub-like platform for manufacturing as code. You write Python code to define 3D models with Build123D, push to a Git repository on MakerRepo, and the platform builds your models and hosts the resulting CAD artifacts so you can view and share them.
This repository is the MakerRepo Library — the mr package you add to your project to expose Build123D artifacts to MakerRepo.com (e.g. via the @artifact decorator). The platform’s CI then discovers, builds, and publishes those artifacts.
- Artifacts — Use the
@artifactdecorator to mark Build123D model functions as publishable CAD artifacts. Control options like sample/cover images and export formats (STEP, 3MF). - Customizables (generators) — Use the
@customizabledecorator to define parameterized generators with a Pydantic schema for user-configurable models. - Cached helpers — Use the
@cacheddecorator to tag functions whose outputs can be cached to speed up builds.
- Create a repository on MakerRepo.com.
- Add
makerrepoto your project and use the@artifactdecorator on your Build123D model functions (see Getting Started in the docs). - Push your code — CI runs and publishes artifacts to the web UI.
- MakerRepo Docs — Full documentation, getting started, and concepts.
- MakerRepo CLI — Use
makerrepo-clito build artifacts and run workflows from the command line.
- Python ≥ 3.11
- Build123D ≥ 0.10.0
MIT