TechTales es una plataforma comunitaria que permite a los entusiastas del desarrollo compartir historias y enfrentarse a retos de programación. El backend, construido con ASP.NET Core .NET 8, está diseñado con arquitectura limpia para mantener una estructura sólida, escalable y mantenible. La seguridad se maneja mediante JWT, y se han añadido servicios de notificación, integración con Firebase y almacenamiento en la nube.
- 📚 Historias de la comunidad: Los usuarios publican sus experiencias y conocimientos sobre tecnología.
- 🏁 Retos propuestos por el administrador: Desafíos únicos que los usuarios pueden completar y registrar.
- 💬 Comentarios: Participación activa mediante comentarios en historias y retos.
- ✅ Seguimiento de retos completados: Registro de los desafíos cumplidos por los usuarios.
- 🔐 Login seguro con JWT: Acceso autenticado para usuarios y administradores.
- 📧 Servicio de notificaciones: Envío de correos electrónicos personalizados vía SMTP con Scriban como motor de plantillas.
- ☁️ Almacenamiento en Cloudinary: Gestión eficiente de imágenes y recursos en la nube.
- 🔐 Login con Google (Firebase): Autenticación con cuenta de Google para mayor accesibilidad.
- 📑 Documentación con Swagger: API autodescriptiva para facilitar el consumo de endpoints.
El proyecto incorpora un enfoque profesional de calidad de software mediante pruebas unitarias con XUnit y Moq, asegurando la fiabilidad de la lógica de negocio y el correcto funcionamiento de los servicios principales.
- 🖥 ASP.NET Core .NET 8 para una API moderna y robusta.
- 🏗 Arquitectura Limpia para separación de responsabilidades y escalabilidad.
- 🛢 Entity Framework Core + MySQL para el manejo de la base de datos.
- 🔐 JWT y Firebase Auth para autenticación segura.
- 📧 SMTP + Scriban para envío de correos con plantillas HTML dinámicas.
- ☁️ Cloudinary para almacenamiento de medios.
- 🧪 XUnit + Moq para pruebas unitarias y simulación de dependencias.
- 📖 Swagger para explorar y probar los endpoints de la API.
- Usuarios: Registro y autenticación.
- Historias: Publicaciones de los usuarios.
- Retos: Desafíos propuestos por el administrador.
- Comentarios: Opiniones y participación comunitaria.
- VotosHistorias: Reacciones a historias.
- RetosCompletados: Historial de desafíos completados.
El backend de TechTales ya está desplegado y disponible públicamente. Puedes acceder a la documentación interactiva de la API a través de Swagger en el siguiente enlace:
🔗 https://techtalesapi.runasp.net/index.html
La plataforma web también está en desarrollo y estará accesible próximamente para que los usuarios puedan comenzar a contar sus historias y superar retos.
