25 jun

node.js: Instalación local de los módulos con package.json

Hemos visto en un post anterior como usabamos express para hacer todo un scaffolding de nuestra aplicación haciendo uso del comando express nombre-de-la-app y luego el comando npm install. En los siguientes ejemplos usamos como template engine a hbs, a diferencia de lo que nos permite express en su instalación por defecto que utiliza jade. Por ende esta instalación no nos sirve. Sin embargo sería muy util hacer una instalación local de los módulos que vamos a utilizar por una simple cuestión de portabilidad.

Con el primer comando express creamos la estructura de carpetas y el archivo json. Esta es la principal utilidad para hacer la instalación de los módulos. El archivo en cuestión tiene la siguiente estructura:

{ "name": "application-name", "version": "0.0.1", "private": true, "scripts": { "start": "node app.js" }, "dependencies": { "express": "3.2.6", "jade": "*" } }

Como podemos ver, en el último elemento “dependencies” nos está diciendo los módulos que va a instalar cuando se ejecute el comando npm install. En la documentación de Express podemos encontrar que podemos setear las dependencias desde el comando express: Sabemos que Express tiene la capacidad de crear el scaffolding con los pre procesadores de html y css que le indiquemos. Por ej:

express –sessions –css less –template ejs myapp

Lo que hace esto es hacer una instalación de express con soporte para sessions, less como motor de css y ejs como motor de template. Generando este json:

{ "name": "application-name", "version": "0.0.1", "private": true, "scripts": { "start": "node app.js" }, "dependencies": { "express": "3.2.6", "jade": "*", "less-middleware": "*" } }

Lo lógica indica que deberíamos poder hacer una instalación de igual manera con hbs. Desgraciadamente, al día de escribir este post, eso no es posible.

Lo que si podemos hacer es crear un package.json “from the scratch”:

{ "name": "pkg-example", "version": "0.0.1", "dependencies": { "express": "3.1.x", "hbs":"*" } }

Creamos este archivo en la carpeta de nuestro proyecto, y luego simplemente en la consola tipeamos

npm install

Luego encontraremos la carpeta node_modules con los dos modulos: express y hbs. Tal como se lo indicamos en el “dependencies” de nuestro json.

Claramente allí podemos agregar todos los módulos que necesitemos. Es necesario familiarizarse con estos archivos de configuración porque son sumamente necesarios y sumamente utilizados.

Sumamente útil tener siempre a mano el cheatsheet o chuleta del packaje.json



Comments are closed.



Contacto