Skip to content

Installation Instructions

Juno Mayer edited this page Oct 23, 2020 · 10 revisions

System Requirements and Dependencies

Our service is built in Python 3.8.5 using Flask. It was tested in Linux environments. It uses virtual environments to separate dependencies and avert potential conflicts from the host's machine. Our App was deployed and tested in Heroku, a cloud service providing Unix servers. The provided Makefile builds our app on linux machines.

Mapbox API

Our Reverse Geocoding service is powered by Mapbox's Navigation API. To use our service, a Mapbox Access Token is required. Obtain your access token by creating an account and visiting this URL

Terms and Conditions: Mapbox bases the pricing of their Navigation API on number of calls per month, the first 100,000 are free.

Configuration

We have created two methods of configuring your build with a Mapbox Access token:

1. Locally with a config.ini:

  • edit config_template.ini in the root directory of the repo and paste in your Token.
  • rename this to config.ini
  • This works well for local testing and debugging from your own machine.

2. Using the environment variables of a remote server

  • If you are a developer looking to deploy our app on a remote server and don't want to put your Access token in a file, you can set your remote server's Environment Variables or Config Vars to include your Mapbox Access Token, our app checks environment variables for your Access Token if it cannot find a config.ini

Installation Process

We have provided a Makefile with several functions:

env: Builds a virtual environment in the current directory with all required dependencies

run: activates the virtual environment and starts the web sever using Green Unicorn

clean: removes the app and virtual environment using rm -rf

To Install, download or clone our repo with git clone https://github.com/Abduarraheem/Reverse-Geocode.git Navigate to the root of the repo run make env to create the virtual environment then make runto activate the virtual environment and run the server from your local machine

Navigate to the URL specified by your terminal to view the website! We have provided test files withing the TestFiles directory if you do not have your own GPX files to submit