@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.jsono 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 whoamipara verificar se está logado, caso obtenha um erro, utilize o comando abaixonpm addusere faça login com sua conta donpmjs
5 years ago