Una vez creado el proyecto, tal y como vimos en la anterior entrega, toca ahora instalar los paquetes que vamos a necesitar así como las dependencias necesarias para poder hacer funcionar la aplicación.

Vamos a comenzar con la instalación de Express.js. Para ello abriremos la consola de comandos elegida y ejecutaremos el siguiente comando:

“npm install express  –save”

Le vamos a dar a “enter” para que se instale Express.js que cómo ya debes saber, se trata de un módulo que nos permite:

  • Trabajar con el protocolo HTTP.
  • Tener acciones.
  • Tener un sistema de ruta.
  • Tener una serie de middlewares (lógica de intercambio de información) que nos va a permitir para trabajar con HTTP.
  • Y muchas más cosas …

Para que Express quede completamente integrada, además hay que añadir una dependencia de express al package.json y quedaría tal que así:

"dependencies": {
  "express": "4,14,0";
};

Una vez instalado este paquete aquí en la carpeta debemos instalar ahora un segundo paquete que va a ser socket.io que nos va a permitir hacer las conexiones en tiempo real, crear los sockets, etc. Para ello, en la consola de comandos de Windows añadimos el siguiente código en la consola de comandos.

“npm install socket.io –save -d”

Este socket nos va a permitir hacer las conexiones en tiempo real, crear los sockets, etc.  Que como tú sabes se trata de un paquete que nos permite pues tener un log de los cambios realizados en el código de  Node.js. Así actúa el socket y actualiza para que los cambios sean visibles sin necesidad de actualizar manualmente. Habrá que añadir las dependencias también

"dependencies": {
  "express": "4,14,0",
  "socket.io":"1,7,1",
};

Por último, la instalación de Nodemon, otra de las librerías encesarias para hacer funcionar la aplicación web de chat. Ejecutamos el comando:

“npm install nodemon –save-dev”

El -dev crea una dependencia para la máquina de desarrollo por lo que no valdrá para otros entornos. Nodemon es, por tanto una herramienta de desarrollo. añadimos también las dependencias, pero indicando que sólo será válido para desarrollo.

"dependencies": {
  "express": "^4,14,0",
  "socket.io":"^1,7,1"
};
"DevDependencies":{
  "nodemon": "^1.11.0"
}

A continuación debemos añadir un campo nuevo llamado “scripts” en el que añadiremos dos nuevas propiedades. Una llamada “test” lanzada al usar el comando “npm test” que mostará por pantalla un error y saldrá de la aplicación. Añadiremos otra línea llamada “start” que se lanzará cuando usemos el comando “npm start” y queremos que abra Nodemon.js. No te preocupes, ahora te dejamos como va el package.json por el momento:

package.json{
  "name": "curso-sockets",
  "version": "1.0.0";
  "description": "Proyecto de chat con Node y Socket.io",
  "end point": "(index.js)",
  "author": Alberto Vela (developeando.net)"
  "scripts":{
    "start": "nodemon server/index.js"
    "test": "echo \"Error: No se ha especificado Test\" && exit 1"
  }
  "dependencies": {
    "express": "^4,14,0",
    "socket.io":"^1,7,1"
  };
  "DevDependencies":{
    "nodemon": "^1.11.0"
  }
}