Bienvenido al repositorio de Dogtorhouse, una plataforma ecommerce para productos de mascotas. Este es un monorepo que contiene tanto el frontend como el backend del proyecto.
El repositorio está organizado de la siguiente manera:
dogtorhouse/
├── frontend/
│ ├── src/
│ ├── public/
│ ├── package.json
│ └── ...otros archivos de configuración del frontend
├── backend/
│ ├── src/
│ ├── tests/
│ ├── package.json
│ └── ...otros archivos de configuración del backend
├── .gitignore
├── README.md
└── ...otros archivos de configuración del proyecto
Utilizamos las siguientes ramas para organizar nuestro flujo de trabajo:
- main: Contiene la última versión estable del código.
- develop: Rama de integración para ambas partes, frontend y backend. Todas las características y correcciones se integran aquí antes de ser liberadas.
- dev/nombre-desarrollador: Cada desarrollador trabaja en su propia rama basada en
develop
. - release/x.y: Utilizadas para la preparación final de una nueva versión.
-
Crear una rama personal desde
develop
:git checkout develop git pull origin develop git checkout -b dev/tu-nombre git push -u origin dev/tu-nombre
-
Trabajar en una característica o corrección:
- Crear una rama de características desde la rama personal.
git checkout dev/tu-nombre git pull origin dev/tu-nombre # Para frontend: git checkout -b feature/frontend/nuevo-carrito # Para backend: git checkout -b feature/backend/nueva-api # Realizar cambios y commits git commit -m "feat: [frontend] agregar funcionalidad de carrito de compras" git commit -m "feat: [backend] agregar nueva API" git push -u origin feature/frontend/nuevo-carrito git push -u origin feature/backend/nueva-api
-
Realizar un pull request (PR) a
develop
:- Desde la interfaz de GitHub, crear un PR desde
feature/frontend/nuevo-carrito
haciadevelop
y otro desdefeature/backend/nueva-api
haciadevelop
. - Revisar y fusionar los cambios en
develop
.
- Desde la interfaz de GitHub, crear un PR desde
-
Preparar una nueva versión:
git checkout develop git pull origin develop git checkout -b release/1.0 git push -u origin release/1.0
-
Fusionar la versión en
main
:- Crear un PR desde
release/1.0
haciamain
. - Revisar y fusionar los cambios en
main
. - Etiquetar la versión en
main
.
git tag -a v1.0 -m "Versión 1.0" git push origin v1.0
- Crear un PR desde
-
Hotfixes:
- Crear una rama de hotfix desde
main
para corregir errores críticos.
git checkout main git pull origin main git checkout -b hotfix/correccion-critica # Realizar cambios y commits git commit -m "hotfix: corregir error crítico de autenticación" git push -u origin hotfix/correccion-critica
- Crear un PR desde la rama de hotfix hacia
main
ydevelop
. - Revisar y fusionar los cambios en ambas ramas.
- Crear una rama de hotfix desde
Para mantener un historial de commits claro y consistente, utilizamos la siguiente convención de mensajes de commits:
- Características:
feat: descripción de la característica
- Ejemplo:
feat: agregar funcionalidad de carrito de compras
- Ejemplo:
- Corrección de errores:
fix: descripción del error corregido
- Ejemplo:
fix: corregir bug en la página de checkout
- Ejemplo:
- Hotfixes:
hotfix: descripción del error crítico corregido
- Ejemplo:
hotfix: corregir error crítico de autenticación
- Ejemplo:
- Mejoras de rendimiento:
perf: descripción de la mejora
- Ejemplo:
perf: optimizar carga de imágenes
- Ejemplo:
- Cambios de estilo:
style: descripción del cambio de estilo
- Ejemplo:
style: mejorar el diseño del header
- Ejemplo:
- Refactorización:
refactor: descripción del refactor
- Ejemplo:
refactor: reorganizar el componente de productos
- Ejemplo:
- Documentación:
docs: descripción del cambio en la documentación
- Ejemplo:
docs: actualizar el README con instrucciones de instalación
- Ejemplo:
Para trabajar de manera independiente en el frontend o backend, utiliza los siguientes comandos:
cd frontend
npm install
npm start
cd backend
npm install
npm run dev
Para más detalles, consulta los respectivos README.md
en las carpetas frontend
y backend
.
- Diseño UX/UI
- A
- Frontend:
- A
- Backend:
- Lorenzo Esteban Baeza Núñez
- Aplicaciones Móviles
- A
¡Gracias por tu interés en contribuir a Dogtorhouse! Para comenzar, por favor lee nuestras Guías de Contribución y el Código de Conducta.
Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.