@dsystem/design-system v0.0.1
DesignSystem
Links úteis:
Após criar o repositorio
1 - Instale o lerna globalmente com: npm i lerna -g
Para testar, verifiquei se o comando lerna --help
tem resultado.
2 - Crie o arquivo lerna.json
no repositório principal com o seguinte conteudo:
{
"version": "independent",
"npmClient": "npm",
"command": {
"publish": {
"ignoreChanges": [
"ignored-file",
"*.md"
],
"message": "chore(release): publish"
},
"bootstrap": {
"ignore": "component-*",
"npmClientArgs": [
"--no-package-lock"
]
}
},
"packages": [
"src/*"
]
}
2 - Adicione o escopo da organização ao repositorio usando:
npm init --scope=@my-org
onde @my-org
é o nome da organização no npmjs
. o @
é obrigatório.
Estrutura de pastas para pacotes:
A estrutura base deve ser /src/nome-do-pacote
, e dentro dessa pasta deve conter o package.json
Dessa maneira:
design-system/src/nome-do-pacote
package.json
o conteudo do package.json
segue o seguinte padrão, onde:
@nome-da-org
é o nome da organização, por exemplo:
{
"name": "@nome-da-org/nome-do-pacote",
"version": "0.0.1",
"private": false
}
Para publicar pacotes
Crie seu pacote, conforme a estrutura acima, e para publicar siga os passos:
Observações:
- As alterações que deseja publicar, devem estar comitadas e não pode ter arquivos alterados e não comitados no projeto.
1 - Rode o comando npm publish
para pacotes privados ou npm publish --access public
para publicar pacotes publicos.
2 - Ele vai abrir um menu para selecionar a nova versão do pacote, e isso para todos os pacotes alterados que precisam ser publicados. Por exemplo: Select a new version for @geisiaa/app (currently 0.0.1) (Use arrow keys)
Leia mais em: semver.org - versionamento semantico
3 - Selecione uma versão para atualizar o pacote especificado
4 - Ele pergunta se você quer publicar os pacotes, e lhe mostra o nome dos pacotes a serem publicados, digite y
para publicar.
5 - Se a resposta for: lerna success published 1 packages
e o valor de pacotes for maior que 0, você obteve sucesso em publicar o pacote.
6 - Para instalar o pacote em outro projeto ficaria:
npm i @nome-da-org/nome-do-pacote
Erros comuns
- Make sure you're authenticated properly ¯_(ツ)_/¯
Erro erro é devido a falta de autenticação, para corrigir:
utilizei
npm whoami
para verificar se está logado, caso obtenha um erro, utilize o comando abaixonpm adduser
e faça login com sua conta donpmjs
4 years ago