- Node 20+: Node.js. You can use the Node Version Manager (nvm):
- nvm-windows to download Node and change versions.
- Python 3.7.9 and up You can use the Python Version Manager (pyenv):
- pyenv-win to download and change versions.
- RUST setup rust via https://rustup.rs/ - mainly for used for plugins - currently not used in this repo.
- Visual Studio with Desktop Development with C++ extension
- Install VS2022 from https://visualstudio.microsoft.com/vs/features/cplusplus/
- or, as an administrator via
npm install --global windows-build-tools(older VS version)
xcode-select --install
brew install boostHave a look in the workflow file: https://github.com/deepnest-next/deepnest/blob/main/.github/workflows/build.yml#L28
- gcc
- clang
- libboost-dev
- 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
git clone https://github.com/deepnest-next/deepnest
cd deepnest
npm install
npm run build
npm run start# 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-allnpm run start
npm run clean && npm run build
# full clean, incl. `node_modules`
npm run clean-all && npm install && npm run buildFirst, one-time setup:
npx playwright install chromiumWithout this, you may encounter tests timing out after 30000 milliseconds.
Then, simply run npm run test.
To create new tests you can run:
npm run pw:codegenor
Linux/MacOS:
node ./helper_scripts/playwright_codegen.jsor
Windows:
node .\helper_scripts\playwright_codegen.jsnpm run dist
# During development, you can combine `clean-all, build-all and dist` via:
npm run dist-allThe resulting files will be located in .\deepnest-<version>-win32-x64.
Create a zip file of this folder for a simple distribution.
If the environment variable "deepnest_debug" has a value of "1", deepnest will open the browser dev tools (debugger/inspector).