Ivan Alcaraz 80ef062789
Some checks failed
CI/CD Pipeline / 🧪 Tests (push) Has been cancelled
CI/CD Pipeline / 🏗️ Build (push) Has been cancelled
CI/CD Pipeline / 🚀 Deploy to Staging (push) Has been cancelled
CI/CD Pipeline / 🚀 Deploy to Production (push) Has been cancelled
CI/CD Pipeline / 🏷️ Create Release (push) Has been cancelled
CI/CD Pipeline / 🧹 Cleanup (push) Has been cancelled
Maintenance Tasks / 💾 Database Backup (push) Has been cancelled
Maintenance Tasks / 🧹 Cleanup (push) Has been cancelled
Maintenance Tasks / 🔒 Security Scan (push) Has been cancelled
Maintenance Tasks / 🏥 Health Check (push) Has been cancelled
📄 docs: Agregar documentación final del proyecto completo
2026-01-31 22:32:53 +00:00

🎾 App Canchas de Pádel

Build Status Node.js TypeScript License API Docs Deploy

Aplicación completa de gestión para canchas de pádel con reservas, torneos, ligas, pagos integrados y más.

App Screenshot


Características Principales

🎾 Reservas en Tiempo Real
Consulta disponibilidad y reserva canchas al instante con confirmación inmediata.

🏆 Torneos y Ligas
Organiza y participa en torneos de múltiples formatos y ligas por equipos.

📊 Ranking y Estadísticas
Sigue tu progreso, consulta rankings y analiza tus estadísticas de juego.

💳 Pagos Integrados
Integración completa con MercadoPago para pagos seguros y suscripciones.

👥 Comunidad
Conecta con otros jugadores, gestiona amigos y organiza partidos.

🏅 Logros y Reconocimientos
Sistema de logros, Wall of Fame y retos para motivar a los jugadores.

📱 App Móvil
Aplicaciones nativas para iOS y Android con React Native.

🔧 Admin Dashboard
Panel de administración completo para gestionar canchas, usuarios y reportes.


🚀 Tecnologías Utilizadas

Backend

  • Node.js 20.x - Runtime de JavaScript
  • Express.js 4.x - Framework web
  • TypeScript 5.x - Tipado estático
  • Prisma 5.x - ORM moderno
  • PostgreSQL 16.x - Base de datos relacional
  • JWT - Autenticación stateless
  • MercadoPago SDK - Procesamiento de pagos

Frontend

  • React 18.x - Biblioteca UI
  • Vite - Build tool ultrarrápido
  • Tailwind CSS - Framework CSS

Mobile

  • React Native - Apps nativas iOS/Android

Infraestructura

  • Docker - Contenerización
  • Nginx - Reverse proxy y SSL
  • GitHub Actions - CI/CD
  • PM2 - Gestión de procesos Node.js
  • Let's Encrypt - Certificados SSL gratuitos

📁 Estructura del Proyecto

app-padel/
├── 📁 backend/                 # API REST (Node.js + Express + TypeScript)
│   ├── src/
│   │   ├── config/            # Configuraciones
│   │   ├── controllers/       # Controladores HTTP
│   │   ├── middleware/        # Middlewares
│   │   ├── routes/            # Rutas API
│   │   ├── services/          # Lógica de negocio
│   │   ├── validators/        # Validaciones Zod
│   │   └── utils/             # Utilidades
│   ├── prisma/
│   │   └── schema.prisma      # Esquema de base de datos
│   ├── scripts/               # Scripts de utilidad
│   │   ├── pre-deploy-check.js
│   │   └── backup.sh
│   └── Dockerfile.prod        # Docker para producción
│
├── 📁 frontend/                # Aplicación web (React)
│   ├── src/
│   └── public/
│
├── 📁 mobile/                  # App móvil (React Native)
│   ├── src/
│   └── assets/
│
├── 📁 docs/                    # Documentación completa
│   ├── API.md                 # Documentación API
│   ├── SETUP.md               # Guía de instalación
│   ├── DEPLOY.md              # Guía de deploy
│   ├── LAUNCH_CHECKLIST.md    # Checklist de lanzamiento
│   ├── FASE_7_4_GO_LIVE.md    # Documentación Fase 7.4
│   └── CHANGELOG.md           # Historial de cambios
│
├── 📁 nginx/                   # Configuración Nginx
│   ├── nginx.conf
│   └── conf.d/
│
├── 📁 .github/                 # CI/CD GitHub Actions
│   └── workflows/
│       ├── deploy.yml
│       └── maintenance.yml
│
└── docker-compose.prod.yml     # Docker Compose producción

🛠️ Instalación Rápida

Requisitos

  • Node.js 20.x
  • PostgreSQL 14+ (o SQLite para desarrollo)
  • Git
  • Docker (opcional, para producción)

Paso a Paso

# 1. Clonar repositorio
git clone https://github.com/tu-usuario/app-padel.git
cd app-padel

# 2. Configurar backend
cd backend
cp .env.example .env
# Editar .env con tus configuraciones

# 3. Instalar dependencias
npm install

# 4. Configurar base de datos
npx prisma migrate dev
npx prisma generate

# 5. Iniciar en desarrollo
npm run dev

📚 Documentación completa: SETUP.md


🚀 Deploy en Producción

Docker (Recomendado)

# 1. Verificar pre-deploy
node backend/scripts/pre-deploy-check.js

# 2. Configurar variables
cp backend/.env.example .env
# Editar .env con valores de producción

# 3. Iniciar con Docker Compose
docker-compose -f docker-compose.prod.yml up -d

# 4. Ejecutar migraciones
docker-compose -f docker-compose.prod.yml exec app npx prisma migrate deploy

Manual

cd backend
npm ci --only=production
npm run build
npm start

📚 Guía completa: FASE_7_4_GO_LIVE.md
📋 Checklist: LAUNCH_CHECKLIST.md


📊 Monitoreo y Alertas

Health Checks

Endpoint Descripción Acceso
GET /api/v1/health Health check básico Público
GET /api/v1/health/detailed Estado detallado del sistema Admin
GET /api/v1/health/metrics Métricas del sistema Admin
GET /api/v1/health/logs Logs recientes con filtros Admin
GET /api/v1/health/status Métricas Prometheus Público

Alertas Configuradas

  • Errores críticos
  • Caída de servicios
  • Rate limiting excedido
  • Backups fallidos
  • Health checks fallidos

Backup Automático

# Backup manual
./backend/scripts/backup.sh

# Configurado en cron (diario a las 2 AM)
0 2 * * * /ruta/al/scripts/backup.sh

📚 Documentación

Documento Descripción
📘 API.md Documentación completa de la API (150+ endpoints)
⚙️ SETUP.md Guía de instalación paso a paso
🚀 FASE_7_4_GO_LIVE.md Guía de deploy y monitoreo
📋 LAUNCH_CHECKLIST.md Checklist de lanzamiento
🏗️ ARCHITECTURE.md Arquitectura y patrones de diseño
📱 APP_STORE.md Material para tiendas de apps
📋 CHANGELOG.md Historial de versiones

🔗 API Endpoints

GET    /api/v1/health              # Health check
GET    /api/v1/health/detailed     # Estado detallado
GET    /api/v1/health/metrics      # Métricas
POST   /api/v1/auth/register       # Registro
POST   /api/v1/auth/login          # Login
GET    /api/v1/courts              # Listar canchas
POST   /api/v1/bookings            # Crear reserva
GET    /api/v1/tournaments         # Listar torneos
GET    /api/v1/ranking             # Ver ranking
... y 150+ endpoints más

📚 Documentación API completa


🔄 CI/CD

GitHub Actions Workflows

Workflow Descripción Trigger
deploy.yml Tests, build y deploy Push a main/develop
maintenance.yml Backup, limpieza, security scan Cron diario

Environments

  • Staging: Auto-deploy desde develop
  • Production: Deploy manual con aprobación desde main

🤝 Cómo Contribuir

  1. Fork el repositorio
  2. Crea una rama para tu feature (git checkout -b feature/nueva-funcionalidad)
  3. Commit tus cambios (git commit -m 'Agrega nueva funcionalidad')
  4. Push a la rama (git push origin feature/nueva-funcionalidad)
  5. Abre un Pull Request

Estándares de Código

  • Seguir convenciones de TypeScript
  • Usar ESLint y Prettier
  • Escribir tests para nuevas funcionalidades
  • Documentar cambios en CHANGELOG.md
  • Ejecutar pre-deploy-check.js antes de PR

📊 Estadísticas del Proyecto

  • Líneas de código: 50,000+
  • Endpoints API: 150+
  • Módulos: 15+
  • Fases completadas: 7/7
  • Tests: En desarrollo
  • Uptime objetivo: 99.9%

🛡️ Seguridad

  • Autenticación JWT con refresh tokens
  • Encriptación de contraseñas (bcrypt)
  • Rate limiting y protección DDoS
  • Validación de datos con Zod
  • Headers de seguridad (helmet)
  • CORS configurado
  • SQL Injection protection (Prisma)
  • Pre-deploy security checks

📞 Soporte


🗺️ Roadmap

  • Fase 1: Fundamentos (Auth, Canchas, Reservas)
  • Fase 2: Torneos y Ligas
  • Fase 3: Ranking y Sistema de Puntos
  • Fase 4: Monetización (Pagos, Suscripciones)
  • Fase 5: Analytics y Dashboard
  • Fase 6: Experiencia de Usuario
  • Fase 7: Preparación para Launch
    • Fase 7.1: Optimización de Performance
    • Fase 7.2: Sistema de Feedback Beta
    • Fase 7.3: Material de Marketing
    • Fase 7.4: Go Live y Soporte

📄 Licencia

Este proyecto está licenciado bajo la Licencia ISC - ver el archivo LICENSE para más detalles.

ISC License

Copyright (c) 2026 Consultoria AS

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.

🙏 Agradecimientos

  • Equipo de desarrollo de Consultoria AS
  • Comunidad de código abierto
  • Contribuidores del proyecto
  • Beta testers

Hecho con ❤️ por el equipo de Consultoria AS

WebsiteDocsStatus


Última actualización: Enero 2026
Versión: 1.0.0 - Production Ready 🚀

Description
Aplicación de gestión para canchas de pádel - Reservas, torneos, pagos, analytics y más
Readme 2.7 MiB
Languages
TypeScript 99.4%
Dockerfile 0.3%
CSS 0.2%