Trabajo Ingeniería Web en Google App Engine
agendamlggae proporciona un servicio REST, parecido a agendamlgr que nos permite gestionar eventos en Málaga. Para mostrar la información acerca de los eventos se proporciona un cliente realizado con Angular 2 y Bootstrap.
agendamlggae proporciona los siguientes servicios:
- Diferentes tipos de usuarios con diferentes permisos: anónimo, registrado, superusuario y periodista.
- Iniciar Sesión y Cerrar Sesión, mediante Google OAuth 2.0.
- Ver perfil de Usuario.
- Ver todos los evento no caducados y validados
- Filtrar eventos en función de su categoría
- Filtrar eventos según su posición geográfica
- Creación de eventos
- Validación de eventos
- Eliminación de eventos
- Añadir álbums de Flickr para la visualización de imágenes en los eventos
- Visualización de mapa mediante Google Maps
- Envío de correo acerca de eventos recién publicados a usuarios interesados
- Envío de correo al usuario cuyo evento ha sido validado el cliente permite acceder todos los servicios de la lista.
- Instalar las dependencias de Python con
pip install -t lib -r requirements.txt
- Instalar dependencias de node.js del proyecto webapp con
npm install
- Compilar la versión debug (
npm run build-debug
) o release (npm run build
) del cliente - Crear el archivo
tokens/tokens.json
que tiene las API-Keys de Google y Flickr. Tiene esta estructura:{ "jwt_token": "...", "google_api_key": "...", "flickr_api_key": "..."}
. El token JWT lo generas tu. - Obtener los tokens Google OAuth de la consola de desarrollador y ponerlo en
tokens/oauth_tokens.json
.
Si después del pull npm install
no funciona, haz lo siguiente: npm i -f
y luego npm install
Hay que tener instalado:
- Python
- Google App Engine
- node.js
gcloud app deploy --version 1
gcloud datastore create-indexes index.yaml
- node.js - Parte del frontend
- Bootstrap 4 - Diseño y estrucutra del frontend
- Angular - Aplicación web y estructuración del código
- AngularMaps - Google Maps API para Angular
- date-time-picker - Polyfill bonito para
input[type="date-time-local"]
para Angular
- Antonio Ángel Cruzado Castillo
- John Carlo Purihin
- Melchor Alejo Garau Madrigal
- Manuel Jesús Rodríguez Rodríguez