El presente proyecto es un Trabajo Práctico Final Integrador de Conocimientos para la materia Programación en Ambiente Web de la Universidad Nacional de Luján.
Se hará uso de estrategias como Mobile First, Mashups, CSS Reset, y Accesibilidad Web entre otros.
Mas información en Documentacion/TP_Integrador_PAW.pdf .
La idea del proyecto es el desarrollo de una página web para la administración de un hotel, permitiendo un ABM de reservas, habitaciones, servicios, fotos y usuarios (de backend).
También se permitirá integrar proveedores de servicios cercanos al hotel (gastronomía, atracciones, supermercados) que pagando un abono mensual, tendrán el derecho a ser listados en primer orden y sobresalir visualmente en el mapa de servicios.
Por el lado del usuario final, éste podrá ver información del hotel, habitaciones, servicios, fotos, ubicación, lugares de interes cercano y podrá contactarse con ellos mediante un formulario.
En Documentacion/Diagrama_Hotel.pdf encontrará un sencillo diagrama de clases del proyecto.
En Documentacion/Wireframes.pdf encontrará los wireframes del proyecto.
- Patricio Ariel Pittavino
- Email: pitta1881@gmail.com
- Leg.: 121476
- Nest.js - Framework de Node.js basado en TypeScript.
- Base de Datos - PostgreSQL.
- ORM - TypeORM
- Documentador - Swagger
- Hashing Password - bcrypt
- Autenticación - passport-local y jwt
- Mailer - @nestjs-modules/mailer y Nodemailer
- Handlebars - Motor de Plantillas.
$ npm install
$ docker-compose up
$ npm run typeorm:drop
$ npm run migrations:run
$ npm run seeds:run
$ npm run start
http://localhost:3000nick: admin-hotelpato | pass: admin123
http://localhost:3000/backend/login
http://localhost:3000/api/docs
- Antes de iniciar la app, completar el archivo .env con los datos solicitados.
- Las credenciales del usuario y hotel de prueba están en swagger(http://localhost:3000/api/docs/#/Auth/AuthController_login), sección Auth.
- Al crear un nuevo Hotel, se asigna una uri(nombre_uri) para despues llamarla por URL, la cual sera con trim(), lowerCase() y sin espacios.
- Al crear un nuevo Hotel, se crea un usuario por defecto con las siguientes credenciales que luego se pueden modificar:
- nombre:
admin-{{nombre_uri}}
- apellido:
admin-{{nombre_uri}}
- email:
admin-{{nombre_uri}}@mail.com
- nick:
admin-{{nombre_uri}}
- password:
admin123
- nombre:
- Al recibir un Contacto, se envía un email con la copia del mensaje al cliente, y un email a todos los usuarios del hotel en cuestión asi como al email definido para el hotel.
- Las tablas deben tener filtros de busqueda y/o un input de busqueda.
- Las tablas se deben poder ordenar al hacer click sobre el nombre de la columna.
- Reemplazar ciertos select por checkbox.
- Agregar animaciones en slides de fotos.
- Comprimir y/o limitar el tamaño y peso de una imagen al subirla al server.
Última actualización: 26/06/2022