This is a repository for the final PLUS Practice for Software Development class (summer semester 2023).
FRESH stands for Flood Routing for Emergency Services for Hurricanes.
The FRESH project focuses on network analysis and visualization on Grand Bahama Island during hurricane Dorian (2019). The project was meant to continue the work begun during the Foresight DRM: Disaster Mapping Hackathon 2023. The impetus for this project was to translate the web application that was created during the Hackathon from javascript to python using OSMnx and Folium.
The end result of this project is a web application created through Flask which hosts two apps:
- A routing app which allows users to input starting and end coordinates on the Grand Bahama Island and recieve routing results for the best path between the two points
- A hurricane visualization app which displays the dynamic path of hurricane Dorian as it approaches the Grand Bahama island over a series of days.
In addition to the web application with the routing and hurricane apps a website was also developed to provide background and documentation for the project using Github pages. The website can be found here: FRESH Project Website
Team Members: Lisah Ligono, Madeline Mulder, Parinda Pannoon
At this moment the application can only be installed on localhost. To set this up, please follow the following guidelines:
In this installation example, we demonstrate how to deploy the app using conda
git clone https://github.com/MadelineMulder/FRESH.git
cd application
conda env create -f freshenv.yml
conda activate freshenv
Once you have activated the environment, go to the main.py file and set the correct path to the Grand_Bahama.shp and hurricanepolygon.shp which are in the data folder. Do the same for the index.html in the templates folder
When done, run the script main.py in your console and a url will be provided where you can visualize the application in your local machine.
You should have something like this:
In alphabetical order (images are not included in the following list)
- Application Directory: Contains the code for the Flask web application which hosts the routing and hurricane visualization apps
- Template Directory: Contains HTML code for Flask project homepage and sample coordinates for testing the routing app
- color.py: Contains code for styling the hurricane visualization app
- freshenv.yml: Contains environment file for Flask project
- main.py: Contains code for Flask project and both routing and hurricane visualization apps
- CSS Directory: contains style sheet for the FRESH project website
- Data Directory: Contains data related to the FRESH Project including study area boundary files and hurricane path file.
- Routing Directory: Contains reference material for the routing portion of the project including an early draft of the routing app code and reference code on how to incorporate user input
- About.HTML: Contains HTML code and content for the about page of FRESH Project website
- Documentation.HTML: Contains HTML code and content for the documentation page of FRESH Project website
- Index.HTML: Contains HTML code and content for the homepage of FRESH Project website