Skip to content

kenzap/nesting-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kenzap Nesting App

Kenzap Nesting Preview

A desktop nesting application for DXF-based sheet and strip layouts, with live preview, built-in state-of-the-art 2D nesting algorithm, DXF sheet export, engraving, and cross-platform support.

Downloads

Download the matching build from the latest GitHub release page to skip compilation.

How It Works

Simply drag and drop one or more DXF sketch drawings. Kenzap Nesting automatically detects nestable shapes. Set quantities for each drawing and adjust engraving settings as needed. Click the RUN button to send the job to the native nesting engine and preview the resulting sheets with nested shapes. Export to DXF format with all items packed and ready for placement.

The workflow is:

  1. Add DXF parts.
  2. Detect separate shapes and internal cut and engraving geometry.
  3. Configure sheet size, strip behavior, spacing, rotation, additional engraving, and other algorithm settings.
  4. Run the native nesting engine.
  5. Review sheets live while the algorithm works.
  6. Export final sheets, including DXF output with original layer structure and engraving geometry.

You can also check this video for live nesting demo.

Core Features

  • DXF import by click or drag and drop
  • Multi-shape detection within a single DXF sketch
  • DXF multi-layer and color support
  • Preview dialog for per-shape quantity, removal, restore, and layer-aware review
  • Support for mixed geometry such as lines, arcs, circles, polylines, ellipses, and splines
  • Live nesting preview while the algorithm is still running
  • Windows and macOS native integration
  • Polygon placement JSON export for cloud or offline algorithm workflows
  • DXF export with preserved layer structure and geometry reconstruction
  • Plate size optimization
  • Configurable spacing, sheet margin, orientation step, alignment, and engraving
  • Engraving styles:
    • Simple for single-line lettering
    • Stroked for outlined lettering

Research Credit

This project builds on ideas from recent research in computational geometry and nesting.

More info:

Run Natively

Requirements

  • Node.js
  • npm
  • Native algorithm binaries placed under:
    • native/macos/bin/
    • native/windows/bin/

To compile the binaries, please refer to the Sparrow repository.

Development Run

Install dependencies:

npm install

Start the app:

npm run dev

npm run dev opens Electron with DevTools enabled, which is helpful for debugging renderer issues and algorithm integration.

Build the App

Windows x64

Windows portable build (running from macOS):

npx electron-builder --win portable --x64

Windows installer build (running from macOS):

npm run dist:win

macOS

npx electron-builder

Notes

  • The build examples above are tested on macOS M-series chips. To cross-compile from Windows to macOS, you may need to adjust some parameters.
  • Windows and macOS packages include the Electron app (UI and visualization) and bundled native binaries (nesting algorithm).

Repository Structure

assets/                 app icons, preview media, branding assets
main/                   Electron main-process modules
  app.js                window, menu, About panel, app lifecycle
  ipc/                  file dialogs, Sparrow, DXF export IPC handlers
  utils/                main-process helpers such as temp retention cleanup
native/                 platform-specific native binaries
  macos/bin/            Sparrow and preprocess binaries for macOS
  windows/bin/          Sparrow and preprocess binaries for Windows
renderer/               Electron renderer application
  state/                app state store and mutations
  views/                panes, modals, canvas, DXF preview UI rendering
  services/             nesting, DXF parsing/preview, export workflows
  utils/                DXF geometry, color, SVG, and preview helpers
  helpers.js            shared renderer-only formatting helpers
  index.html            renderer shell
  renderer.js           renderer bootstrap and module wiring
  styles.css            application styling
shared/                 constants and settings used by main + renderer
preload.js              secure Electron bridge exposed to the renderer
main.js                 thin bootstrap that starts the main-process modules
dist/                   packaged builds

Current Focus

Kenzap Nesting is designed for practical DXF nesting workflows:

  • Accurate multi-contour import
  • Format-agnostic support
  • Brand-specific machined tool path integration
  • Cloud integration for superior nesting performance

Feedback

License

This project is licensed under the Apache License 2.0. See LICENSE.