Publicando pacotes no NPM
O que é NPM
NPM (Node Package Manager) é um gerenciador de pacotes para NodeJs, e também um repositório para compartilhamento do código fonte de pacotes NodeJS. Com ele é possível, instalar, atualizar, controlar versões e dependências de pacotes e também publicar seus pacotes. Publicar pacotes é algo bem simples e importante para difusão da tecnologia e evolução dela, eu publico os meus no npm, veja.
Cadastre-se
Para publicar um pacote no NPM primeiro é necessário que você se cadastre. Existem duas formas de você se cadastrar:
1 – Se cadastrando por linha de comando
Para alguns esta é maneira mais difícil, mas eu discordo. É simples, abra o prompt de comando ou terminal (tenha o nodejs instalado) e execute npm adduser
, ele irá lhe pedir algumas informações como nome de usuário e senha, preencha e estará tudo ok.
2 – Se cadastrando pelo site
A outra forma de se cadastrar é pelo site basta preencher o formulário e clicar em make it so.
Fazendo login
Para que você possa publicar um pacote é necessário que você esteja logado em sua conta a partir de seu computador, para isso execute npm login
, você terá que informar o login e senha, e pronto agora você pode publicar seus pacotes nodejs.
Publicando pacotes
package.json
Para publicar seus pacotes da forma correta é necessário configurar o arquivo package.json da forma correta. Veja abaixo um exemplo para este arquivo:
{
"name": "meu-pacote",
"description": "Descrição sobre o pacote",
"readmeFilename": "README.md" ,
"keywords": [
"minhas",
"palavras",
"chaves"
],
"tags": [
"minhas",
"tags"
],
"version": "0.0.1",
"author": {
"name": "Jayr Alencar",
"email": "jayralencarpereira@gmail.com",
"homepage": "http://www.jayralencar.com.br"
},
"repository": {
"type": "git",
"url": "git+https://github.com/JayrAlencar/sqlite-cipher.js"
},
"dependencies":{
"sql.js":"0.2.0",
"crypto-js":"3.1.5"
},
"license": "MIT",
"engines": {
"node": ">=0.8.0"
},
"main": "index.js"
}
Acho que a descrição de cada propriedade do arquivo já é bem clara, mas mesmo assim vou explicar algumas. readmeFilename
: é seu arquivo leia-me, cujo conteúdo será mostrado na página de seu projeto no site do NPM; main
: este é importantíssimo, pois indica qual é o arquivo principal do seu pacote, aquele que será chamado quando alguém requisitar seu pacote.
Publicando
Enfim, para publicar você só precisa estar na pasta do seu projeto e executar:
npm publish
E Pronto seu pacote será publicado.
Testando
Para testar instale seu pacote usando npm install meu-pacote
Bacana, bem objetivo!
Podia mostrar como criar um pacote global, de forma que possa chamar comandos para criar estrutura de pastas e arquivos por comando. Valeu!
Só atualizando, que antes de publicar (caso se via linha de comando), será necessário verificar o link enviado no e-mail.