Diálogos con el Universo — Plataforma de Coaching
Plataforma SaaS de coaching y gestión de cursos con un CMS Wagtail, autenticación JWT, inicio de sesión social (Google, Facebook), gestión de contenido en tiempo real y un frontend SPA en React, desplegada en DigitalOcean Kubernetes.
🔒 Trabajo privado / de cliente — el sitio en vivo y el código están bajo NDA. Con gusto explico la arquitectura y mi rol en una llamada.
Descripción general del proyecto
Dialogs with Universe es una plataforma de coaching que conecta a coaches con estudiantes a través de programas de cursos estructurados. El backend proporciona una API REST completa construida sobre Django y Wagtail CMS, mientras que el frontend ofrece una aplicación de página única moderna construida con React y Ant Design. La plataforma admite autenticación JWT y social, integración con el CRM HubSpot y webhooks del sistema de RR. HH. Personio.
Características clave
- Sistema de gestión de cursos: crear, listar e inscribir a estudiantes y coaches
- Autenticación de API basada en JWT con endpoints de refresco y verificación de tokens
- Inicio de sesión social mediante Google y Facebook (django-allauth)
- Wagtail CMS para páginas de contenido enriquecido, búsqueda y gestión de documentos
- Perfiles de usuario con roles de coach, supervisor y verificación
- Integración de webhooks del CRM HubSpot para la sincronización de leads y contactos
- Integración de webhooks de RR. HH. Personio para datos de empleados
- Documentación de API autogenerada con Swagger y ReDoc
- Almacenamiento de medios compatible con S3 (AWS/MinIO) con soporte de CDN
- Capa de caché Redis para el rendimiento de las respuestas de la API
Arquitectura
El backend sigue una arquitectura Django/Wagtail con Django REST Framework sirviendo la API que consume una SPA en React con TypeScript. La autenticación se gestiona mediante SimpleJWT, con django-allauth proporcionando los flujos de inicio de sesión social OAuth2. La pila se ejecuta en DigitalOcean Kubernetes con 2 réplicas del backend detrás de un controlador de ingress Nginx, PostgreSQL para la persistencia y Redis para el almacenamiento en caché. El CI/CD está totalmente automatizado mediante pipelines de GitLab: etapas separadas de compilación y despliegue envían imágenes Docker al DigitalOcean Container Registry y despliegan los deployments de Kubernetes para los entornos de desarrollo y producción.