Skip to content

Latest commit

 

History

History
125 lines (83 loc) · 2.67 KB

File metadata and controls

125 lines (83 loc) · 2.67 KB

Build

Prerequisites

General

  • Node 20+: Node.js. You can use the Node Version Manager (nvm):
  • Python 3.7.9 and up You can use the Python Version Manager (pyenv):
  • RUST setup rust via https://rustup.rs/ - mainly for used for plugins - currently not used in this repo.

WINDOWS

MACOS

Install Homebrew

xcode-select --install
brew install boost

LINUX

Have a look in the workflow file: https://github.com/deepnest-next/deepnest/blob/main/.github/workflows/build.yml#L28

  • gcc
  • clang
  • libboost-dev

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 https://github.com/deepnest-next/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

Running the tests

First, one-time setup:

npx playwright install chromium

Without this, you may encounter tests timing out after 30000 milliseconds.

Then, simply run npm run test.

Add tests via playwright codegen

To create new tests you can run:

npm run pw:codegen

or

Linux/MacOS:

node ./helper_scripts/playwright_codegen.js

or

Windows:

node .\helper_scripts\playwright_codegen.js

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).