This mono repo uses Microsoft Rush
$ npm install -g @microsoft/rush
$ cd binpacking
$ rush install
$ rush build
4D Bin Packing (Width, Height, Depth and Weight) algorithm that uses Best Fit Decreasing by default.
You can pass your own sorting algorithm to Packer. A use case is you have a predefined picking line in your facility that isn't ordered by largest to smallest and you want your pickers to pick and move in a single direction.
A simple viewer example for visualising the packed bins in 3D space