balzer-icon
v0.16.1
Published
    {
return (
<Icon name="home" size={24} color="#000" />
);
}Estrutura do projeto
balzer-icon/
├── lib/ # Componentes principais
│ └── Icon.tsx
├── lib/svg/ # SVGs base e índice gerado
├── utils/
│ └── generateNames.js # Script de geração automática
├── docs/ # Documentação (GitHub Pages)
├── dist/ # Build publicado no npm
├── vite.config.ts
├── vite.config.docs.ts
├── package.jsonComo adicionar um novo ícone
1. Adicionar o SVG
Coloque o arquivo em:
lib/svg/Exemplo:
lib/svg/user.svgImportante:
<path fill="currentColor" />ou
<path stroke="currentColor" />Evite cores fixas como fill="#000" ou stroke="#000", porque isso impede que a prop color do componente altere a cor do ícone.
2. Gerar o mapeamento
yarn namesEsse comando atualiza automaticamente a lista de ícones.
3. Testar localmente
yarn devOu visualizar docs:
yarn preview:docsBuild
Build da biblioteca:
yarn buildOutput:
dist/Build da documentação:
yarn build:docsOutput:
docs/Deploy
Deploy automático ocorre em:
- push na branch main
- criação de release
- execução manual do workflow
Versionamento
Este projeto usa Conventional Commits.
feat
Nova funcionalidade
git commit -m "feat: add new icons"fix
Correção
git commit -m "fix: correct icon rendering"chore
Manutenção
git commit -m "chore: update dependencies"docs
Documentação
git commit -m "docs: update readme"refactor
Refatoração
git commit -m "refactor: improve icon loader"breaking change
git commit -m "feat!: change icon API"Fluxo completo
# adicionar ícone
lib/svg/new-icon.svg
# gerar nomes
yarn names
# testar
yarn dev
# commit
git add .
git commit -m "feat: add new icon"
# push
git push origin mainDesenvolvimento local
yarn install
yarn devArquitetura interna
A biblioteca é construída usando:
- Vite (build tool)
- TypeScript
- Rollup (via Vite)
- SVG como fonte primária
- geração automática de tipos
- output em ESModule e UMD
Fluxo interno:
SVG → generateNames → Icon component → Vite build → dist → npm publishReact é definido como peerDependency para evitar duplicação.
Contribuição
Passos:
git clone https://github.com/CesarBalzer/balzer-icon
cd balzer-icon
yarn installCriar branch:
git checkout -b feat/new-iconsAdicionar ícones e gerar nomes:
yarn namesCommit:
git commit -m "feat: add new icons"Push:
git push origin feat/new-iconsCriar Pull Request.
Licença
MIT
Autor: Cesar Balzer
