Guía de Contribución
EsHTML es un proyecto de código abierto que mejora con cada contribución. Ya sea que reportes un error, sugieras una mejora o contribuyas código, tu ayuda es valiosa.
¡Gracias por tu interés en contribuir a EsHTML! Este proyecto existe para hacer el desarrollo web más accesible a hablantes de español, y cada contribución nos acerca más a ese objetivo.
Formas de Contribuir
Reportar Errores
Encuentra un bug o algo que no funciona como esperabas? Ayúdanos reportándolo.
- • Describe el problema claramente
- • Incluye pasos para reproducirlo
- • Menciona tu entorno (versión, sistema operativo)
Sugerir Mejoras
Tienes ideas para nuevas características o mejoras? Compártelas con nosotros.
- • Explica el caso de uso
- • Describe la solución propuesta
- • Considera alternativas
Contribuir Código
Desarrolla nuevas características, corrige bugs o mejora el código existente.
- • Fork del repositorio
- • Crea una branch para tu cambio
- • Escribe tests cuando sea aplicable
Mejorar Documentación
Ayuda a otros usuarios mejorando guías, tutoriales o ejemplos.
- • Corrige errores o typos
- • Añade ejemplos útiles
- • Mejora explicaciones existentes
Cómo Reportar Problemas
Cuando encuentres un problema, por favor incluye la siguiente información:
1. Descripción del Problema
Explica claramente qué está mal. Qué esperabas que sucediera vs. qué realmente sucedió?
2. Pasos para Reproducir
Proporciona una lista paso a paso de cómo reproducir el problema:
- Ir a...
- Hacer clic en...
- Escribir...
- Ver error...
3. Entorno
Menciona tu configuración:
- • Versión de html-es:
0.1.5 - • Versión de Node.js:
18.0.0 - • Sistema operativo:
macOS / Windows / Linux
4. Código de Ejemplo (si aplica)
Si el problema está relacionado con código específico, incluye un ejemplo mínimo que lo reproduzca.
Cómo Enviar Pull Requests
Para contribuir código al proyecto, sigue estos pasos:
Fork del Repositorio
Haz un fork del repositorio en GitHub y clónalo a tu máquina local.
git clone https://github.com/tu-usuario/es-html.git
cd es-htmlCrea una Nueva Branch
Crea una branch descriptiva para tus cambios:
git checkout -b feature/nombre-descriptivo
# o
git checkout -b fix/descripcion-del-bugConfigura el Entorno de Desarrollo
Instala las dependencias y configura el proyecto:
# Transpilador (html-es)
cd html-es
npm install
npm run build
# Frontend (eshtml)
cd ../eshtml
npm install
npm run devRealiza tus Cambios
Implementa tus cambios siguiendo las guías de estilo del proyecto:
- • Escribe código claro y bien comentado
- • Sigue las convenciones de nombres existentes
- • Añade tests para nuevas características
- • Actualiza la documentación si es necesario
Ejecuta los Tests
Asegúrate de que todos los tests pasen antes de enviar:
npm test
npm run lintCommit y Push
Haz commit de tus cambios con mensajes descriptivos:
git add .
git commit -m "feat: descripción clara del cambio"
git push origin feature/nombre-descriptivoAbre un Pull Request
Ve a GitHub y crea un pull request desde tu branch. Incluye:
- • Descripción clara de los cambios
- • Referencias a issues relacionados
- • Capturas de pantalla si es visual
- • Notas sobre cómo probar los cambios
Guías de Estilo de Código
TypeScript
- • Usa tipos explícitos cuando sea posible
- • Evita el uso de
any - • Sigue las convenciones de ESLint configuradas
- • Documenta funciones públicas con JSDoc
React/Next.js
- • Usa componentes funcionales con hooks
- • Nombra componentes con PascalCase
- • Mantén componentes pequeños y enfocados
- • Usa TypeScript para props de componentes
Mensajes de Commit
Sigue la convención de Conventional Commits:
feat: añade nueva funcionalidadfix: corrige bug en transpiladordocs: actualiza documentaciónstyle: mejora formato del códigorefactor: refactoriza componentetest: añade tests faltantesÁreas de Contribución
EsHTML tiene dos áreas principales donde puedes contribuir:
Transpilador (Backend)
El núcleo del proyecto en TypeScript que convierte EsHTML a HTML.
- • Ubicación:
/html-es - • Lenguaje: TypeScript
- • Tests: Jest
- • Areas: Parser, transpilador, validación
Sitio Web (Frontend)
La plataforma educativa con documentación, playground y tutoriales.
- • Ubicación:
/eshtml - • Framework: Next.js + React
- • Estilos: Tailwind CSS
- • Areas: UI, docs, ejemplos, playground
Dudas?
Si tienes preguntas sobre cómo contribuir o necesitas ayuda con tu pull request, no dudes en contactar: