Installing
- Copy
config.sample.php
toconfig.inc.php
and edit to reflect your environment - Run
composer install
in the root directory of the project - Make sure you have the
grunt-cli
installed:npm -g i grunt-cli
- Run
npm install
in the root directory of the project - Run
grunt
in the root directory of the project - Copy
www/sample.htaccess
towww/.htaccess
and edit to reflect your environment
Updating Map Features:
All map feature layers, except the buses, use GeoJSON files to store location metadata and geometry (points, polygons, etc). These data files are found in the data/geojson
directory. Manually editing this files is generally discouraged. GIS software, such as QGIS, loaded with updatable source files should be used to export replacement geojson. An online tool like, http://geojson.io/ could be used to edit files, however, it may be hard to reconcile those changes with the upsteam data providers.
-
accessiblity-parking.geojson
- Manually updated from PDFs provided by Parking and Transit. -
bikeracks.geojson
- Manually updated by having volunteers traverse the campus. -
buildings-official.geojson
- Provided by University Police (from their GIS team). The export they provide usually has to be converted from Esri JSON to GeoJSON (slight schema differences). See https://unl.app.box.com/notes/103212929209 for process details. -
buildings-unofficial.geojson
- Manually updated to provide polygons for buildings not managed by the university, but are closely affiliated. -
emergencyphones.geojson
- Provided by University Police. This format exchange has not been formally established. -
motorcycle-parking.geojson
- Manually updated from PDFs provided by Parking and Transit. -
parking-lots.geojson
- Originally provided from University Police and parsed with the script located atscripts/parkingArcgisToGeojson.js
. This is done yearly after parking gives police new data. -
policestations.geojson
- Mostly a static, unmaintained file. May be updated with data from University Police. -
sculptures.geojson
- Manually updated from PDFs provided by Sheldon Museum of Art. -
covid-test-sites.geojson
- Manually updated from PDFs provided by COVID Testing.
The Bus Layer
StarTran provides realtime data for bus location data. It uses a custom JSON-like format that must be proxied to work around cross-domain and formatting issues. There are two versions of the proxy written for Node.js.
server.js
scripts/bus-proxy
server.js
is started by running npm start
from the project root. Is is designed to be a "smarter" caching proxy by only fetching the upstream data when both a local request has been made for it and the cache lifetime (currently 1000ms) has passed. To use this proxy, you must adjust your web server configuration (.htaccess
) to reverse proxy to this locally running server. There have been complications with using this in production, likely due to cache stampede and error handling issues. Using it should be avoided until more analysis can be done
scripts/bus-proxy
is script that can be daemonized to continually proxy (every 1000ms) the bus data and save it to a local file to be served by the default web server.