virtualenvwrapper es una de las herramientas más útiles que alguien que use Python debe conocer. Está contruida sobre virtualenv y permite crear entornos aislados donde controlar las versiones de Python y los paquetes que se usa, sin afectar a otros proyectos y al sistema operativo.
Al empezar a experimetar con NodeJS he descubierto que existe algo parecido para esta plataforma. Se trata de nodeenv, y funciona sobre virtualenv, de tal manera que es fácil familiarizarse con él y su funcionamiento es el mismo.
Todo empieza creando un nuevo entorno virtual con virtualenv e instalando el módulo nodeenv:
~$ mkvirtualenv projecto1
~$ pip install nodeenv
nodeenv permite elegir la version de NodeJS (o IOjs) o npm, el número de trabajadores a usar, en cual entorno virtual instalar NodeJS entre otras muchas cosas. Por ejemplo:
~$ nodeenv –node=0.10.25 -p
Instalará NodeJS en su versión 0.10.25 con su correspondiente npm en el entorno virtual actual. Tarda algún tiempo en acabar. Cuando termine para asegurarnos que todo funciona desactivamos el entorno virtual y volvemos a activarlo. A partir de ese momento dispondremos de un entorno virtual de NodeJS donde tener control absoluto sobre las versiones de los paquetes, de NodeJS y con la seguridad de que no afectará al resto del sistema operativo, igualito que con Python.