Skip to content

v0.5.0 — The Mermaid.js of BIM (Zero-Dependency & Standalone .debim Architecture)

Choose a tag to compare

@PRIDA-TAKON PRIDA-TAKON released this 14 Oct 20:04
· 190 commits to main since this release

🏛️ debim v0.5.0: The Mermaid.js of BIM

"A zero-dependency, pure-Python declarative BIM engine designed for AI Agents, LLM Code Interpreters, and air-gapped sandboxes."


Highlights & Major Changes

1. Zero-Dependency Core Architecture

  • Standard Library CLI: Eliminated typer and rich dependencies in favor of Python's standard library argparse and high-performance pure-terminal ANSI styling (#279).
  • Divergence Theorem Volume Math: Eliminated trimesh dependency by computing 3D watertight mesh volumes directly via divergence theorem vector arithmetic and NumPy array slicing (#277).
  • Pure-Python 2D Geometry Engine (geometry2d.py): Replaced shapely with zero-dependency Shoelace area, perimeter, point-in-polygon, and polygon insetting algorithms (#281).

2. Deterministic Anchor Points & Spatial Orientation Rules

  • Rigorously enforced coordinate anchor positions across all element classes to eliminate AI ambiguity:
    • IfcWall: BOTTOM-START-CENTERLINE ([thickness, height])
    • IfcColumn: BOTTOM-CENTER ([width, depth])
    • IfcBeam: TOP-CENTERLINE ([width, depth])
    • IfcSlab: TOP-FINISH ([thickness])
    • IfcSpace: BOTTOM-PERIMETER ([height])
    • IfcFurniture: BOTTOM-CENTER ([width, depth, height])
  • Enforced standard Z-up Euler angles in radians [rx, ry, rz] (#283).

3. Official .debim File Format & Standalone Loader

  • Full support for the native .debim file extension across all CLI and API commands (#285).
  • Added built-in pure-Python fallback YAML parser (_pure_yaml_parse) capable of parsing debim manifests in bare Python sandboxes without requiring external packages.

4. Complete IfcSpace Support (Room Boundary Volumes)

  • Grid-offset expressions (e.g. GX_1 + 0.10), polygon boundary points, and automated wall insetting.
  • Automated room usable floor area, perimeter, and HVAC air volume QTO calculations (#275).

5. Modular Ecosystem Packaging

  • Core package installable with zero external bloat.
  • Optional compiler plugins organized under extras: debim[ifc], debim[cad], debim[mcp], debim[all] (#287).

Thank you to all contributors and autonomous AI agents for making declarative Building-as-Code a reality!