Skip to content

MontoyaAndres/GradeProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Software de remisión (Excepción de ausentismo).

Software para manejar archivos de excepción en ausentismo de la Uniminuto de Girardot, enfocado a la administración, creación, edición, eliminación, graficación y comparación entre los datos de la base de datos.

Aplicación web diseñada bajo NodeJS, GraphQL y MongoDB, siguiendo el concepto SPA (Single Page Application) con React y PWA (Progressive Web Application), los cuales ofrecen un ecosistema seguro, adaptado para móviles y sin problemas de rendimiento a la hora de manipular una gran cantidad de datos.

Este funciona de la siguiente manera:

Alt text

Puede probar este sistema aquí:

La siguiente URL es de prueba, la universidad Uniminuto usará otro domino para el manejo de datos. Para poder entrar, envie un correo a andresmontoyafcb@gmail.com para obtener los datos.

https://ausentismodesercion.now.sh/

Este sistema cuenta con dos tipos de usurios, los cuales son los Administradores y los usuarios comunes.

Alt text

Aprende a manejarlo leyendo:

Manual de usuario (Versión de escritorio)

Manual de usuario (Versión para celulares)

Soporte

En este apartado únicamente se va a hablar acerca de como subir este software a cualquier servidor y resolver posible problemas técnicos.

Recomendaciones

Antes de subir a producción, este seguro que el dominio trabaja bajo HTTPS y HTTP2, para que el software pueda usar las funciones de una aplicación PWA y así mismo, las peticiones que se hagan a GraphQL se ejecuten rápidamente.

Un ejemplo de este tipo de funcionamiento, podria hacer el procesos pesado y forzoso que se necesita para subir los Excels que se utilizan para almacenar la información de cada estudiante por periodo.

Alt text

Configuración de variables

Variables de cliente

Entre a la carpeta Client, luego cree un archivo .env con el contenido de .env.example, despues remplaze http://your-awesome-site.com por el sitio que esta usando en producción.

Por recomendación, cuando pegue la URL, elimine el ultimo /. Aquí podrá encontrar la razón, leyendo el funcionamiento de las peticiones GET.

# Contenido de ejemplo para el archivo .env

REACT_APP_SERVER_URL=https://ausentismodesercion.now.sh

Variables de servidor

Entre a la carpeta Server, luego cree un archivo .env con el contenido de .env.example, despues remplaze las variables con < TEXTO > por las que este usando.

# Contenido de archivo .env.example

DATABASE_URL=<Mongodb_url>
SECRET1=<Secret_key>
SECRET2=<Secret_key>
PORT=<Port>
GRAPHQL_END_POINT=<Graphql_end_point>

EMAIL_SECRET=<Secret_key>
EMAIL_SERVICE=<Email_service>,
EMAIL_USER=<Email_user>
EMAIL_PASSWORD=<Email_password>

Por ejemplo:

Es recomendable que el puerto sea 80 ya que por este medio Por lo regular GraphQL hace las peticiones.

El endpoint esta configurado para que sea /graphqlpor defecto, o lo puede cambiar aquí.

# Contenido de ejemplo para el archivo .env

DATABASE_URL=mongodb://HOST:27017/ausentismodesercion
SECRET1='YourSuperSecretPasswordForAuth'
SECRET2='YourSuperSecretPasswordForPasswords'
PORT=80
GRAPHQL_END_POINT='/graphql'

EMAIL_SECRET='YourSuperSecretPasswordForEmail'
EMAIL_SERVICE='Gmail',
EMAIL_USER='correo@gmail.com'
EMAIL_PASSWORD='password123'

Aplicación en producción

Entre a la carpeta Client y luego ejecute el comando Build, el cual puede ver en package.json y espere un momento hasta que finalize.

npm run build

Una vez terminado, vaya a la carpeta Server y ejecute el comando Build, el cual puede ver en package.json

npm run build

Y luego inicie la aplicación.

npm start

Si su sevidor funciona bajo GIT, procure que la carpeta files que crea el comando Build haya sido subida con exito.

¿Cómo trabaja internamente la web subida en now.sh?

Alt text

Cronograma

https://docs.google.com/spreadsheets/d/1GhwYvmZus2zo12BZq1Y4yOzL_2oVIeFiUdy8mA4kGA0/edit?usp=sharing

About

Software de remisión (Excepción de ausentismo) para la Uniminuto

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published