Contribuir
svg-engine es open source (Apache-2.0) y las contribuciones son bienvenidas — código, plugins, reportes de bugs, documentación y traducciones.
Esta página trata de contribuir a la librería. El repositorio es github.com/mosaicoo/svg-engine.
Obtén el código
Sección titulada «Obtén el código»git clone https://github.com/mosaicoo/svg-enginecd svg-enginenpm installScripts comunes (workspace Angular):
npm run build:lib # build de la librería (ng-packagr)npm start # levanta el playground (app de referencia) en :4200npm run test:lib # ejecuta la suite de tests de la librería (build de la lib antes)npm run lint # eslint + angular-eslinttest:lib corre contra la librería ya compilada, así que ejecuta build:lib
antes. Se requiere Node ^20.19 || ^22.12 || >=24 (mira el campo engines del
paquete).
Estructura del repositorio
Sección titulada «Estructura del repositorio»projects/svg-engine/— la librería y sus entry points (core,render,io,optimize,edit,ui,ai/*).projects/playground/— la app de referencia que ejercita todos los modos de consumo.projects/svg-studio/— la app studio standalone (la demo en vivo).
Los docs de desarrollo del propio repositorio viven en docs/ y evolucionan con
el código — trata el repositorio como la fuente de verdad. Empieza por el
CONTRIBUTING.md.
Formas de contribuir
Sección titulada «Formas de contribuir»- Escribe un plugin — añade una tool, importer/exporter, efecto, paleta, menú o atajo sin tocar el core. Mira Plugins.
- Reporta un bug o haz una pregunta — abre un issue; el repositorio ofrece issue forms para bug report, feature request, documentación y preguntas.
- Mejora la documentación — tanto la de la librería como este sitio.
Pull requests
Sección titulada «Pull requests»- Crea una rama desde
main, mantén los cambios enfocados y asegúrate de quenpm run test:libynpm run lintpasen. - Sigue los Conventional Commits en inglés
(
feat:,fix:,docs:,refactor:,perf:,test:,chore:). - Los PRs se fusionan por squash, así que el título del PR se convierte en el mensaje del commit — haz de él una buena línea Conventional Commit.
- El comportamiento nuevo debe venir con tests.
Seguridad
Sección titulada «Seguridad»Por favor, reporta las vulnerabilidades de forma privada, no en un issue público.
Usa el Private Vulnerability Reporting
de GitHub, que es el proceso descrito en el SECURITY.md del repositorio.
Las advisories conocidas se listan allí. En el release actual, las únicas
advisories conocidas están en la cadena de dependencia opcional
@huggingface/transformers, así que afectan solo a apps que usan el entry
point ai/nlu-voice-wasm — los proyectos que no usan voz on-device no se ven
afectados.