Ported project to NodeJS