Aplicación web fullstack para consultar universidades por país y generar informes PDF. Incluye autenticación, gestión de sesiones y almacenamiento de descargas.
prueba-tecnica-2-mab/
├── db/ # Script de base de datos inicial
│ └── init.sql
├── universidades-app/ # Código fuente frontend/backend
│ ├── assets/
│ │ ├── pdfs/ # PDF generados y almacenados
│ │ ├── js/ # Script de funcionalidad
│ │ │ └── app.js
│ │ └── style/ # Script de estilo
│ │ └── style.css
│ ├── core/ # Lógica backend
│ │ ├── db.php
│ │ └── api/
│ │ ├── login.php
│ │ ├── register.php
│ │ └── ...
│ └── index.html # Interfaz de usuario
├── Dockerfile
├── docker-compose.yml
├── .env # Variables de entorno
└── entrypoint.sh # Crea el directorio 'pdfs' y da permisos
- PHP 8.2 + Apache
- MySQL 8
- Docker + Docker Compose
- JavaScript Puro (sin frameworks)
- jsPDF para generación de PDF
-
Clona el repositorio:
git clone https://github.com/azko666/prueba-tecnica-2-mab.git cd prueba-tecnica-2-mab
-
Construye y levanta los contenedores:
docker-compose up --build -d
-
Accede a la aplicación en:
👉http://localhost:8080
- Registro e inicio de sesión
- Consulta de universidades por país (API externa)
- Generación y descarga de PDFs
- Historial de descargas por usuario
- Interfaz responsive con Bootstrap
Se inicializa automáticamente desde db/init.sql
al primer arranque. Incluye las tablas:
usuarios
paises
descargas_pdf
Por practicidad en la evaluación, este archivo fue incluido en el repositorio.
Sin embargo, no es una práctica recomendada en proyectos reales.
Lo correcto es usar .env.example
y excluir .env
del control de versiones.
Desarrollado por Mario Enrique González Triana para la segunda prueba técnica de MAB.
Contacto: mario_gonzalez888@hotmail.com