bonsai-impl-project
Bonsai Project Management
Version: Bonsai v0.8.x | IfcOpenShell v0.8.x | IFC2X3 / IFC4 / IFC4X3 Dependency: bonsai-core-architecture (MUST read first) Module path:
bonsai.*— NEVERblenderbim.*
Critical Warnings
- ALWAYS use
ifcopenshell.api.project.create_file()to create new IFC projects. NEVER useifcopenshell.file()directly — it skips required project setup (IfcProject, IfcUnitAssignment, representation contexts). - ALWAYS set units via
ifcopenshell.api.unit.assign_unit()immediately after project creation. An IFC file without a unit assignment is invalid per all IFC schemas. - NEVER describe the Bonsai workflow as "import/export". The IFC file IS the native document.
- ALWAYS use
bonsai.*imports. NEVER useblenderbim.*— renamed in 2024 (v0.8.0+). - ALWAYS check
IfcStore.get_file()forNonebefore any IFC operation. - ALWAYS call
ifcopenshell.api.georeference.add_georeferencing()beforeedit_georeferencing(). Editing non-existent entities raises an error. - NEVER set Eastings/Northings without confirmed survey data. Wrong values place the building at the wrong location on Earth.
- ALWAYS run scripts via
blender --python. NEVER importbonsai.*from system Python.
Schema Selection Decision Tree
More from openaec-foundation/computational-design-day-delft-march-2026
blender-core-api
Guides Blender Python API usage including bpy module structure, RNA data access, context system, dependency graph, and operator invocation. Activates when writing bpy scripts, creating Blender addons, or accessing Blender data blocks programmatically.
1blender-syntax-panels
Defines Blender UI panel creation including bpy.types.Panel, draw() method, UILayout API (row/column/box/split), bl_space_type, bl_region_type, bl_category, sub-panels, draw_header, menus, and UIList. Activates when creating custom Blender panels, building addon interfaces, or working with UILayout elements.
1ifcos-syntax-api
Documents the ifcopenshell.api module system with all 30+ API modules, invocation patterns via api.run() and direct module calls, parameter conventions, and module categorization. Activates when creating IFC entities, modifying properties, managing spatial structure, or using any ifcopenshell.api function.
1bonsai-impl-bcf
Guides implementation of BIM Collaboration Format (BCF) workflows in Bonsai including creating BCF topics, adding viewpoints with camera snapshots, managing comments, importing/exporting BCF files (v2.1 and v3.0), and integrating BCF issue tracking with IFC element references. Activates when working with BCF files, BIM issue tracking, clash report management, or collaboration workflows in Bonsai.
1ifcos-impl-mep
Guides MEP (Mechanical, Electrical, Plumbing) modeling in IFC using ifcopenshell.api.system including IfcSystem, IfcDistributionElement, ports, connections, flow segments, fittings, and MEP-specific property sets. Activates when creating HVAC systems, piping networks, electrical circuits, or MEP elements in IFC models.
1ifcos-impl-cost
Guides IFC cost management using ifcopenshell.api.cost including cost schedules, cost items, cost values, cost quantities, and 5D BIM workflows. Activates when implementing cost estimation in IFC models, creating cost schedules, or linking quantities to cost items.
1