While Rhino has support for CommonJS, this is one of the pain points in adopting NodeJS applications because it's not as extensive as in NodeJS.
Improving this will open the door for many useful applications built for NodeJS (at least wrt require of dependencies).
npm dependency management is questionable, when we talk about large scale applications. CommonJS side in Node has also some questionable features in "require" such as relative modules import e.g. "./mymodule". As of now we have chosen the so called "global installs" e.g. as in Java and other languages, which is more straight forward and manageable.
Actually this is one of the showstoppers for me to embrace the Node framework as the prominent future runtime for Dirigible.