is there an virtual environment for node.js?
nodeenv - virtual environment for node.js ( Analog virtualenv )
If having system wide npm packages is your main issue, then maybe consider using the very cool 'bundle' command with npm. This is closer to freezing gems or using bundler in rails, rather than rvm.
It's super easy. Just create a package.json file:
{ "name": "yourapp", "version": "0.0.1", "dependencies": {"jade": "0.4.1"}}
and then run:
npm bundle vendor
or if your npm version is >= 1.0 run:
npm install
to freeze into the vendor directory. and then use:
require.paths.unshift('./vendor');
There are also some Node version management systems that can help.
Check out Nave https://github.com/isaacs/nave
NVM could also be used https://github.com/creationix/nvm
There is also one called n https://github.com/visionmedia/n