another HUGE refactor to nodejs