Espera...
Espera...
Quizzam es una API backend REST desarrollada con NestJS, que demuestra el dominio de patrones de arquitectura de software modernos. Este proyecto fue desarrollado desde cero como parte de una formación, con un enfoque particular en la arquitectura modular y la separación de responsabilidades.
NestJS fue elegido en lugar de Node.js puro por su arquitectura predefinida y su soporte nativo de TypeScript, facilitando el desarrollo en equipo y garantizando una mejor mantenibilidad del código. A diferencia de Node.js que carece de una arquitectura de software estándar, NestJS impone reglas y convenciones que estructuran el proyecto.
La aplicación implementa una arquitectura que permite cambiar entre diferentes bases de datos (MongoDB, Firebase) sin modificar la lógica de negocio, con un adaptador In-Memory para las pruebas. El patrón CQRS separa las operaciones de lectura y escritura, lo que puede mejorar el rendimiento, la escalabilidad y la seguridad de una aplicación (aunque en nuestro caso, es un pequeño proyecto ficticio que no escala).
El sistema de autenticación también es flexible, soportando JWT y Firebase Auth según la configuración. Pruebas E2E completas con Supertest y pruebas unitarias con Jest garantizan la calidad del código.