Introducción
Si no sabes que es node y nvm, aquí te explicaré que son, para qué sirven y además como instalar node.js con NVM para tener múltiples versiones y ser más productivo a la hora de crear tus paquetes.
¿Qué es node.js?
Tomando la definición del sitio oficial, Node.js®, node es un entorno de ejecución para JavaScript construido con el motor de JavaScript V8 de Chrome. Node.js usa un modelo de operaciones E/S sin bloqueo y orientado a eventos, que lo hace liviano y eficiente. El ecosistema de paquetes de Node.js, npm, es el ecosistema más grande de librerías de código abierto en el mundo.
Vamos a describir la parte que nos interesa, Node.js es un programa, V8 es un motor de javascript de código abierto creado por Google, por lo que también lo hace un programa, V8 está escrito en C++, y la tarea de V8 es tomar código Javascript y convertirlo a código máquina (compilar código), pero lo que lo hace especial para nuestros fines es que puede ser embebido dentro de otros programas, lo que permite que V8 esté embebido en Node.js, V8 por así decirlo es el punto de partida para toda la funcionalidad de Node.js.
Node.js también está escrito en C++ y utiliza la API de V8 para agregarle características y funcionalidades nuevas a Javascript. Estas nuevas funcionalidades permiten tener acceso al sistema de archivos y carpetas, nos permite crear un servidor TCP y http, además de acceso a POSIX, o sea, a toda la funcionalidad del sistema operativo donde se encuentre instalado.
Node.js proporciona la sintaxis Javascript para crear programas que tengan acceso a las características del sistema operativo donde sé está ejecutando.
Cuando instalas node.js viene por default con una herramienta llamada NPM, que es el administrador de paquetes de node, con esta herramienta tú puedes instalar cualquier paquete de JavaScript que necesites.
¿Cómo lo hace? Pues cualquier desarrollador de javascript que siga los lineamientos adecuados puede publicar su librería/paquete, esta publicación genera un registro que internamente utiliza la línea de comandos de NPM para descargar e instalar ese nuevo paquete, además de que actualmente muchísimos paquetes ya registrados que puedes descargar y usar en tus proyectos.
¿Qué es NVM?
Para instalar node.js con NVM en macOS, primero debes tener git instalado para poder correr el comando de instalación de NVM. Ahora bien, ¿Qué es NVM? NVM significa Node Version Manager, y es al administrador de versiones de node, te permite tener múltiples versiones de node en tu computadora, dándote la flexibilidad de cambiar entre versiones y tener tu propio ambiente de trabajo en cada versión.
Puedes tener tú propios paquetes instalados, específicos para diferentes proyectos. Lo que tienes instalado en una versión, no choca con lo que tienes en otra.
Todo esto te da la habilidad de probar diferentes tipos de versiones de tus paquetes. Si estás creando un nuevo paquete y lo quieres probar en las últimas versiones de node.js, lo puedes hacer sin temor a romper lo que ya tienes para otra versión más estable o incluso para versiones más viejitas.
¿Cómo instalamos node.js con NVM en macOS y Linux?
Suponemos que ya tienes instalado git, si no es así, puedes ver como instalar git en macOS aqui.
Ejecuta el siguiente comando en una terminal:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
Este comando te clonara la última versión estable de NVM en tu directorio ~/.nvm
, luego intentara escribir en tu archivo ~/.zshrc
o ~/.bashrc
el código de abajo. Esto para que NVM se cargue y funcione correctamente al iniciar sesión en tu computadora.
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
Ahora para ejecutar el código anterior, y nos funcioné desde este momento nvm, ponemos en la consola el siguiente comando. Esto te permite no cerrar y volver abrir tu shell.
source ~/.zshrc
Revisa si tu instalación de NVM quedo correcta, ejecutando:
nvm --version
Si te imprime la versión, es que todo quedo correctamente instalado.
Ahora instala la última versión estable de node.js con el comando nvm install version
nvm install node # Aqui "node" es una alias para instalar la ultima version
Y verifica la versión de node instalada con:
node --version
¿Como usar otras versiones de node.js con NVM en macOS y Linux?
Para listar todas las versiones de node.js, puedes ejecutar el siguiente comando:
nvm ls-remote
La terminal te mostrará algo así:
Si quieres instalar otra versión, vuelves a ejecutar el comando nvm install version
, por ejemplo, vamos a instalar la versión 14:
nvm install 14
Este comando te instalará la versión 14 de node, pero para poder usarlo, debemos ejecutar el siguiente comando:
nvm use 14
Ahora que se instaló la version 14 de node, siempre que se instala una nueva versión, nvm toma como default esa versión recientemente instalada de node en la shell actual, donde se ejecutó el comando de instalación.
Para poder verificar la versión actual, puedes ejecutar el comando `nvm current`, si quieres ver todas las versiones instaladas ejecuta el comando `nvm ls`, el cual lista las versiones instaladas de node.js
¿Cómo instalar node.js con NVM en windows?
Para instalar node.js en windows existen dos opciones similares a NVM, no son lo mismo, pero cumplen con el objetivo de tener varias versiones de node.js para facilitar tu desarrollo de software.
- NVS
- NVM windows
Para usar estos comandos se recomienda hacerlo desde tu power shell de windows con derechos de administrador. También desde una terminal muy buena, y que la puedes descargar del siguiente enlace:
Instalar estas dos herramientas en windows, es mucho más fácil porque tiene sus propios instaladores automáticos.
nvs windows
Primero hay que descargar el instalador del enlace de abajito. NVS de hecho fue creado con inspiracion de NVM y tambien se puede usar en Mac y Linux.
https://github.com/jasongin/nvs/releases
Ahora, la operación confiable de “siguiente”, “siguiente”, “siguiente”, “finalizar”. Una vez instalado, en tu terminal de preferencia ejecuta el comando nvs add [version]
.
nvs add 16
Y para usar una version especifica de node, simplemente en una terminal, ejecuta el comandp nvs use [version]
.
nvs use 16
nvm-windows
Para instalar nvm-windows es también muy fácil, solo descárgate el instalador de aquí.
https://github.com/coreybutler/nvm-windows/releases
Luego, ya sabes, la operación confiable de oprimir el botón next hasta que la instalación esté completa.
Los comandos que puedes utilizar son:
Para instalar una versión de node ocupamos el comando:
nvm install v16
Si tienes más de una versión de node, puedes elegir cuál usar, al igual que en linux y MacOS.`
nvm use v16
Listo ya sabes como instalar node.js en tu máquina, ahora sí, tienes todo lo necesario para empezar a desarrollar en javascript.