DEV Community

Cover image for Cómo crear un paquete de Node
Ayoze Barrera 🇮🇨 for Capua

Posted on • Originally published at Medium

Cómo crear un paquete de Node

Cuando vamos a crear un proyecto nuevo, nos pasamos una gran parte del tiempo copiando y pegando código de antiguos proyectos… ¿para que vamos a reinventar la rueda?

El nacimiento de nuestra librería personal

Para empezar, creamos una carpeta con el nombre del paquete, yo lo llamaré capua-package-sample, y dentro ejecutamos el siguiente comando de npm para generar nuestro package.json:

$ npm init --yes
Enter fullscreen mode Exit fullscreen mode

Este comando te creará un package.json básico extrayendo información de la carpeta donde se ejecuta.

Deberíamos de tener algo parecido a esto:

{
  "name": "capua-package-sample",
  "version": "1.0.0",  
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "Ayoze Barrera",
  "license": "ISC"
}
Enter fullscreen mode Exit fullscreen mode

Fichero principal

Ahora que tenemos el package.json, necesitamos crear el fichero que se usará cuando se importe nuestro paquete. Este fichero se especifica en la propiedad main, y por defecto es index.js.

En este fichero, para nuestro ejemplo, exportaremos cualquier cosa, como por ejemplo una función sencilla:

exports.myAwesomeFunction = function () {
  return 'b' + 'a' + + 'a' + 'a';
}
Enter fullscreen mode Exit fullscreen mode

Esta función debería de devolver «baNaNa».

Ahora solo faltaría subirlo a nuestro repositorio o publicarlo en npm!

Instalando nuestro paquete

Si has publicado el paquete sabrás como instalarlo, pero si no lo has hecho, quizás no sepas… pues es muy fácil, solo tienes que ejecutar el siguiente comando:

$ npm install <git-service>:<git-user>/<repo-name>
Enter fullscreen mode Exit fullscreen mode

Si no rellenamos el servicio, buscará en github por defecto, pero soporta muchos otros… para saber más mira la documentación de npm install.

$ npm install -S github:capua/capua-package-sample
└── capua-package-sample@1.0.0  (git://github.com/capua/capua-package-sample.git#e5903fa2a1e4ee1e751a53fb0aa420cba07e949a)
Enter fullscreen mode Exit fullscreen mode

Y ya solo tendríamos que importarlo:

import { myAwesomeFunction } from 'capua-package-sample';

myAwesomeFunction(); // => "baNaNa"
Enter fullscreen mode Exit fullscreen mode

Nos vemos en la próxima batalla!

Discussion (0)