Contribuindo
O svg-engine é open source (Apache-2.0) e contribuições são bem-vindas — código, plugins, relatos de bug, documentação e traduções.
Esta página é sobre contribuir com a library. O repositório é github.com/mosaicoo/svg-engine.
Obtenha o código
Seção intitulada “Obtenha o código”git clone https://github.com/mosaicoo/svg-enginecd svg-enginenpm installScripts comuns (workspace Angular):
npm run build:lib # build da library (ng-packagr)npm start # sobe o playground (app de referência) na :4200npm run test:lib # roda a suíte de testes da library (buildar a lib antes)npm run lint # eslint + angular-eslintO test:lib roda contra a library já buildada, então rode o build:lib antes.
É exigido Node ^20.19 || ^22.12 || >=24 (veja o campo engines do pacote).
Layout do repositório
Seção intitulada “Layout do repositório”projects/svg-engine/— a library e seus entry points (core,render,io,optimize,edit,ui,ai/*).projects/playground/— o app de referência que exercita todos os modos de consumo.projects/svg-studio/— o app studio standalone (a demo ao vivo).
Os docs de desenvolvimento do próprio repositório ficam em docs/ e evoluem com o
código — trate o repositório como a fonte da verdade. Comece pelo
CONTRIBUTING.md.
Formas de contribuir
Seção intitulada “Formas de contribuir”- Escreva um plugin — adicione uma tool, importer/exporter, efeito, paleta, menu ou atalho sem tocar no core. Veja Plugins.
- Relate um bug ou tire uma dúvida — abra uma issue; o repositório oferece issue forms para bug report, feature request, documentação e perguntas.
- Melhore a documentação — tanto a da library quanto este site.
Pull requests
Seção intitulada “Pull requests”- Crie um branch a partir de
main, mantenha as mudanças focadas e garanta quenpm run test:libenpm run lintpassem. - Siga os Conventional Commits em inglês
(
feat:,fix:,docs:,refactor:,perf:,test:,chore:). - Os PRs são mesclados por squash, então o título do PR vira a mensagem do commit — faça dele uma boa linha Conventional Commit.
- Comportamentos novos devem vir com testes.
Segurança
Seção intitulada “Segurança”Por favor, relate vulnerabilidades de forma privada, e não em uma issue pública.
Use o Private Vulnerability Reporting
do GitHub, que é o processo descrito no SECURITY.md do repositório.
As advisories conhecidas ficam listadas lá. No release atual, as únicas advisories
conhecidas estão na cadeia de dependência opcional @huggingface/transformers,
então afetam apenas apps que usam o entry point ai/nlu-voice-wasm — projetos
que não usam voz on-device não são afetados.