Deliverables - Projects

React Native App

Worth 20% of your final grade

Due before 6:00 pm on Friday December 18, 2020.

NO LATE SUBMISSIONS as this is the end of the semester.

Pairs Project

Please choose a different partner for this project, and self-select your group on Brightspace. (link to be added here)

# Background

You will build a simple app to look-up nearby restaurants using the Yelp Fusion API - Business Search.

You may choose to target either iOS or Android for your app design, but it should be consistent with Yelp's Mobile Style Guide and Brand Guidelines.

API Key Required

You will need to register for a free account and create a API Key.
See the Getting Started docs.

# Yelp resources

# Core Requirements

  • When initially opened, the application only displays a button for the user to click in order to download the list of restaurants nearby.
  • While the application is fetching that data, a spinner should be displayed indicating to the user that something is happening.
  • The search that you will implement will need to use the native GPS in order to provide a list to the user based on his coordinates. Remember, you will need to ask the user's permission to use their current location.
  • The list of restaurants will show the names as well as the distance from the user's location displayed in kilometres (with 2 decimals).
  • The list should be ordered by increasing distance.
  • Clicking on one of the list items should show the details for that place.
  • Those restaurant details should include at least: name, phone, distance, price and rating.
  • Please format the information display and include an image inside the view.
  • Think about what other features you can add to improve the app.

# Bonus Marks

In addition to the mandatory requirements above, you may earn up to 10% in extra credit on your final grade for correctly implementing these bonus features.

  1. In addition to the list view, allow the user to display the search results on a map. The map should be centred on the user's current position. 5%

  2. Add a bottom tab navigator to filter the results. Tabs should include: Restaurants, Coffee, Bakeries, Food Trucks. 2%

  3. Add a search bar to the Restaurant result list to allow the user to filter the list by a particular type of restaurant. e.g. Mexican, Italian, Fish 3%

# Submission

  • Create a private repo on GitHub with the name mad9135-f20-p2-react-native-yelp.
  • Your pair programming partner should be a collaborator on your repo.
  • There should be commits to this project repo from BOTH partners.
  • Invite GitHub user rlmckenney as a collaborator on your private repo.
  • Install your app on one of the phones from the lab cabinet and demo it to your teacher.
  • Submit both the URL of the GitHub code repo and the Expo public link to the Brightspace assignment folder.

WARNING

If you are submitting an iOS app then you will not be able to create and install the .ipa on a phone using the Expo website. Our Apple Developer Account will not let you create the distribution .ipa file. This means that Expo won't even upload the app and create the Expo Client link.

The current alternative is to use react-native-cli to create the project with the android and ios project folders.

Last Updated: : 12/2/2020, 10:58:52 AM