Front End

23 mai, 2024

Como publicar um pacote no npm; apresentando sua biblioteca para o mundo

Publicidade

Todos nós que gostamos muito da linguagem JavaScript com certeza usamos centenas – para não dizer milhares – de pacotes/bibliotecas incríveis em nossos projetos. A maior parte destes pacotes vem do npm registry, site onde ficam armazenados os pacotes que são baixados quando usamos gerenciadores de pacotes com o npm, yarn e afins:

npm i express

Versão em vídeo
Caso queira acompanhar este material em formato de vídeo, basta acessar este link!
https://www.youtube.com/watch?v=BO-h1i-n8aM

Continuando…. Mas e se ao invés de querer usar um pacote que está lá, nós quisermos publicar um pacote lá? Ou seja, publicar uma biblioteca para que nossos amigos, familiares e devs do mundo inteiro possam usar? É possível? É de graça? Sim e sim!

Claro que o primeiro passo para publicar um projeto é você tem um projeto, rs. Neste caso, vamos criar um pequeno módulo chamado feriadao que nos ajudará a descobrir se determinado dia é ou não feriado.

Para simplificar, faremos tudo em um arquivo só, o index.js:

const holidays = [

  { date: "1/1/2024", name: "Confraternização Universal" },

  { date: "2/10/2024", name: "Carnaval" },

  { date: "3/29/2024", name: "Páscoa" },

  { date: "4/21/2024", name: "Tiradentes" },

  { date: "5/1/2024", name: "Dia do trabalho" },

  { date: "5/30/2024", name: "Corpus Christi" },

  { date: "9/7/2024", name: "Independência do Brasil" },

  { date: "10/12/2024", name: "Nossa Senhora Aparecida" },

  { date: "11/2/2024", name: "Finados" },

  { date: "11/15/2024", name: "Proclamação da República" },

  { date: "12/25/2024", name: "Natal" }

];

function isItHolidayToday() {

  const today = new Date().toLocaleDateString("en-us");

const holiday = holidays.find((holiday) => holiday.date === today)

  if (holiday) return `Sim, hoje é ${holiday.name} 🥳`;

  return "Não, não é 😢";

}

module.exports = { isItHolidayToday };

npm

Depois de criar o projeto, você precisará criar uma conta no site da npm. Ela pode ser criada neste link npm | Sign Up. Você conseguirá acessar a página da sua conta. Maravilha. Mas o que precisamos agora na verdade é logar no npm através do terminal. Para fazer isso, use o comando:

 npm login

O seu navegador abrirá para que você possa fazer o login. Depois de finalizar, você pode usar o comando abaixo para descobrir se o login foi bem sucedido:

 npm whoami

Agora vem a parte divertida. Para publicar o seu projeto, basta usar o comando:

 npm publish

Se tudo der certo, você verá uma tela semelhante a esta:

Depois de publicado, podemos usá-lo dentro dos nossos projetos! Basta instalar da mesma forma como você sempre fez, usando:

 npm i **nomedoseupacote**

Como neste exemplo, onde temos uma API que usa esse código:

const express = require("express");

const { isItHolidayToday } = require("feriadao");

const app = express();

app.get("/holiday", (req, res) => {

  const holiday = isItHolidayToday();

  res.send(holiday);

});

app.listen(5000, () => console.log(`Server is up and running!`));

 

Referências