Skip to content

Commit 66ee788

Browse files
committed
docs: agregar CONTRIBUTING.md y centrar header y footer del README
1 parent 57f7dbd commit 66ee788

2 files changed

Lines changed: 117 additions & 3 deletions

File tree

CONTRIBUTING.md

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# Guía de Contribución
2+
3+
Gracias por tu interés en contribuir. Este documento describe el proceso y las convenciones del proyecto para mantener un flujo de trabajo ordenado y consistente.
4+
5+
---
6+
7+
## Configuración del entorno
8+
9+
```bash
10+
git clone https://github.com/WorkTeam01/team-practice.git
11+
cd team-practice
12+
pip install -r requirements.txt
13+
14+
# Verificar que todo funciona
15+
pytest -v
16+
```
17+
18+
---
19+
20+
## Flujo de trabajo
21+
22+
Este proyecto sigue **Git Flow**. Todo el desarrollo ocurre en `dev`; `main` solo recibe merges de releases estables.
23+
24+
### 1. Crear una rama desde `dev`
25+
26+
```bash
27+
git checkout dev
28+
git pull origin dev
29+
git checkout -b <tipo>/nombre-descriptivo
30+
```
31+
32+
| Prefijo | Cuándo usarlo |
33+
| ------------ | ---------------------------------------- |
34+
| `feature/` | Nueva funcionalidad |
35+
| `bugfix/` | Corrección de un error |
36+
| `hotfix/` | Corrección urgente directamente en `main`|
37+
| `release/` | Preparación de una nueva versión |
38+
39+
### 2. Desarrollar y hacer commits
40+
41+
Sigue el formato de [Conventional Commits](https://www.conventionalcommits.org/):
42+
43+
```
44+
<tipo>: <descripción breve en imperativo>
45+
```
46+
47+
| Tipo | Cuándo usarlo |
48+
| ------------ | --------------------------------------------------- |
49+
| `feat` | Nueva funcionalidad |
50+
| `fix` | Corrección de bug |
51+
| `test` | Agregar o modificar tests |
52+
| `docs` | Cambios en documentación |
53+
| `refactor` | Cambios de código sin afectar comportamiento |
54+
| `style` | Formato, espaciado, nombres (sin cambios de lógica) |
55+
| `chore` | Tareas de mantenimiento, dependencias, CI |
56+
57+
**Ejemplos:**
58+
```
59+
feat: agregar función de historial de operaciones
60+
fix: corregir validación de paréntesis desbalanceados
61+
test: cubrir casos borde en abs_value con negativos
62+
```
63+
64+
### 3. Abrir un Pull Request
65+
66+
- La rama destino siempre es `dev` (nunca directamente a `main`)
67+
- Usa la plantilla de PR del repositorio
68+
- Referencia el issue relacionado con `Closes #<número>`
69+
- Ejecuta los tests antes de hacer push:
70+
71+
```bash
72+
pytest -v
73+
```
74+
75+
### 4. Code review
76+
77+
- Todo PR requiere al menos una aprobación antes de mergear
78+
- Responde los comentarios y realiza los cambios solicitados
79+
- No hagas force push a una rama que ya tiene un PR abierto
80+
81+
---
82+
83+
## Reportar issues
84+
85+
Usa las plantillas disponibles en GitHub según el caso:
86+
87+
- **Reporte de error** — para bugs o comportamiento inesperado
88+
- **Mejora de función** — para proponer cambios en funcionalidad existente
89+
- **Nueva funcionalidad** — para proponer features nuevas
90+
- **Sugerencia general** — para ideas o discusiones abiertas
91+
92+
---
93+
94+
## Estándares de código
95+
96+
- **Estilo:** [PEP 8](https://pep8.org/)
97+
- **Docstrings:** [PEP 257](https://peps.python.org/pep-0257/) — todas las funciones públicas deben tenerlos
98+
- **Tests:** Toda nueva funcionalidad debe incluir tests en `tests/`. Los tests de GUI deben usar los mocks de `conftest.py` para ser ejecutables sin pantalla
99+
100+
---
101+
102+
## Preguntas
103+
104+
Si tienes dudas, abre un issue con la plantilla de **sugerencia general** o comenta directamente en el PR correspondiente.

README.md

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
<div align="center">
2+
13
# Team Practice — Calculadora con GUI
24

35
[![CI/CD](https://github.com/WorkTeam01/team-practice/actions/workflows/ci.yml/badge.svg)](https://github.com/WorkTeam01/team-practice/actions/workflows/ci.yml)
@@ -6,6 +8,8 @@
68

79
Calculadora colaborativa con interfaz gráfica (GUI) e interfaz de línea de comandos (CLI), desarrollada en Python con testing automatizado y pipeline de CI/CD. El proyecto sirve como entorno de práctica para flujo de trabajo en equipo, Git Flow y buenas prácticas de desarrollo.
810

11+
</div>
12+
913
---
1014

1115
## Instalación
@@ -178,14 +182,20 @@ El proyecto sigue [versionamiento semántico](https://semver.org/). Ver [CHANGEL
178182

179183
---
180184

185+
<div align="center">
186+
181187
## Autores
182188

183-
- [@Jandres25](https://github.com/Jandres25) — Coordinador, GUI, CI/CD, testing, paréntesis
184-
- [@Jhos3ph](https://github.com/Jhos3ph) — Funciones científicas, lógica, refactoring, bug fixes
185-
- [@alexricardotapiacarita-ai](https://github.com/alexricardotapiacarita-ai) — Diseño GUI, documentación, UX
189+
[@Jandres25](https://github.com/Jandres25) — Coordinador, GUI, CI/CD, testing, paréntesis
190+
&nbsp;·&nbsp;
191+
[@Jhos3ph](https://github.com/Jhos3ph) — Funciones científicas, lógica, refactoring, bug fixes
192+
&nbsp;·&nbsp;
193+
[@alexricardotapiacarita-ai](https://github.com/alexricardotapiacarita-ai) — Diseño GUI, documentación, UX
186194

187195
---
188196

189197
## Licencia
190198

191199
Este proyecto está bajo la [Licencia MIT](LICENSE).
200+
201+
</div>

0 commit comments

Comments
 (0)