Este documento define cómo vamos a trabajar durante el desarrollo del proyecto.
El objetivo es mantener foco en valor, claridad técnica y un historial limpio.
No es burocracia: es una forma de reducir fricción y escalar mejor.
- Entregar valor identificable en cada versión
- Separar experimentación de entregas estables
- Mantener un historial de Git claro y profesional
- Evitar deuda técnica innecesaria
-
Las releases entregan valor Cada versión debe poder explicarse en una frase clara.
-
Los commits describen cambios técnicos El “por qué” vive en la release, el “cómo” en el commit.
-
La experimentación es válida El desorden vive fuera de
main. -
El historial importa Git es una herramienta de comunicación, no solo de backup.
mainrepresenta el estado estable del proyecto- Solo recibe código que:
- Compila
- Es entendible
- Aporta valor claro
Cada feature o mejora significativa vive en su propio branch: con un comando mas profesional
git switch -c v0.0.xFormato:
type(scope): short description
- feat → nueva funcionalidad
- chore → setup, tooling, limpieza
- docs → documentación
- fix → corrección de bug
- refactor — cambio interno sin alterar funcionalidad
- 1 commit = 1 idea técnica
- Mensajes claros, sin épica
- El valor se comunica en la release, no en el commit
feat(audio): scan device storage for mp3 files
feat(audio): read basic mp3 metadata
feat(ui): render song list
chore(project): adjust expo config
fix(audio): handle missing metadata gracefully
refactor(audio): simplify metadata parser
-
commit → Estandarizamos commits con el fin de entender los avances y la entrega de calidad constante en caso de algun error, volvemos y revertimos commit
-
clean architecture → Estandarizamos nuestra estructura del back end alineandonos con la clean architecture y manejar mejor los servicios del backend buscando escalabilidad para implementar features rapidamente.