Code Monkey home page Code Monkey logo

flixster's Introduction

Flix

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


Flix 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

Portrait mode:


Landscape mode:


Notes

It was difficult to connect the youtube videos to the app, but figured out that the way to do this is by creating a new youtube API key and parsing it to get the appropriate information.

Open-source libraries used

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

Flix 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

Portrait mode:


Landscape mode:


Notes

My app would keep crashing because of a false format statement. I learned the correct way to debug using debugger and also how to parse an api and get relevant information. The process of getting the information and displaying in a certain format taught me a lot about how to connect the app to information from online api!

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

palakgajera avatar

Watchers

 avatar

flixster's Issues

Project Feedback!

๐Ÿ‘ One of the most important parts 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.