Most of the software tools are open source. You can find the source here https://www.nand2tetris.org/software
(it's at the bottom of the page). The only exceptions are things like the Jack compiler, which is something that the students are supposed to develop during the course.
The source code is rather old and doesn't even include an automated build file. Some time ago, I created a fork here: https://github.com/itoshkov/nand2tetris-emu
. It uses maven for building, fixes several problems (e.g. the original code uses enum as a variable name, and it's now a reserved keyword) and bugs, plus some new features. You may find it easier to start from there.