Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Phase 4: Feat/devops CI/CD #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uh oh!
There was an error while loading. Please reload this page.
Phase 4: Feat/devops CI/CD #3
Changes from all commits
8ad2ac177cc0c1647f74b4bf6766db4b215531ceedFile filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
There are no files selected for viewing
ProjectLens
ProjectLens: Premium Agile Management 🚀
Challenge Técnico - Edición Full Stack
ProjectLens es una plataforma de gestión de proyectos al estilo Jira, diseñada con una estética premium (Stitch Design) y una arquitectura moderna basada en NestJS y Next.js.
🏛️ El Relato Técnico: La Transición a MongoDB
Uno de los pilares de este proyecto fue la implementación de MongoDB como motor de persistencia. Esta decisión se tomó para aprovechar la flexibilidad de los esquemas de documentos en un entorno ágil donde los requerimientos de las tareas (Issues) pueden evolucionar rápidamente.
Pruebas de Validación y Migración:
Para asegurar la integridad del sistema, realizamos una serie de pruebas críticas:
app-db.e2e-spec.ts) para verificar que el cálculo de progreso fuera preciso. Nota: Estos tests se omiten deliberadamente en el pipeline de CI/CD para optimizar la velocidad del despliegue, delegando la validación de base de datos a entornos locales o de staging.🚀 Guía de Inicio Rápido (Docker First)
La forma más sencilla de probar ProjectLens es utilizando Docker, lo que garantiza que todos los servicios se levanten con la configuración correcta.
Levantamiento con Docker Compose:
Desde la raíz del proyecto, ejecuta:
Note
Se ha incluido un servicio efímero llamado
seeden eldocker-compose.yml. Este contenedor se encargará de limpiar y poblar la base de datos automáticamente al arrancar y luego se detendrá.Acceso a los Servicios:
localhost:27017🛠️ Stack Tecnológico y Decisiones
@nestjs/configpara una gestión de variables de entorno limpia y orientada a contenedores..github/workflows/ci-cd.yml) que automatiza el Linting, los Tests y el Build en cada push.🧪 Ejecución de Tests
Si deseas ejecutar los tests fuera de Docker:
cd frontend npm install npm run build🌐 Estrategia de Despliegue y Ciclo de Vida
Para llevar ProjectLens a un entorno de producción real, planteamos la siguiente arquitectura de despliegue:
1. Despliegue de Aplicaciones Web
2. Despliegue Móvil (Implementacion con React Native)
3. Manejo de Ambientes y Seguridad
Implementamos una separación estricta mediante variables de entorno:
4. Rollback y Aseguramiento de Calidad (QA)
Desarrollado como parte del proceso técnico para Ubicalo.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.