seems to be working as a node module