It's already been mentioned there are GObject Introspection bindings for node.js. But the stability and functionality of bindings were poor. We at Nemein decided that it's worth to try make it more functional and more stable. I spent some time with node-gir and finally there's something which looks very promising.
You can take a look at examples or tests. The latter use Midgard content repository as a base.