Project 3 - Yelp

Yelp is a Yelp search app using the Yelp API.

Time spent: 12 hours spent in total

User Stories

The following required functionality is completed:

  • [X] Table rows for search results should be dynamic height according to the content height.
  • [X] Custom cells should have the proper Auto Layout constraints.
  • [X] Search bar should be in the navigation bar (doesn't have to expand to show location like the real Yelp app does).

The following optional features are implemented:

  • [X] Search results page
    • [ ] Infinite scroll for restaurant results.
    • [X] Implement map view of restaurant results.
  • [X] Implement the restaurant detail page.

The following additional features are implemented:

  • [X] Uses the user's current location for the map and for the Yelp search.
  • [X] Changed the coloring of the cells and navigation bar and allowed the user to refresh.
  • [X] Stores the last thing you searched and populates the table with that search.
  • [X] Added a mapview in the details page so you can see how far away you are on the map.
  • [X] Cleaned up the User Experience and the look.
  • [X] Added a pull to refresh feature.

Please list two areas of the assignment you'd like to discuss further with your peers during the next class (examples include better ways to implement something, how to extend your app in certain ways, etc):

  1. How to check if a placemark is nil and properly dealing with them.
  2. How to get the name of each annotation to appear. It works unless I geocode the address to get the map location.

Video Walkthrough

Here's a walkthrough of implemented user stories:

Video Walkthrough

GIF created with LiceCap.


Describe any challenges encountered while building the app.


Copyright [2016] [Nicholas Miller]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.

Built With

Share this project: