Descripción • Uso • Contribuir • Créditos • Soporte • Licencia
Proyecto Open Source desarrollado como un buscador de salas en los campus de la Pontificia Universidad Católica de Chile, que permite a los estudiantes encontrar y localizar rápidamente en un mapa dinámico.
Los datos iniciales del proyecto son sacados de almapp/uc-maps-seeds
Para centrar el mapa o la ubicación en el formulario en un campus específico, se puede agregar un parámetro en la URL con el nombre del campus:
https://ubicate.osuc.dev/map?campus={Nombre campus}
https://ubicate.osuc.dev/form-geo?campus={Nombre campus}
Donde {Nombre campus}
puede ser:
- SanJoaquin
- CasaCentral
- Oriente
- LoContador
- Villarrica
Además se puede centrar el mapa en la ubicación de una sala dado su identificador
https://ubicate.osuc.dev/map?place={Id sala}
Donde {Id sala}
puede ser:
- B12
Agregar Api Key pública de Mapbox a variable de entorno en archivo .env.local
Agregar la URL base del proyecto, actualmente es https://ubicate.osuc.dev/
NEXT_PUBLIC_MAPBOX_TOKEN = <API_KEY>
NEXT_PUBLIC_BASE_URL = <BASE_URL>
GITHUB_TOKEN_USER = <TOKEN_USER>
GITHUB_USER_EMAIL = <EMAIL>
GITHUB_BRANCH_NAME = <EXISTING_BRANCH>
npm install
npm run dev
Es necesario resolver los errores y warnings de linter en cada pull request, estos errores se muestran (y se resuelven la mayoría de errores) ejecutando:
npm run lint:fix
Es necesario que el proyecto pueda realizar correctamente un build
para poder ser desplegado en Cloudflare
npm run build:cloudflare
- Crear un usuario dedicado.
useradd ubicate
- Clonar el repositorio.
git clone https://github.com/open-source-uc/UbiCate-v2 /usr/local/ubicate
- Entrar al directorio
cd /usr/local/ubicate
-
Hacer una build.
npm run build
- Crear la Systemd Unit
touch /etc/systemd/system/ubicate.service
[Unit]
Description=Ubicate
After=multi-user.target
After=network-online.target
Wants=network-online.target
[Service]
ExecStart=/usr/bin/npm --prefix /usr/local/ubicate run start
User=ubicate
Group=ubicate
Type=idle
Restart=on-abnormal
RestartSec=15
TimeoutStopSec=10
[Install]
WantedBy=multi-user.target
- Reload Units
systemctl daemon-reload
- Start y enable el servicio
systemctl enable --now ubicate.service
- Reverse proxy con Apache
Reemplazar
domain.tld
con su dominio.
<VirtualHost *:80>
ServerAdmin webmaster@domain.tld
ServerName ubicate.domain.tld
ErrorLog "/var/log/httpd/ubicate.domain.tld-error_log"
CustomLog "/var/log/httpd/ubicate.domain.tld-access_log" common
<Location / >
RequestHeader set X-SCRIPT-NAME /
RequestHeader set X-SCHEME https
ProxyPass http://localhost:3000/
ProxyPassReverse http://localhost:3000/
ProxyPassReverseCookiePath / /
</Location>
</VirtualHost>
Las salas subidas en el formulario de la página se suben a una base de datos. Estas salas se tienen que añadir a data/places.json
para que sean agregadas a la página.
Utilice las issues para informar cualquier bug o solicitud.
PR a development -> Revisar preview y checks -> Asignar reviewers -> Aprobación -> Merge a development
La información detallada sobre cómo contribuir se puede encontrar en contributing.md.
Comuníquese con nosotros a traves de osuc.dev
## Licencia