Desarrollo open source de MeshCore
Como la comunidad MeshCore colabora en el desarrollo open source: licencias, contribuciones y flujo de desarrollo
Por que MeshCore es open source?
MeshCore es software open source: el codigo fuente completo esta disponible publicamente en GitHub. Cualquiera puede revisar, usar, modificar y mejorar el codigo. Esta decision deliberada promueve transparencia, seguridad y desarrollo impulsado por la comunidad.
Open source no significa solo que el codigo esta disponible, sino tambien que una comunidad activa de desarrolladores, usuarios y entusiastas colabora en mejoras. Todos pueden contribuir: desde reportar bugs hasta implementar nuevas funciones.
Esta pagina explica como funciona el proceso de desarrollo open source, como puedes contribuir y los beneficios de participar.
Licencia y filosofia
Licencia MIT (permisiva)
El firmware de MeshCore utiliza la licencia MIT, una de las licencias open source mas permisivas. Puedes usar el codigo para cualquier proposito, incluyendo aplicaciones comerciales.
Libertades: usar, copiar, modificar, distribuir, sublicenciar
GPL para ciertos componentes
Algunos componentes usan GPL (copyleft). Si incorporas estos componentes en tu propio proyecto, tambien debes publicar tu codigo como open source bajo GPL.
Copyleft: las obras derivadas tambien deben ser GPL
Filosofia open source
MeshCore adopta principios open source: transparencia, colaboracion, propiedad comunitaria. La red pertenece a todos, no a una sola empresa u organizacion.
Formas de contribuir
No necesitas ser un desarrollador con experiencia para contribuir. Hay formas para cada nivel:
Reportes de bugs
Reporta bugs, cierres inesperados o comportamiento no esperado via GitHub Issues. Los buenos reportes de bugs ayudan muchisimo.
Documentacion
Mejora la documentacion, escribe tutoriales, crea guias en video. La documentacion es tan importante como el codigo.
Pruebas
Prueba nuevas versiones, explora casos limite, verifica que los arreglos funcionen correctamente. Los testers son cruciales.
Contribuciones de codigo
Arregla bugs, implementa funciones, optimiza rendimiento. Cada pull request es bienvenida.
Diseno UI/UX
Mejora la interfaz de la app, crea mockups para nuevas funciones, prueba usabilidad.
Traducciones
Traduce la app, el firmware y la documentacion a otros idiomas. Ayuda a que MeshCore este disponible en todo el mundo.
Flujo de desarrollo
Haz un fork del repositorio
Crea un fork del repositorio de MeshCore en GitHub. Esta es tu propia copia donde puedes experimentar libremente.
Crea una rama
Crea una rama nueva para tu funcion o bugfix. Usa nombres descriptivos como "fix-routing-bug" o "add-telemetry-sensor".
Escribe codigo y prueba
Implementa tu cambio y prueba a fondo. Asegura que la funcionalidad existente siga funcionando. Agrega comentarios para codigo complejo.
Envia un pull request
Envia un pull request al repositorio principal. Describe que cambiaste y por que. Enlaza a issues relevantes.
Revision de codigo y merge
Los maintainers revisan tu codigo, dan retroalimentacion y hacen merge al aprobarlo. Este proceso puede ser iterativo con varias rondas de revision.
Beneficios del open source
Seguridad
Todos pueden auditar el codigo. Sin backdoors ocultos ni violaciones de <a href="/es/configuracion-privacidad-radio-mesh/">privacidad</a>.
Innovacion rapida
Cientos de desarrolladores en todo el mundo contribuyen. La innovacion avanza mucho mas rapido que con codigo cerrado.
Propiedad comunitaria
El proyecto pertenece a la comunidad, no a una sola empresa. Existira mientras los usuarios lo quieran.
Plataforma de aprendizaje
Aprende del codigo, experimenta, mejora tus habilidades. El open source es una excelente forma de aprender.
Personalizacion
Adapta el software a tu caso de uso especifico. Sin vendor lock-in.
Gratis
Sin costos de licencia, sin suscripciones. Completamente gratis de usar, ahora y para siempre.
Preguntas frecuentes
Necesito saber C++ para contribuir?
No necesariamente. Puedes contribuir con reportes de bugs, documentacion, pruebas y traducciones sin conocimientos de programacion. Para contribuciones de codigo si necesitas conocimiento de C/C++.
Quien decide que funciones se aceptan?
Los maintainers centrales revisan los pull requests y deciden si se aceptan. Consideran la calidad del codigo, si encaja con el roadmap y si rompe funcionalidad existente.
Puedo usar el codigo en mi producto comercial?
Si, la licencia MIT permite uso comercial. Considera que algunos componentes son GPL, lo cual requiere que tambien hagas tu codigo open source.
Cada cuanto se revisan los pull requests?
Los maintainers procuran responder a los pull requests en 1-2 semanas. En periodos ocupados puede tardar mas. Se agradece la paciencia.
Hay un chat de comunidad para desarrolladores?
Si, hay un servidor de Discord activo donde desarrolladores y usuarios hacen preguntas, comparten ideas y colaboran.
Puedo hacer un fork y agregar mis propias funciones?
Claro. Ese es todo el punto del open source. Puedes hacer un fork, agregar funciones que no se acepten en la rama principal y distribuir tu propia version (segun los terminos de la licencia).
Se parte de la comunidad
MeshCore crece gracias a contribuciones de la comunidad. Cada aporte ayuda: desde un simple reporte de bug hasta una gran implementacion de funciones. Unete a la comunidad!