Contribucion al Proyecto
Guía para contribuir al desarrollo de VasakOS. Esto aplica a desarrollos propios o comunitarios dentro del mismo entorno.
Proceso de Contribución
Fork y Clone
|
|
Crea una Rama
|
|
Convención de nombres:
feature/feature-name- Nueva funcionalidadbugfix/bug-name- Corrección de bugrefactor/refactor-name- Refactorizacióndocs/doc-name- Documentaciónchore/chore-name- Tareas sin código funcional
Realiza tus Cambios
Realiza los cambios en el proyecto segun creas conveninete para lo que estes intentando de resolver, recuerda que puedes utilizar varios commit si quieres organizarte pero evita exederte o que los mismos no tengan sentido. Recopila toda la informacion que creas importante para PR y para la documentacion.
Checklist:
- Código sigue lineamientos
- Tests pasan
- Sin errores de linting
- Documentación actualizada
- Commits bien descriptos
Commits
|
|
Formato de mensaje (Conventional Commits):
|
|
Tipos: feat, fix, docs, style, refactor, perf, test, chore
Ejemplo:
|
|
Push y Pull Request
|
|
Template de PR (auto-rellenado):
|
|
Revisión y Feedback
- Los mantenedores revisarán tu PR
- Responde a los comentarios
- Haz cambios si es necesario
- Re-quiere revisión cuando hayas hecho cambios
|
|
Merge
Una vez aprobado:
- Los mantenedores harán merge de tu PR
- Tu branch se puede eliminar
|
|
Tipos de Contribución
Nuevas Funcionalidades
Pasos:
- Discute en un issue primero
- Sigue la arquitectura establecida
- Añade tests
- Documenta el cambio
- Actualiza CHANGELOG
Corrección de Bugs
Pasos:
- Abre un issue describiendo el bug
- Crea rama desde issue
- Reproduce el bug con test
- Arregla el bug
- Test debe pasar
- Documenta la corrección
Documentación
Archivos:
docs/user/*- Para usuarios finales | repodocs/devs/*- Para desarrolladores | repo- README.md - Para repositorio
- Code comments - Dentro del código
Mejoras de Performance
Requerimientos:
- Mide antes (con profiler)
- Implementa mejora
- Mide después (compara)
- Añade benchmark si es crítico
- Documenta cambio
Tests
Tipos:
- Unit tests - Funciones individuales
- Integration tests - Componentes integrados
- E2E tests - Flujo completo del usuario
Ubicación:
src-tauri/tests/- Tests de Rustsrc/tests/- Tests de Vue
Reportes de Bugs
Requiere:
- Descripción clara
- Pasos para reproducir
- Comportamiento esperado vs actual
- Sistema operativo y versión
- Logs relevantes
Código Review
Como Revisor
Verifica:
- El código funciona
- Sigue lineamientos
- Tiene tests
- Está documentado
- No introduce regresiones
- Performance es aceptable
Comentario constructivo:
❌ “Esto está mal”
✅ “Considerar usar X en lugar de Y porque…”
Como Autor
- Responde a todos los comentarios
- No seas defensivo
- Haz cambios si son mejoras
- Explica tu decisión si no estás de acuerdo
- Agradece el feedback
Licencia
Toda contribución debe ser compatible con la licencia del proyecto.
Ver LICENSE en la raíz del proyecto.
Comportamiento Esperado
Código de Conducta
Nos comprometemos a mantener un ambiente respetuoso:
- Sé respetuoso con otros contribuidores
- Acepta crítica constructiva
- Enfócate en el código, no en la persona
- Respeta privacidad
- Reporta abuso
Si Ves Comportamiento Inapropiado
Contacta a los mantenedores directamente (privadamente).
Reconocimiento
- Contribuidores serán reconocidos en CONTRIBUTORS.md
- Commits quedan en el historio de Git
- Releases grandes pueden tener changelog especial
Ayuda y Soporte
Preguntas sobre Contribución
- Abre una Discusión en GitHub
- Pregunta en el chat comunitario (si existe)
No Sabes por Dónde Empezar
Busca issues con label:
good-first-issue- Para nuevos contribuidoreshelp-wanted- Se busca ayudadocumentation- Mejoras de docs
Necesitas Ayuda
- Menciona a mantenedores con @
- Se específico con tu pregunta
- Comparte código/error si es relevante
Cambios que No Aceptamos
❌ No aceptamos:
- Código que rompe compatibilidad sin versión major
- Cambios que requieren librerías propietarias
- Código que no tiene tests
- Documentación incompleta
- Cambios de estilo sin funcionalidad
- Commits enormes sin descripción
✅ Aceptamos:
- Nuevas funcionalidades bien testeadas
- Correcciones de bugs
- Mejoras de performance con evidencia
- Documentación mejorada
- Refactorización que mejora mantenibilidad
- Tests adicionales
Maintenance
Si Eres Mantenedor
Responsabilidades:
- Revisar PRs oportunamente
- Mantener código limpio
- Actualizar documentación
- Moderar comportamiento
- Planificar releases
Merging
|
|
Releases
Versionamiento: MAJOR.MINOR.PATCH
MAJOR- Breaking changesMINOR- Nuevas funcionalidadesPATCH- Bug fixes
Próximos Pasos
- Selecciona una issue o funcionalidad
- Comenta que trabajarás en ello
- Sigue este proceso de contribución
- ¡Gracias por contribuir!
Recursos
Preguntas Frecuentes
P: ¿Puedo trabajar en múltiples cosas simultáneamente? R: Usa ramas diferentes para cada cosa.
P: ¿Cuánto tiempo toma ver mi PR? R: Depende, típicamente 1-3 días.
P: ¿Qué si mi PR es rechazado? R: Se explicarán las razones. Puedes pedir clarificación.
P: ¿Puedo hacer commit directo? R: No, todos pasan por PR (incluso mantenedores).
P: ¿Dónde veo mis contribuciones?
R: En tu perfil GitHub y en git log.
¡Gracias por considerar contribuir a Vasak Desktop! 🎉