kelvinluime / movies-browser

An iOS app that allows user to browse current playing movies.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Project 1 - Flix

Flix is a movies app using the The Movie Database API.

Time spent: 6+ hours spent in total

User Stories

The following required user stories are complete:

  • User sees app icon in home screen and styled launch screen (+1pt)
  • User can scroll through a list of movies currently playing in theaters from The Movie DB API (+5pt)
  • User can "Pull to refresh" the movie list (+2pt)
  • User sees a loading state while waiting for the movies to load (+2pt)

The following optional user stories are implemented:

  • User sees an alert when there's a networking error (+1pt)
  • User can search for a movie (+3pt)
  • While poster is being fetched, user see's a placeholder image (+1pt)
  • User sees image transition for images coming from network, not when it is loaded from cache (+1pt)
  • Customize the selection effect of the cell (+1pt)
  • For the large poster, load the low resolution image first and then switch to the high resolution image when complete (+2pt)

The following additional user stories are implemented:

  • List anything else that you can get done to improve the app functionality! (+1-3pts)
  • User can tap on the movies to see their rating and entire overview

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 segue from one view controller to multiple other view controllers based on the cell tapped by the user?
  2. How to filter an array of dictionaries for search bar to work?

Video Walkthrough

Here's a walkthrough of implemented user stories:

Video Walkthrough

GIF created with LiceCap.

Notes

Describe any challenges encountered while building the app. It takes some time to learn the concepts of fetching JSON data, segues between view controllers, and view table.

License

Copyright 2018 Kin Man Lui

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.

Project 2 - Flix

Flix is a movies app displaying box office and top rental DVDs using The Movie Database API.

Time spent: 4 hours spent in total

User Stories

The following required functionality is completed:

  • User can tap a cell to see a detail view (+5pts)
  • User can tap a tab bar button to view a grid layout of Movie Posters using a CollectionView (+5pts)

The following stretch features are implemented:

  • User can tap a poster in the collection view to see a detail screen of that movie (+3pts)
  • In the detail view, when the user taps the poster, a new screen is presented modally where they can view the trailer (+3pts)
  • Customize the navigation bar (+1pt)
  • List in any optionals you didn't finish from last week (+1-3pts)
    • ...
    • ...

The following additional features are implemented:

  • List anything else that you can get done to improve the app functionality!

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 display trailer directly without opening youtube website?
  2. How to display a "play" button over the poster image so that the user knows tapping the poster will play the trailer?

Video Walkthrough

Here's a walkthrough of implemented user stories:

Video Walkthrough

GIF created with LiceCap.

Notes

Describe any challenges encountered while building the app.

Challenges are organizing and managing different views as the size of the app becomes bigger.

License

Copyright 2018 Kin Man Lui 

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.

Lab 3 - Flix

Flix is a movies app displaying box office and top rental DVDs using The Movie Database API.

Time spent: 2 hours spent in total

User Stories

The following required user stories are complete:

  • The following screens use AutoLayout to adapt to various orientations and screen sizes
    • Movie feed view (+3pt)
    • Detail view (+2pt)

The following stretch user stories are implemented:

  • Dynamic Height Cells (+1)
  • Collection View AutoLayout (+2)

The following additional user stories are implemented:

  • List anything else that you can get done to improve the app functionality! (+1-3pts)

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):

Video Walkthrough

Here's a walkthrough of implemented user stories:

Video Walkthrough

GIF created with LiceCap.

Notes

Describe any challenges encountered while building the app.

License

Copyright 2017 Kin Man Lui 

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.

Lab 5 - Flix

Flix is a movies app displaying box office and top rental DVDs using The Movie Database API.

Time spent: 2 hours spent in total

User Stories

The following required user stories are complete:

  • Create a movie model (+2pt)
  • Implement the movie model (+2pt)
  • Implement property observers (+2pt)
  • Create a basic API Client (+2pt)

The following additional user stories are implemented:

  • List anything else that you can get done to improve the app functionality! (+1-3pts)

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):

Video Walkthrough

Here's a walkthrough of implemented user stories:

Video Walkthrough

GIF created with LiceCap.

Notes

Describe any challenges encountered while building the app.

License

Copyright 2018 Kin Man Lui 

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

An iOS app that allows user to browse current playing movies.


Languages

Language:Swift 98.4%Language:Ruby 1.6%