DangerDine - An exciting web app that suggests restaurants to eat at in your local area that have a very poor food hygiene rating. Created by Team 11

Inspiration

  • Google Maps' local restaurant suggestion features
  • Reddit communities dedicated to discussing poorly performing local businesses (hotels, restaurants, cafe's)

What it does

You are met with a map location selector on our main page where you are able to choose the anchor point to find local food establishments from. There is also a range input selector to choose the number of businesses you would like to visit. Our destination algorithms then suggest a route between your chosen number of businesses and we plot out the businesses we found that have a Food Hygiene Rating of 0 or 1 by the English Food Standards Agency. You can now have an enjoyable day out exploring the worst that your local area has to offer!

How we built it

We used the professional, industry standard Python web-framework Django. This provided us with a solid base to create our database models (User, BusinessLocation, Route). These models were connected with foreign keys & joining tables. We then used the Food Standards Agency's API to retrieve all lowly scored businesses and transform the addresses data into a pure coordinate using Google's geocoding API. Every business location is added to our database on a scheduled daily job to be kept up to date with the new rating provided daily by the Food Standards Agency. This means that every web request by a user only has to search our own database for the businesses rather than calling the API request every time.

Challenges we ran into

We ran into rate-limiting issues with our initial API solution so had to focus on creating a more efficient script for retrieving the data. Lots of the data returned by the FSA's API was not very usable so we had to do a lot of cleanup to ensure that every location would have a valid address that could be turned into a set of coordinates.

Accomplishments that we're proud of

Finally getting the user's route plotted on the map was a great feeling. It's the core functionality of our app and although we had been previewing the routes in our development editor for a while, seeing them in the map assured us how awesome people would find our map.

What we learned

We found out about many food establishments that are probably worth missing out, due to their appalling rating!

Built With

Share this project:

Updates