v0.9.1
junegunn/fzfv0.9.1Jun 10, 2026by Aymericr
AI Summary
This release introduces a first-class preset system, room templates, and a deep overhaul of building manipulation features including rotation and unified handles. It also enhances the user experience with studio mode, sound design, and improves viewer shadows while refreshing dependencies.
Key Highlights
- First-class preset system with framing and zoom-limited thumbnails
- Building manipulation overhaul with unified handles and whole-building rotation
- Rooms & templates for saving and reusing furnished spaces
- Studio mode and consolidated Display + References controls
- Viewer shadow improvements with geometry-aware frustum fitting
New Features
- Preset system with framing and zoom-limited thumbnails
- Rooms & templates for saving furnished spaces
- Building manipulation overhaul with rotation and tap-to-engage move
- Studio mode and consolidated Display + References controls
- Sound design including structure cues and menu hover SFX
- Roof accessories like gutters and downspouts with gizmos
- Viewer shadow improvements centered on focus
Full Release Notes
## ποΈ Pascal Editor v0.9.1 β Preset System, Rooms & Templates, Building Manipulation This release ships a first-class **preset system**, **room presets & template scans**, a deep **building-manipulation overhaul** (rotation, unified handles, tap-to-engage move), **editor sound design**, **viewer shadow improvements**, and a full **dependency/security refresh**. It also publishes the npm packages announced in v0.9.0 β everything lands on the registry as 0.9.1. ### β¨ Features - **Preset system** β capture builds as presets with framing + zoom-limited thumbnails, browse them in a hierarchical function-tree with an icon-grid category bar, and place them with parameters, move tool, shadows, isolation, and a green/red validity box ([#341](https://github.com/pascalorg/editor/pull/341), [#344](https://github.com/pascalorg/editor/pull/344), [#345](https://github.com/pascalorg/editor/pull/345), [#349](https://github.com/pascalorg/editor/pull/349), [#354](https://github.com/pascalorg/editor/pull/354), [#357](https://github.com/pascalorg/editor/pull/357), [#366](https://github.com/pascalorg/editor/pull/366)) - **Rooms & templates** β save furnished rooms as reusable presets; template scans feed the same workflow ([#390](https://github.com/pascalorg/editor/pull/390)) - **Building manipulation overhaul** β whole-building rotation with world-grid alignment, alt-click single-wall selection, tap-to-engage move ([#388](https://github.com/pascalorg/editor/pull/388)); live floor-stacking previews, unified handle system + hit areas, NaN-safe node mutations ([#375](https://github.com/pascalorg/editor/pull/375)); persistent site boundary handles ([#386](https://github.com/pascalorg/editor/pull/386)); alignment guides + floor-plan/3D placement parity ([#372](https://github.com/pascalorg/editor/pull/372)); level-scoped alignment, reference-floor symbols & registry slab tool ([#373](https://github.com/pascalorg/editor/pull/373)) - **Studio mode & inspector UX** β studio mode, consolidated Display + References controls ([#364](https://github.com/pascalorg/editor/pull/364), [#370](https://github.com/pascalorg/editor/pull/370)); build sidebar + slimmed items panel for the standalone editor ([#361](https://github.com/pascalorg/editor/pull/361)); vertical icon rail + headless inspector footer slot ([#350](https://github.com/pascalorg/editor/pull/350)) - **Sound design** β structure build start/end cues, menu hover/click SFX ([#378](https://github.com/pascalorg/editor/pull/378)); per-kind delete sounds incl. shelf items ([#379](https://github.com/pascalorg/editor/pull/379), [#381](https://github.com/pascalorg/editor/pull/381)) - **Roof accessories** β gutters, downspouts & vents with gizmos ([#355](https://github.com/pascalorg/editor/pull/355)) - **Viewer shadows** β shadow frustum fitted to building geometry and centered on focus ([#347](https://github.com/pascalorg/editor/pull/347), [#348](https://github.com/pascalorg/editor/pull/348)) - **Fence presets** β tool-defaults seeding + `drawTool` capability ([#346](https://github.com/pascalorg/editor/pull/346)) ### π Fixes - Camera β floor-plan navigation sync, both directions ([#387](https://github.com/pascalorg/editor/pull/387)) - Editor interaction, loading, walkthrough, and IFC cleanup ([#385](https://github.com/pascalorg/editor/pull/385)) - Relative move grab offsets + fresh placement commits ([#383](https://github.com/pascalorg/editor/pull/383)) - Stair openings, roof-segment grid snap, 3D box selection, unit-aware alignment guides ([#380](https://github.com/pascalorg/editor/pull/380)) - Slab side walls render solid regardless of polygon winding ([#377](https://github.com/pascalorg/editor/pull/377)); outline polygon edit handles + vertex grab ([#365](https://github.com/pascalorg/editor/pull/365)) - Null-safety hardening across placement, cursor groups, box-select, and container renderers ([#313](https://github.com/pascalorg/editor/pull/313), [#323](https://github.com/pascalorg/editor/pull/323), [#333](https://github.com/pascalorg/editor/pull/333), [#342](https://github.com/pascalorg/editor/pull/342), [#359](https://github.com/pascalorg/editor/pull/359)); legacy door nodes normalized against the schema ([#303](https://github.com/pascalorg/editor/pull/303)) - Nodes test suite repaired under bun ([#360](https://github.com/pascalorg/editor/pull/360)); stale registry + stair-opening tests updated ([#358](https://github.com/pascalorg/editor/pull/358)) ### π§° Infrastructure - CI: lint + typecheck workflow ([#369](https://github.com/pascalorg/editor/pull/369)) - June 2026 dependency refresh β next 16.2.6 (12+ security advisories patched; 16.2.7 deliberately held back for a Turbopack dev route-matching regression), TypeScript 6.0.3 everywhere, single-three dedupe, dead-dependency removal ([#389](https://github.com/pascalorg/editor/pull/389)) - Architecture: enforced layer boundaries β ceiling dispatch, store relocation, shared helpers ([#382](https://github.com/pascalorg/editor/pull/382)); MCP planβworld coordinate convention documented ([#356](https://github.com/pascalorg/editor/pull/356)) ### π¦ Packages | Package | Version | |---|---| | `@pascal-app/core` | `0.9.1` | | `@pascal-app/viewer` | `0.9.1` | | `@pascal-app/editor` | `0.9.1` | | `@pascal-app/mcp` | `0.3.1` | | `@pascal-app/ifc-converter` | `0.1.1` | > The 0.9.0 versions announced in the previous release never reached npm β they ship here as 0.9.1. ### π Contributors A huge thank you to our contributors for this release! - [@sudhir9297](https://github.com/sudhir9297) β building-manipulation overhaul, alignment guides, level-scoped alignment & registry slab tool, layer-boundary architecture ([#388](https://github.com/pascalorg/editor/pull/388), [#372](https://github.com/pascalorg/editor/pull/372), [#373](https://github.com/pascalorg/editor/pull/373), [#382](https://github.com/pascalorg/editor/pull/382)) - [@wass08](https://github.com/wass08) β rooms & templates, the preset-system wave, studio mode, sound design, shadow improvements, and many fixes ([#390](https://github.com/pascalorg/editor/pull/390), [#387](https://github.com/pascalorg/editor/pull/387), [#385](https://github.com/pascalorg/editor/pull/385), [#378](https://github.com/pascalorg/editor/pull/378), [#364](https://github.com/pascalorg/editor/pull/364), [#357](https://github.com/pascalorg/editor/pull/357), [#354](https://github.com/pascalorg/editor/pull/354), [#341](https://github.com/pascalorg/editor/pull/341)) - [@anton-pascal](https://github.com/anton-pascal) β null-safety hardening wave across viewer, editor, and nodes ([#303](https://github.com/pascalorg/editor/pull/303), [#313](https://github.com/pascalorg/editor/pull/313), [#323](https://github.com/pascalorg/editor/pull/323), [#333](https://github.com/pascalorg/editor/pull/333), [#342](https://github.com/pascalorg/editor/pull/342)) - [@marcelgruber](https://github.com/marcelgruber) β MCP planβworld coordinate convention docs ([#356](https://github.com/pascalorg/editor/pull/356)) **Full Changelog**: https://github.com/pascalorg/editor/compare/v0.9.0...v0.9.1