Project 2 - Yelp Client
Yelp Client is a Yelp search app using the Yelp API.
Time spent: 16 hours spent in total, 4 beers consumed, 7 Mt. Dews downed
User Stories
The following required functionality is completed:
- [x] Search results page
- [x] Table rows 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).
- [x] Filter page. Unfortunately, not all the filters are supported in the Yelp API.
- [x] The filters you should actually have are: category, sort (best match, distance, highest rated), distance, deals (on/off).
- [x] The filters table should be organized into sections as in the mock.
- [x] You can use the default UISwitch for on/off states.
- [x] Clicking on the "Search" button should dismiss the filters page and trigger the search w/ the new filter settings.
- [x] Display some of the available Yelp categories (choose any 3-4 that you want).
The following optional features are implemented:
- [x] Search results page
- [ ] Infinite scroll for restaurant results.
- [x] Implement map view of restaurant results.
- [ ] Filter page
- [ ] Implement a custom switch instead of the default UISwitch.
- [ ] Distance filter should expand as in the real Yelp app
- [ ] Categories should show a subset of the full list with a "See All" row to expand. Category list is here.
- [ ] Implement the restaurant detail page.
The following additional features are implemented:
- [x] Filters persist until a search bar search is started
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.
2.
Video Walkthrough
Here's a walkthrough of implemented user stories:
![Yelp Demo](https://github.com/hudsonhyunlim/ios_yelp_swift/raw/master/yelpDemo.gif)
GIF created with LiceCap.
Notes
Doing custom popover on the markers is a bear. I got the custom marker to show up, but I realized then that I needed to create a new popover as well, when the original goal was just creating a custom popover.
License
No License. Do whatever you want.