/Deepnest

An open source nesting application for laser cutters, plasma cutters and other CNC machines

Primary LanguageJavaScriptOtherNOASSERTION

Deepnest

Deepnest

A fast nesting tool for laser cutters and other CNC tools

Deepnest is a desktop application originally based on SVGNest

  • New nesting engine with speed critical code written in C
  • Merges common lines for laser cuts
  • Support for DXF files (via conversion)
  • New path approximation feature for highly complex parts

Fork History

Support, issues and pull requests

The primary goal has been to get Deepnest buildable again, to prevent it to become abandonware as the original author does not seem to be activley involved. The goal of creating the fork under this organization is to create again a centralized repo where development of this program can continue. It would be wonderful if more contributors join this organization so we can bring this project back to life, update it with latest dependencies and start adding features / fixing issues.

Prerequisites

  • Node 14/16/18/20: Node.js. You can use the Node Version Manager (nvm):
  • Python 3.7.9 You can use the Python Version Manager (pyenv):
  • Visual Studio with Desktop Development with C++ extension

Possible Problems

  • On Windows 10 1905 or newer, you might need to disable the built-in Python launcher via
    • Start > "Manage App Execution Aliases" and turning off the "App Installer" aliases for Python"
  • close-and-open all command shells and your IDE to activate the latest setup

Building

git clone --recurse-submodules --remote-submodules https://github.com/deepnest-io/Deepnest
cd Deepnest
npm install
npm run build
npm run start

Rebuild

# If you change the electron-related files (web files, javascript), a build with 
npm run build

# If you change the the Minkowski files (the `.cc` or `.h` files):
npm run build-all

Running

  • npm run start

Clean builds

npm run clean  && npm run build

# full clean, incl. `node_modules`
npm run clean-all && npm install && npm run build

Create a Distribution

npm run dist

# During development, you can combine `clean-all, build-all and dist` via:
npm run dist-all

The resulting files will be located in .\deepnest-<version>-win32-x64.

Create a zip file of this folder for a simple distribution.

Debugging

If the environment variable "deepnest_debug" has a value of "1", Deepnest will open the browser dev tools (debugger/inspector).

License

The main license is the MIT.

Further Licenses: