workout_challenge
Aplicación web para retos de actividad física entre amigos o compañeros, con integración automática a Strava, tablas de clasificación personalizadas y soporte multiplataforma (Apple/Android/Garmin).
Ficha actualizada 21 sept 2026, 20:53 · upstream 21 sept 2026, 20:53 · release sin release detectada
Qué es workout_challenge
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Workout Challenge es una aplicación web diseñada para facilitar la competencia en actividades físicas entre grupos sociales, como amigos o colegas. Permite crear retos personalizados basados en métricas como tiempo, distancia, calorías o número de repeticiones, con periodos flexibles (diario, semanal, mensual). La plataforma soporta tanto la entrada manual de datos como la importación automática desde Strava, sincronizando los entrenamientos diariamente a las 4 AM.
La arquitectura técnica combina un frontend en React con un backend en Django/Python, utilizando PostgreSQL para el almacenamiento persistente y Redis para caché. El despliegue está optimizado para entornos Docker, con soporte para despliegues one-click mediante contenedores preconfigurados. Incluye funcionalidades avanzadas como modos claro/oscuro, dashboards responsivos y notificaciones por email semanales sobre el progreso en los rankings.
La aplicación prioriza la privacidad de los datos y permite a los usuarios competir respetando sus preferencias de métricas. Sin embargo, depende de servicios externos como Strava para la importación automática y OpenAI (clave no documentada en el README), lo que requiere configuración cuidadosa en producción.
- Crear retos de actividad física entre amigos o compañeros de trabajo con objetivos personalizados por usuario.
- Importar automáticamente entrenamientos desde Strava para evitar la entrada manual repetitiva de datos.
- Visualizar progreso individual y tablas de clasificación en tiempo real a través de dashboards responsivos.
- Recibir notificaciones semanales por email sobre el ranking general y el avance hacia objetivos personales.
- Integración nativa con la API de Strava para importación automática de datos de entrenamiento diarios.
- Soporte completo para múltiples métricas: tiempo, distancia, calorías, kilojulios y conteo de actividades.
- Interfaz responsiva con modo claro y oscuro, optimizada para móviles, tablets y escritorio.
- Sistema de puntuación basado en porcentaje de progreso hacia los objetivos del reto.
- Despliegue simplificado mediante Docker Compose con soporte one-click para pruebas rápidas.
- Dependencia de la API de Strava, que impone límites estrictos (100 llamadas cada 15 minutos por defecto).
- Uso no documentado de OpenAI en el README, lo que podría indicar funcionalidades no explicadas o dependencias ocultas.
- Configuración manual obligatoria de variables de entorno críticas como SECRET_KEY y STRAVA_CLIENT_SECRET.
- El puerto 8000 para Django admin debe permanecer cerrado al público por seguridad.
- Posibles bloqueos de base de datos si se usa SQLite en lugar de PostgreSQL en producción.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Para despliegue en producción, use docker-compose.yml con variables de entorno seguras. Nunca exponga los puertos 8000 (Django admin), 5555 (Celery) o 9001 (Supervisord) a internet. Configure ALLOWED_HOSTS correctamente para evitar errores CORS y CSRF. Use PostgreSQL en lugar de SQLite y asegúrese de que POSTGRES_PASSWORD esté cifrado. Reemplace las claves de ejemplo como SECRET_KEY, STRAVA_CLIENT_SECRET y OPENAI_API_KEY con valores reales antes de iniciar los servicios.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.