Skip to main content

CADbuildr BOM

Bill-of-materials extraction for cadbuildr-foundation assemblies: traverse a component tree into a typed, stable-id parts list.

Installation

pip install cadbuildr-bom

Quick usage

from cadbuildr.bom import extract_bom, bom_to_csv
from my_project.chair import Chair

bom = extract_bom(Chair())
# {"schema": "cadbuildr-bom@1", "root": "chair", "total_part_count": 7,
#  "unique_part_count": 3, "items": [{"id": "leg@beech", "name": "leg",
#  "material": "beech", "quantity": 4, "example_path": "chair/leg_1"}, ...]}

print(bom_to_csv(bom))

What it does

  • Walks Part / Assembly trees (or already-converted PartRoot / AssemblyRoot) recursively through nested assemblies.
  • Groups identical leaf parts by (base name, material) — foundation's auto-dedup suffixes (table_leg_1, table_leg_2) collapse back into one line item with quantity.
  • Emits stable item ids (table_leg, leg@beech). These ids are the enumerator contract for per-part fan-out workflows (supplier sourcing, per-part quoting/CAM/drawings) in the CADbuildr task infrastructure.

Output schema is versioned (cadbuildr-bom@1); breaking changes bump it.

Cloud task

On CADbuildr cloud this library powers the bom@1 task: run it against any project version and the bom.json + bom.csv land in the project's artifact repository. See the platform docs for create_task_run(task_type="bom").

Release files for cadbuildr-bom 0.1.0

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

Source distribution (sdist)

Source distribution for cadbuildr-bom 0.1.0
File Size Uploaded
cadbuildr_bom-0.1.0.tar.gz 54.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cadbuildr-bom 0.1.0
File Interpreter ABI Platform
cadbuildr_bom-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 61.0 kB

Release files / cadbuildr_bom-0.1.0.tar.gz

Download URL cadbuildr_bom-0.1.0.tar.gz
Size 54.4 kB
Tags Source
SHA-256 checksum
How to use checksums
53d2ed1b3a7850f4df2dca7ea2764ef0949cf99c16609f487904205fccd7d0d1
BLAKE2b-256 checksum
How to use checksums
c9a52a5c4b2cff65c713182def807cb301945ec8bf7ef9488cefb21f7e8d9142
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.19

Release files / cadbuildr_bom-0.1.0-py3-none-any.whl

Download URL cadbuildr_bom-0.1.0-py3-none-any.whl
Size 6.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8c4a3a35f54f21b9b5a17aa626cd3f4bda15f736b7ccde3cbc0da3839dc4222d
BLAKE2b-256 checksum
How to use checksums
0a7052320d772bef6ed0c845a1164ceaf440e13a9761770811899ca44e8cd8d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.19

Release history Release notifications | RSS feed

This release

0.1.0 This release

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