Giter Site home page Giter Site logo

flixster's Introduction

Flixster

Flixster is an app that allows users to browse movies from the The Movie Database API.

Flixster Part 2

User Stories

REQUIRED (10pts)

  • (8pts) Expose details of movie (ratings using RatingBar, popularity, and synopsis) in a separate activity.
  • (2pts) Allow video posts to be played in full-screen using the YouTubePlayerView.

BONUS

  • Trailers for popular movies are played automatically when the movie is selected (1 point).
    • When clicking on a popular movie (i.e. a movie voted for more than 5 stars) the video should be played immediately.
    • Less popular videos rely on the detailed page should show an image preview that can initiate playing a YouTube video.
  • Add a play icon overlay to popular movies to indicate that the movie can be played (1 point).
  • Apply the popular ButterKnife annotation library to reduce view boilerplate. (1 point)
  • Add a rounded corners for the images using the Glide transformations. (1 point)

App Walkthough GIF



Flixster Part 1

User Stories

REQUIRED (10pts)

  • (10pts) User can view a list of movies (title, poster image, and overview) currently playing in theaters from the Movie Database API.

BONUS

  • (2pts) Views should be responsive for both landscape/portrait mode.

    • (1pt) In portrait mode, the poster image, title, and movie overview is shown.
    • (1pt) In landscape mode, the rotated alternate layout should use the backdrop image instead and show the title and movie overview to the right of it.
  • (2pts) Display a nice default placeholder graphic for each image during loading

  • (2pts) Improved the user interface by experimenting with styling and coloring.

  • (2pts) For popular movies (i.e. a movie voted for more than 5 stars), the full backdrop image is displayed. Otherwise, a poster image, the movie title, and overview is listed. Use Heterogenous RecyclerViews and use different ViewHolder layout files for popular movies and less popular ones.

App Walkthough GIF



Notes

Describe any challenges encountered while building the app.

Open-source libraries used

  • Android Async HTTP - Simple asynchronous HTTP requests with JSON parsing
  • Glide - Image loading and caching library for Androids

flixster's People

Contributors

anizhou avatar

Watchers

 avatar

flixster's Issues

Project Feedback!

<img alt="+1" title="+1" src="/images/emoji/unicode/1f44d.png"}" style="vertical-align:middle" width="20" height="20" /> One of the most important part of these projects is that you add additional features and tweak the UI / UX because that will provide many more learning opportunities. I would encourage you to complete the projects each week with required stories early and then spend time adding your own UI elements and experimenting with optional extensions that will improve the user experience.

I have provided a detailed Project 1 Feedback Guide here which covers the most common issues with this submitted project. Read through the feedback guide point-by-point to determine how you could improve your submission. You should consider going back and implementing applicable feedback as well. Keep in mind that one of the most important parts of Android development is learning the correct patterns and conventions.

Hopefully this has given you a first sense of the RelativeLayout which is a very powerful layout system, probably one of the best responsive-first layout systems available across web and mobile platforms.

I would encourage you to also spend more time in future assignments improving the UI / UX as well by reviewing examples of good UI design.

If you have any particular questions about the assignment in general or on any of the feedback, post on the discussion forum or email us at [email protected].

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.