Releases: GridSpace/grid-apps
4.6.1
Release 4.6.1
CAM/CNC Improvements
- Fixed deep ease-down that wraps a polygon more than once
- Added ease down safeguards for bad geometry
- Cap ease down speed by engage setting
- Corrected tool shadow epsilon
- Raise zSafe if zTop is above it
- Improved outline strategy for depth first operations
- Added trace option to ignore part boundaries
- Disabled trace merge until area can implement properly
FDM Improvements
- Async-ify FDM slicing layer diffs for ~3x speedup
- Trim support shadow to overhangs
- Improved support clipping, changed gap offset from number to boolean
- Refactored slice progress tracking
- Tightened slice shadow range for FDM
Bug Fixes
- Fixed unit scale when visual z set
- Fixed gcode import origin
- Fixed negative level z order
- Fixed wireframe opacity
- Fixed missing macro tokens handling
- Filtered out invalid area polys
- Fixed LOCAL const
- Removed input filter on iOS mobile
UI/UX
- Inverted dolly sign
- Removed beta tag
Other
- Updated electron app base
- Fixed docs formatting for controls.md
4.6.0
Release 4.6.0
A major update focusing on FDM support system improvements, belt printer enhancements, CAM operational flow control (loops), visual selection (Z Top/Bottom), and significant code modernization.
Major Features
Support System Overhaul
Complete redesign of FDM support generation with manual painting capabilities. Users can now paint support regions directly on mesh surfaces with angle-aware constraints. The system respects support angle settings, automatically filtering surfaces that require support based on overhang angle. Support structures are extracted into separate synthetic widgets enabling independent extruder assignment for multi-material support printing.
Belt Printer Enhancements
Full belt mode integration for manual support painting with proper coordinate transformations for rotated geometries. Support structures now clip correctly to the angled belt platform, preventing generation below the build surface. Belt anchor compensation ensures proper support column placement accounting for lead-in distances.
Purge Tower Improvements
Fixed critical bug where purge towers failed with non-contiguous extruder configurations. Previously, using tools 0 and 2 (skipping tool 1) would cause tower allocation failures. The system now correctly handles sparse extruder arrays and generates appropriate purge blocks for any tool combination.
FDM Improvements
- Manual support painting with visual overlay showing painted regions
- Support erase mode for removing painted areas
- Automatic support generation using shadow projection
- Support structures use dedicated extruder setting for multi-material printing
- Belt mode support clipping follows platform angle using slice.z * belt.slope calculation
- Fixed support slice height propagation for accurate layer-by-layer generation
- Improved nested top fill offset calculations
- Arc output fixes for proper center point calculation (radian/degree conversion)
- Delta thickness filtering parameter for variable layer heights
- Auto-start option for Moonraker remote printing
- Fixed finish speed ratio calculations for flats and bridges
CAM Improvements
- Loop operation for rotary/indexing workflows
- SVG trace path loading for arbitrary vector import
- Area operation vertical wall clearing option similar to outline
- Lathe step down with line reversal for rotary operations
- Optional alternating/zigzag patterns for area linear surfacing
- Shadow selection mode for area operations
- Improved drag knife routing logic
- Coastline move routes for contour operations
- Slice ordering via manual selection
- Better progress reporting for shadow generation, area surfacing, and lathe operations
- Parallalized widget shadow generation (2x performance improvement)
- Optional clip-to-stock for non-GPU topo3 contouring
User Interface & Workflow
- Visual selection of Z top and bottom constraints with double-select to cancel
- Z top/bottom overrides display on expandable summary hover
- Collapsible operations list for better workspace management
- Slicing and preview statistics in developer mode hover
- Widget transparency persistence across sessions
- Expandable preview in developer mode
- Keyboard shortcuts: W for ghost/wire toggle
- Improved color and opacity/edge management
- File type parsers exposed as api.load
Code Quality & Architecture
- Comprehensive documentation added to FDM slicing pipeline
- Refactored and renamed driver files for consistency
- Reorganized UI code into logical modules (app/init, app/ui)
- Extracted keyboard, slider, and modal handling into dedicated modules
- Consolidated STL/OBJ loading into unified load classes
- Split widget into core and app-ui subclasses
- Async initialization for improved startup performance
- Removed legacy code and unused dependencies
- Enhanced JSDoc comments for developer documentation
Bug Fixes
- Normalized mouse wheel scrolling across browsers (Chrome, Firefox, Safari)
- Fixed widget cloning issues
- Corrected visual state anomalies
- Fixed broken API sync link
- Resolved z base layer height for parts not on bed
- Fixed ghost/wire/solid toggle states
- Corrected area op rotation handling (auto vs user input)
- Fixed loop operation expansion and rendering
- Resolved shadow and lathe progress reporting
- Fixed trace outside with drape option duplication
- Corrected starting offset calculations with multiple widgets
- Fixed import slider click on maximum value
- Resolved widget edge updates on mesh move
Performance
- Optimized polygon utility operations
- Reduced redundant index operations
- Improved vertex caching for geometry operations
- Enhanced shadow computation efficiency
- Better rendering performance with stat tracking
Platform Updates
- Added Snapmaker U1 belt printer profile
- Removed deprecated Gridbots devices
- Updated FlashForge Adventurer 5M profile
- Updated to current Three.js and Manifold libraries
- Added QuickJS evaluation engine for macro support
Known Issues
- Tree support generation pending implementation
- WebGPU support on Linux (all browsers) and Firefox, Safari (all OS) lagging
4.5.1
Release 4.5.1
Bug Fixes
- Fixed findConnectedSurface for pocket in indexed mode
- Fixed use of flatness to drop points in CPU contour processing
- Fixed erroneous tab match in CPU contouring
- Fixed GPU contour Y coordinate handling with inside-only mode
- Fixed trace-through backward compatibility
- Fixed order of operations bug with tabs and inner-only processing
Improvements
- Increased Bambu FTP timeout for more reliable connectivity
- Updated FlashForge Adventurer 5M printer profile
- Added support for exported formats for packed devices
- Reorganized help menu layout
- Added file type parsers as api.load
- Distinguished fit contents from resize operations
- Improved UI element visibility (hide until hovered)
Updates
- Updated to current Three.js and Manifold libraries
Full Changelog: 4.5.0...4.5.1
4.5.0
Release 4.5.0
Major Features
CAM Path Planning Refactor
- complete rewrite of CNC path routing engine for improved collision detection
- new "Area" operation combining roughing, outlining, and tracing capabilities
- enhanced ease-down functionality with better collision avoidance
- improved travel boundary calculations with hangover support between operations
- optimized path ordering using enhanced shadow calculations
- added depth-first pocket routing option
Taper Ball Tool Support
- full taper ball tool implementation for CNC operations
- accurate tool geometry rendering in indexed mode
- proper step-over calculations for tapered tools
- visualization improvements for taper ball tool paths
Camera System Enhancements
- on-the-fly switching between orthographic and perspective camera modes
- improved orthographic aspect ratio and zoom behavior
- preserve camera settings (zoom inversion, speed) when switching projections
- restore camera projection mode on workspace import
- fixed zoom-to-fit behavior in orthographic mode
- "Shift+F" hotkey for immediate zoom to workspace contents
- "F" hotkey for zoom to fit space
CAM Improvements
Area Operation
- new unified "Area" operation mode combining multiple operation types
- area clear with intelligent pocket detection
- area trace with inside/outside options
- area outline with wide cutout support
- surface operation with linear constraints and angle control
- track and re-apply minimum Z for area operations
- support for tabs in area operations
Roughing Enhancements
- new roughing flat passes option for better finishing
- omit outer pass when using clear stock option
- improved leave stock handling (XY and Z)
- fixed leave stock application to tool shadow travel boundaries
- optimize roughing by skipping when clear stock is set
Trace Improvements
- enable inside/outside trace for open polylines
- add trace through option for better outline/rough behavior
- fixed trace operation with offset none
- improved dogbone generation
- added wide cutout functionality for outlines
Contouring & Surfaces
- add grace factor for contouring tool step
- restore stock clip-to for contouring operations
- fixed CPU contour Z bottom enforcement
- expand outside contour by resolution pixel
- surface operation with linear output mode
- fixed surface slice visualization
Tabs
- merge overlapping tabs automatically
- tabs now respect travel boundaries
- ensure ease-down does not cut through tabs
- improved tab cutting with indexed rotations
- fixed tab re-creation after rotation
- fixed tab cuts with stock clip-to in roughing
- better tab offset calculations
Tool Shadow & Travel
- significant shadow computation speedup using grid-bucketed recursive union
- add leave stock to tool shadow travel boundaries
- improved travel boundary handling with no args
- add outside travel safeties to tool shadow
- fixed shadow for indexed parts
- fixed shadow coplanar with bottom Z
- handle deep travel between small polygons
Indexed/Rotary Operations
- add index angle to slices and pass to client
- add rotational interpolation for G-code parsing
- improved lathe preview with lerp and GPU rendering
- add lathe axis reset macro
- fixed stock bounds in indexed mode with fixed vs offset stock
- enable manifold indexed animation option
Drilling
- convert holes to instanced mesh for better performance
- improved hole selection and toggle functionality
- better circularity detection with dedup for high-density faces
G-code & Export
- tighter arc tolerances for more accurate output
- fixed arc output with rounded corners expert option
- add milling direction per operation
- improved arc parsing with rotational interpolation support
FDM Improvements
- add "solidify" feature to remove inner voids from models at slice time
- fixed support on-demand detection
- improved bridge detection and handling
Laser Improvements
- add stacking STL reconstruction option for multi-layer engraving
User Interface
Rendering & Visualization
- improved CAM render colors
- soften edge traces in light mode
- mute dark part outlines for better visibility
- improved path visualization for indexed operations
- fixed colors and layer-first shadow rendering
Settings & Configuration
- hide omit-through option for outline outside-only mode
- add input select post to allow device name updates
- improved mutex handling to prevent hiding options during legacy op import
- better handling of element configuration parameters
Workspace Management
- fixed safe moves between operations accounting for widget platform offset
- fixed multi-widget safe move between ops
- improved stock clipping for multiple models with offset centers
- fixed origin select with offset origin
- fixed first save behavior when moving between widgets
Performance Optimizations
- speed up shadow computation with grid-bucketed recursive union
- disable WASM for area offsets (use round joins for better CNC tool paths)
- improved polygon union operations
- optimized contour calculations
- better handling of empty slices to reduce processing
Bug Fixes
CAM Fixes
- fix Z bottom validation and error messages
- fix erroneous "Z bottom > Z top" error
- warn when Z bottom is below Z through
- fix trace tool shadow clone
- fix clamp min/max swap
- fix stock clear all functionality
- fixed pocket bottom for slab slicing
- fix recursive use of nested travel boundaries
- clamp single trace to Z top/bottom
- fix area trace early termination conflict with drape
- disable depth-first pocket with drape (incompatible)
- filter empty slices from drape artifacts
- fix offsetting open polys with array offsets
- skip raster when no paths produced
Rendering Fixes
- fix orthographic aspect ratio
- fix zoom behavior and minimum zoom distance
- fixed ball taper render in indexed mode
- improved tool geometry visualization
General Fixes
- fix new tool units bug
- prevent double registration of frame listener
- fix await/async in CAM prepare
- fix DEG2RAD typo in calculations
- fix slice bounds errors (convert to alerts)
- fixed bad reference to worker
- various NullPointerException fixes
Code Quality
- add comprehensive JSDoc documentation for geometry library (base, point, line, slope, bounds, paths)
- move healPolys into polygons util class and rename as "reconnect"
- add todo notes for future improvements
- code formatting and cleanup
Documentation
- add interface documentation for main Kiri:Moto UI
- add interface images and option descriptions
- add docs redirects
- update broken links
- grammar and formatting improvements
- update Docusaurus to 3.9
Build & Development
- use cross-env for reliable cross-platform environment variables
- change environment variable location for Windows build
- improve build workflow to skip when only docs changed
- fix formatting checks
- update raster-path package dependency
- bump version to 4.5.0
Onshape Integration
- hide install menu in Onshape context
- improved Onshape authentication handling
Bambu Lab Integration
- move Bambu initialization to load-done for better stability
Electron
- improved electron build process
Known Issues
- Some polygon union operations may require further optimization for very large models
- GPU contouring disabled for pocket operations pending further testing
4.4.1
Release Notes - v4.4.1
Bug Fixes
CNC/CAM
- Fixed contour y bounds swap
- Fixed tab cuts and stock clip to in roughing operations
- Fixed outline stock clipping with offset origin
- Fixed origin select with offset origin
- Fixed stock clipping for multiple models with offset centers
- Fixed multi-widget safe move between operations
- Fixed thru cuts with new up/over tabs paths
FDM
- Fixed FDM support on-demand detection
- Fixed asset append missing module root
Core
- Fixed bad reference to worker (#451)
- Added install pass-thru for root requests
Improvements
- Improved smoothing and pocket devmode visuals
- Changed electron build context detection
- Moved mods package dependencies to main package
- Moved Bambu initialization to load-done
Maintenance
- Removed beta tag
- Back ported cross-env dependency
Full Changelog: 4.4.0...4.4.1
4.4.0
Release 4.4.0
General
- add version numbering utility script
- split out help/info menu and language menus
- move install/uninstall/quit menu to center app menu
- add help menu visual callout
- improve language translation coverage
- improve build and serve workflow for alternate builds
- update service worker configuration
- add install/uninstall options in setup menu
CAM
- implement tab hopping - toolpath goes up and over tab instead of interrupting cut (fixes #207)
- add GPU accelerated contouring for faster operations
- add radial GPU raster support (experimental)
- add new register mode that marks bottom cutout tabs
- add curves-only support to GPU contour
- add zsafe and move to safe z at start of new operations
- fix 'safe' moves during operation changes to be moves, not cuts
- fix tolerance/resolution for GPU raster mesh calculations
- fix NullPointerException with tabs in contour
- improve merge/co-planar point handling
- add slice layer naming using operation notes (fixes #447)
- fix level step down units (fixes #446)
FDM
- document remain_time macro variable (refs #339)
- re-add base flow rate multiplier for belt mode (fixes #444)
- fix belt fan control ordering (fixes #438)
- exclude belt from bridge fan layer
- add centering feature for fill areas (fixes #448)
Mesh:Tool
- add STEP export capability
- add STEP import with face generation
- improve face generation with inner holes
- add mesh scripting tool and persistence
- add plane and plane.loft operations
- add global edge map and edge reuse for better topology
- add devel device export option
Electron
- clean up electron build process
- merge electron mod into core
- add service routes when available
- set proper content-type for appended code bodies
Dependencies
- update @gridspace/raster-path to latest version with GPU acceleration
- update @gridspace/app-server for proper fallthrough handling
- switch from npmjs.org to git repos for @GridSpace packages
- update WebGPU implementation
Bug Fixes
- fix Bambu Lab local URL and module load order
- fix progress reporting for raster operations
- fix GPU lathe progress and contour API usage
- fix tool offsets when using GPU acceleration
- fix indexed rotations epsilon value for accurate zflat calculation
- fix traceload debug option
- sanitize topo3 resolution to avoid GPU floating-point errors
4.3.4
Release 4.3.4
Lathe Mode
- Add lathe start/end offset option with improved large step precision
- Fix lathe thru stock depth calculation
FDM Improvements
- Add volumetric flow output caps for FDM printing
- Add file metadata to widget codec
CAM Enhancements
- Allow short moves to cut in roughing operations
- Refactor CAM indexed animations to show cut path only
- Fix custom operation naming
Bundler & Performance
- Add compression caching to bundler
- Add bundler load order priority with module bundling (--dryrun support)
- Add bundler debugging and command line compression
- Add bundler exclusions and make bundler more resilient to missing sources
- Exclude bundle from itself
- Add experimental boot system
- Fully host /kiri from /boot
Service Worker & Caching
- Add more service worker boot controls
- Add ability to force service worker cache update
- Handle base redirects when it's a cache hit
- Fix cache vs transparent mode
Bug Fixes
- Fix case where max feedrates are all 0
- Fix fan setting for empty bridge layers
- Fix rapid plunge in Z axis
- Handle redirect with query parameters
Parameter Changes
- Remove confusing/unused fill speed parameters
- Rename parameters for clarity
- Remove first layer line width and flow rate (will become range parameters in future flow rate refactor)
- Disable scarf by default
Pull Requests
- #436: Add filename widget codec support
Full Changelog: 4.3.3...4.3.4
4.3.3
Release 4.3.3
Bug Fixes
- UI: Fixed overflowing operations lists and popup positioning issues
- CAM: Fixed tab reference for mirror operation
- CAM: Added box area constraint for contour operations
- FDM: Updated minimum layer time to respect minimum output speed
- Core: Fixed legacy PNG library to work with ESM build
- Core: Fixed IndexedDB reload race condition
Improvements
- FDM: Lowered fan speed for bridge layers to improve print quality
- UI: Sorted FDM, CAM, and control property names for easier navigation
- Build: Added option to compress/uglify boot image
- Build: Improved boot/install URL handling using updated service worker
- Build: Removed grid:local and grid:host targets
- Build: Added npm i to mods at setup
Full Changelog: 4.3.2...4.3.3
4.3.2
Changelog
✨ New Features
- Add hole and perimeter offset compensation as expert settings (1cca293)
- Add FDM scarf seams and min layer time (79a227d)
- Add spiral layer start point option (ac956a3)
- Add slice bridge annotations to slow print (6bf1537)
- Add
onameandoidparams for macro conditions and substitutions (7660570) - Add print remain time macro var (77b4cce)
- Add codec optional extended point data encoding (39cc3db)
🛠 Improvements
- Improve gap routing; add adaptive shell fallback on failure (f53d6da)
- Only apply new starting point on first move of new layer (6c26dd0)
- Reorder FDM menus; add solid fill sub-menu (bcadc9d)
- Move output layer menu items to layer menu; relabel for clarity (35b4827)
- Slow down shells on flat layers (92cfe7f)
🐛 Fixes
- Fix angle diff calc for basic thin wall merge test (8eaa0a3)
- Fix move extrusion with scarfz (5aa5456)
- Fix scarf/arc conflict and scarf Z on export (77b4cce)
- Fix helical operator mistake (90a9f21)
- Fix adding supports from underneath platform looking up (457c037)
- Fix extruders LANG API ref (cb0344f)
- Fix thin shell depth for identifying outside faces (6bf1537)
- Fixup for origin point finder for high res meshes (3a4aa46)
- Fixes #429: outline refresh and stock size issues (9138e21)
- Fixes #430: provide enclosing element height and aspect ratio (90c29d1)
🔬 Experimental / Tests
- Add test slicing poly pumping (rounding) (8e75ad7)
- Add basic thin wall handling and default to on (0349ea5)
- Mock up basic thin wall without medial axis (f8180fe)
- Extend approach (segment comparison with angles needed) (78d4d60)
- Filter unmodified subsegments used for proximity testing (55615e1)
- Revert new thin default until codec updated (f5d234d)
- Add TODO/note for single wall noodle and claim system (dfa2308)
🧹 Misc
- Code formatting (d976461)
4.3.1
What's Changed
- Thin-wall overhaul (thin3): direct medial-axis segments; single-wall on axis; new claim system; better nominal width; fixes for closed polys, retraction, cross/interp, chain marking/merging; higher thin resolution; shell extrusion multiplier; shell width stepping; output-ordering annotations.
- Shell / fill & output: move shell/fill overlap to shell menu; next-closest shell output ordering; micro-backlash option; repeat-last-point close; point reduction & min-area filtering; gaps & max-inset visualizations.
- Inset / trace pipeline: cleaner inset extrusion polys; alt/new segment generator; generalized
trace_noodle; post-noodle subtraction fix; ray/line fix; intersect-offset over approx radius; micro offsetting; radii term cleanup. - FDM / CAM fixes: infill offsetting; start-move on layer-up; helical bugfixes; #421 (non-extended-thru cuts with large step-down); #426 (
camZBottom); #427 (min scale clamp). - Build / IO: append
base64jsfor prod; G-code import cleanup; taper tool deps; restore missingsliceAll. - Meta: bump rev to 4.3.1; rename thin-wall implementations.
Full Changelog: 4.3.0...4.3.1