Skip to content

marcadam/Yelp

Repository files navigation

Project 2 - Yelp

Yelp is a Yelp search app using the Yelp API.

User Stories

The following required functionality is completed:

  • Search results page
    • Table rows should be dynamic height according to the content height.
    • Custom cells should have the proper Auto Layout constraints.
    • Search bar should be in the navigation bar (doesn't have to expand to show location like the real Yelp app does).
  • Filter page. Unfortunately, not all the filters are supported in the Yelp API.
    • The filters you should actually have are: category, sort (best match, distance, highest rated), distance, deals (on/off).
    • The filters table should be organized into sections as in the mock.
    • You can use the default UISwitch for on/off states.
    • Clicking on the "Search" button should dismiss the filters page and trigger the search w/ the new filter settings.
    • Display some of the available Yelp categories (choose any 3-4 that you want).

The following optional features are implemented:

  • Search results page
    • Infinite scroll for restaurant results.
    • Implement map view of restaurant results.
    • Loading indicator displayed while fetching 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.
  • Restaurant detail page
    • Implement the restaurant detail page. (Note: most of this page is not functional. My main focus was on replicating the Yelp UI, and getting the parallex effect/fade working.)

The following additional features are implemented:

  • General
    • Add simple launch screen
  • Search results page
    • Map view zooms to fit business annotations.
    • Scroll to top of list after new search or filtering of current search.
    • Animate between the table and map views.
    • Add an empty state when there are no results.
  • Filter page
    • Sort by filter should expand as in the real Yelp app.
  • Restaurant detail page
    • Implement a layout similiar to the actual Yelp app.
    • Add paralax to display image view when scrolling.
    • All icons on the business detail page created by me in Sketch App.
    • Scrolling down to pop business photo in a new photos modal.

TODO

  • Save and populate filters unless a new search term was entered.
  • Code refactoring.

Video Walk-through

Here's a walk-through of implemented user stories:

Video Walk-through

GIF created with LiceCap.

Notes

Describe any challenges encountered while building the app.

License

Copyright 2016 Marc Adam Anderson

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

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

About

CodePath Week 2 Assignment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published