v0.9.0
moghtech/komodov0.9.0May 27, 2026by Aymericr
AI Summary
This release introduces a node-registry plugin architecture, in-world selection handles, an IFC to Pascal importer, Solid/Rendered render modes, an elevator system, and an expanded material library.
Key Highlights
- In-world selection handles for resizing and moving elements like walls, doors, and elevators.
- Solid / Rendered toggle viewer modes with surface-role clay materials.
- New IFC → Pascal converter package for importing building models.
- Full elevator system with floorplan overlays and cab door controls.
- Node registry and plugin architecture for extensibility.
New Features
- In-world selection handles
- Viewer render modes (Solid/Rendered)
- Six roof accessories (chimney, dormer, etc.)
- IFC → Pascal converter
- Elevator system
- Node registry & plugin architecture
- Stair opening system
- Expanded material library
- Wall-driven auto slab + ceiling sync
- Load Build verification dialog
Full Release Notes
## 🏗️ Pascal Editor v0.9.0 — In-World Handles, Render Modes & IFC Importer This release ships the **node-registry plugin architecture**, **in-world selection handles**, a full **IFC → Pascal importer**, **Solid/Rendered render modes**, **six roof accessories**, a complete **elevator system**, and an expanded material library. ### ✨ Features - **In-world selection handles** — resize arrows and floorplan move handles for wall, door, window, stair, fence, elevator, column, shelf, roof segments, slab, and ceiling. New `NodeDefinition.handles` descriptor and `EditorApi` IoC interface ([#334](https://github.com/pascalorg/editor/pull/334)) - **Viewer render modes** — Solid / Rendered toggle, surface-role clay materials, scene themes (light / dark), textured surfaces, edge + ink pass ([#332](https://github.com/pascalorg/editor/pull/332)) - **Six roof accessories** — chimney, dormer, skylight, solar-panel, ridge-vent, box-vent as first-class `NodeDefinition` kinds with CSG roof cuts ([#330](https://github.com/pascalorg/editor/pull/330)) - **IFC → Pascal converter** — new `packages/ifc-converter` package and `apps/ifc-converter` app; imports IFCWALL dimensions and profile-typed columns ([#324](https://github.com/pascalorg/editor/pull/324)) - **Elevator system** — full floorplan overlay, cab door controls, runtime, first-person support, and viewer rebuild handling ([#305](https://github.com/pascalorg/editor/pull/305), [#307](https://github.com/pascalorg/editor/pull/307)) - **Node registry & plugin architecture** — `NodeDefinition` registry, per-kind `packages/nodes` structure, plugin-authoring guide ([#314](https://github.com/pascalorg/editor/pull/314)) - **Stair opening system** — automatic stair-hole updates, spiral stair openings clamped at full sweep ([#315](https://github.com/pascalorg/editor/pull/315)) - **Material library** — brick, stone, terrazzo, tile, parquet and wood textures; roofing and flooring catalog refactor ([#315](https://github.com/pascalorg/editor/pull/315)) - **Procedural column variants** — editor copy/paste and wall junction planning improvements ([#302](https://github.com/pascalorg/editor/pull/302)) - **Wall-driven auto slab + ceiling sync** — pause/resume primitive for programmatic batch edits ([#336](https://github.com/pascalorg/editor/pull/336)) - **Load Build verification dialog** — gate destructive load behind a confirmation step ([#320](https://github.com/pascalorg/editor/pull/320)) ### 🐛 Fixes - MCP: templates now use string IDs for `SiteNode.children` ([#326](https://github.com/pascalorg/editor/pull/326), [#325](https://github.com/pascalorg/editor/pull/325)) - Fence tool handlers restored after null-guard regression ([#318](https://github.com/pascalorg/editor/pull/318)) - IFC converter: broken Contributions GitHub URL ([#335](https://github.com/pascalorg/editor/pull/335)) - Max panel height overflow ([#304](https://github.com/pascalorg/editor/pull/304)) - Performance: lighter materials, reduced viewer rendering cost ([#306](https://github.com/pascalorg/editor/pull/306)) ### 📦 Packages | Package | Version | |---|---| | `@pascal-app/core` | `0.9.0` | | `@pascal-app/viewer` | `0.9.0` | | `@pascal-app/editor` | `0.9.0` | | `@pascal-app/mcp` | `0.3.0` | | `@pascal-app/ifc-converter` | `0.1.0` ← new package | ### 🙏 Contributors A huge thank you to our contributors for this release! - [@sudhir9297](https://github.com/sudhir9297) — in-world selection handles, roof accessories, elevator system, column variants ([#334](https://github.com/pascalorg/editor/pull/334), [#330](https://github.com/pascalorg/editor/pull/330), [#305](https://github.com/pascalorg/editor/pull/305), [#302](https://github.com/pascalorg/editor/pull/302)) - [@wass08](https://github.com/wass08) — viewer render modes, IFC converter, node registry, and many fixes ([#332](https://github.com/pascalorg/editor/pull/332), [#324](https://github.com/pascalorg/editor/pull/324), [#314](https://github.com/pascalorg/editor/pull/314), [#336](https://github.com/pascalorg/editor/pull/336), [#320](https://github.com/pascalorg/editor/pull/320), [#318](https://github.com/pascalorg/editor/pull/318), [#307](https://github.com/pascalorg/editor/pull/307), [#306](https://github.com/pascalorg/editor/pull/306), [#304](https://github.com/pascalorg/editor/pull/304)) - [@jelharou](https://github.com/jelharou) — MCP string-ID fix for `SiteNode.children` ([#326](https://github.com/pascalorg/editor/pull/326)) **Full Changelog**: https://github.com/pascalorg/editor/compare/v0.8.0...v0.9.0