Android Application for a user’s favorite Movies, TV shows and Anime while keeping up to date with the latest releases.

Last update: Jun 19, 2022

Contributors Forks Stargazers Issues MIT License LinkedIn

MovieDroid

Native Android Application for organized and categorized list of a user’s favorite movies and TV shows while keeping up to date with the latest releases.

Explore the docs »
View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

MovieDroid is a completely free and open source native android application that maintains an organized and categorized list of a user's favourite movies and TV shows. The app aims at helping a user keep track of the shows they have watched while keeping to up-to-date with the latest releases.

Built With

   

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

Installation

Below is an example of how you can install and set up your app.

  1. Clone the repo
    git clone https://github.com/PEC-CSS/MovieDroid.git
  2. Open Android Studio. Go to File->Open... and locate and open your cloned project. Then wait for all the dependencies to get installed.
  3. To setup firebase for development on your local system, comment out all the firebase dependencies in the app level build.gradle file and run gradle sync.
  4. Create a project on Firebase and add the package name of the project com.pec_acm.moviedroid
  5. Enable Google Sign in authentication, Realtime Database and Firebase Storage in your Firebase project.
  6. Add your SHA1 and SHA256 fingerprints to the app in the firebase project settings. You can get these by running the command:
  • For windows
keytool -list -v -keystore C:\Users\your_user_name\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android
  • For mac
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
  1. Download the google-services.json file in your firebase project and replace it with the google-services.json present in the cloned project.
  2. Uncomment all the firebase dependencies and run gradle sync again.

Usage

  • Open the cloned project in Android Studio.
  • Select your preferred device and click on Run app.
  • You can run the app using:
    • Virtual device - If you haven't created a virtual device yet, create one by going to Tools->AVD Manager (Device Manager in Bumblebee) and create virtual device, choose the device specifications according to your needs. Select your virtual device from the list of devices and run the app
    • Physical device - In your android device, go to settings and enable developer options. Connect your device to your system using USB or WiFi (Only for Android 11)

For more examples, please refer to the Documentation

Contributors

This project exists thanks to all the people who contribute. [Contributing].

See the open issues for a full list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Be sure to read the contribution guidelines before contributing.

License

Distributed under the MIT License. See LICENSE for more information.

Contact

[email protected]

Acknowledgments

(back to top)

GitHub

https://github.com/PEC-CSS/MovieDroid
Comments
  • 1. Added chips and tvshow search

    Description

    bish idgaf, but search for tv show and chips were added

    • [x] I have read the contribution guidelines.
    • [x] I have read the code of conduct.
    • [x] I have reviewed my submission in detail.
    Reviewed by yellowHatpro at 2022-05-15 06:12
  • 2. Display the number of entries in each user list

    Display the number of entries in a user list just above the RecyclerView of that list. For example, if there are 3 items, you need to display '3 entries' just above the first item image

    Reviewed by ken1000minus7 at 2022-04-26 17:26
  • 3. Add a Navigation Drawer

    Add a navigation drawer that will show general options like profile, settings, log out. These options will be changed or implemented later

    Refer official android docs: https://developer.android.com/guide/navigation/navigation-ui#add_a_navigation_drawer

    Reviewed by ken1000minus7 at 2022-04-23 04:46
  • 4. Add search for Tv Shows using chips

    Currently we can only search for movies in the SearchFragment. Add chips below the search bar to select whether to search for movie or Tv Show. We can keep the movie chip as checked by default.

    Chips in Material UI https://material.io/components/chips/android#using-chips

    Reviewed by ken1000minus7 at 2022-05-06 10:29
  • 5. data binding removed, bumped dependencies

    Description

    stfu im admin bich Describe the changes you have made.

    Issue Resolved

    Link to the issue that is resolved by this pull request goes here e.g. 'Fixes #10'.

    Screenshots

    Provide some screenshots of the changes made (if applicable).

    Checklist

    Please make sure to review the following before submitting your PR:

    • [x] I have read the contribution guidelines.
    • [x] I have read the code of conduct.
    • [x] I have reviewed my submission in detail.
    Reviewed by yellowHatpro at 2022-05-13 08:50
  • 6. Adds fix for issue https://github.com/PEC-CSS/MovieDroid/issues/21

    Description

    • Adds navigation view to tool bar.
    • Adds header to navigation view to display profile picture, username, user email id
    • Add 3 option to navigation view [Profile, Settings, Logout]
    • Adds LogoutDialogFragment to implement logout functionality.

    Issue Resolved

    Fixes issue https://github.com/PEC-CSS/MovieDroid/issues/21

    Checklist

    • [x] I have read the contribution guidelines.
    • [x] I have read the code of conduct.
    • [x] I have reviewed my submission in detail.
    Reviewed by bharadwajmsr at 2022-05-08 08:51
  • 7. Adds fix for issue https://github.com/PEC-CSS/MovieDroid/issues/22

    • Adds new parameter "showCount" in ListAdapter constructor.

    • Add new ViewHolder named ListViewCountViewHolder and its layout to show count of list in case of showCount is true.

    • Modifies ListAdapter.ListViewHolder to use view binding.

    • Member variable of ListAdapter are made private as they are not being accessed outside the class.

    • Adds new string resource.

    Reviewed by bharadwajmsr at 2022-05-06 08:18
  • 8. Add UI Lottie Dependency

    Closing Issue #14

    Added Lottie dependency in app-level build.gradle within UI group under dependencies:

    implementation 'com.airbnb.android:lottie:3.4.0'

    Reviewed by Krishan3099 at 2022-03-29 22:19
  • 9. Implement ViewBinding in all Activities and Fragments

    Currently most of the activities and fragments use findViewById for accessing the views from the xml file. However, it is preferred to replace it with Jetpack ViewBinding to ensure type and null check and avoid unnecessary boilerplate code.

    What is ViewBinding and how to implement it?

    Refer the official android docs https://developer.android.com/topic/libraries/view-binding

    Reviewed by ken1000minus7 at 2022-03-29 18:23
  • 10. Replace IMDB API with TMDB API

    IMDB API has request limits in its free version and hence we have decided to replace it with TMDB API that has no such request limits.

    TMDB API docs https://developers.themoviedb.org/3

    Reviewed by ken1000minus7 at 2022-04-01 05:10
  • 11. Add Lottie Library

    Lottie is an animation library used for easily adding animations to the app. Add the dependencies for the Lottie animation library in the app level build.gradle file

    How to do that?

    Open the app level build.gradle file and under dependencies, add the following

    implementation 'com.airbnb.android:lottie:3.4.0'
    
    Reviewed by ken1000minus7 at 2022-03-29 17:46
  • 12. Add colors for Night mode

    Add suitable colors for night mode in the night colors.xml file and corresponding light mode colors in the original colors.xml and use the colors wherever required. Each color in the night colors.xml should have the same name as their light mode counterpart in the original colors.xml.

    Like for example In the original colors.xml

    <color name="text_color">#000000</color>
    

    Then subsequently in the night colors.xml

    <color name="text_color">#FFFFFF</color>
    
    PS This is just an example, all the colors of the app need to be added and not just this (probably don't even need to add this)
    Reviewed by ken1000minus7 at 2022-06-07 13:40
  • 13. Setup a basic onboarding in LoginActivity

    Add a basic onboarding to the LoginActivity initially consisting of three pages. They can remain empty for now as they will be filled with the appropriate content later. Along with this, the login functionality should be shifted to a fragment inside the LoginActivity instead of the LoginActivity so that onboarding can be used along with it.

    Reviewed by ken1000minus7 at 2022-05-20 17:11
  • 14. Improve the SearchView

    Currently the SearchFragment uses a basic search view which is not at all appealing, improve upon the design of the search view to make it similar to those present in most of the apps. Try to make the design relevant to its purpose, i.e., searching movies and TV shows

    Reviewed by ken1000minus7 at 2022-05-16 20:34
  • 15. Improve the LoginActivity UI

    The current UI of the login activity is very dull with just a single sign in button. Improve upon the UI to make it more attractive and preferably add animations to make it more appealing

    Reviewed by ken1000minus7 at 2022-05-15 09:04
  • 16. Add Lottie animations

    Add suitable lottie animations that should appear when search results are loading, movie details are loading and at any other relevant places.

    https://lottiefiles.com/getting-started

    Reviewed by ken1000minus7 at 2022-05-15 09:00
Android app for streaming and downloading Movies, TV-Series and Anime.
Android app for streaming and downloading Movies, TV-Series and Anime.

CloudStream-3 DOWNLOAD: https://github.com/LagradOst/CloudStream-3/releases Discord: https://discord.gg/5Hus6fM Features: AdFree, No ads whatsoever No

Jun 22, 2022
A mobile application that contains up-to-date information about the latest earthquakes in Turkey, scientific explanations about earthquakes, and Turkey's earthquake map.
A mobile application that contains up-to-date information about the latest earthquakes in Turkey, scientific explanations about earthquakes, and Turkey's earthquake map.

Recent-Earthquakes A mobile application that contains up-to-date information about the latest earthquakes in Turkey, scientific explanations about ear

Apr 18, 2022
An Android App based on MVVM Architecture which shows random anime images from some famous subreddits
An Android App based on MVVM Architecture which shows random anime images from some famous subreddits

Android App which shows random anime wallpapers from some famous subreddits like r/animeArt, r/imaginarySliceOfLife, r/animePhoneWallpapers and animeWallpapersSfw

Mar 2, 2022
Movies - Simple Application to show movies and advertisemnets

Movies Simple Application to show movies and advertisemnets Technologies This Ap

Feb 3, 2022
Movies-db-example - Sample Android application that loads movies data from a remote server

Movies Application Sample Android application that loads movies data from a remo

Feb 8, 2022
Android app which fetches a sample movies list to display. Built using Kotlin and latest Android tech stack, with an approach to clean architecture.
Android app which fetches a sample movies list to display. Built using Kotlin and latest Android tech stack, with an approach to clean architecture.

movies-sample-app This is an Android app which fetches a sample movies list to display. Built using Kotlin and latest Android tech stack, with an appr

Oct 21, 2021
BabyBook - Android Mobile application about keeping a baby book

BabyBook Android Mobile application about keeping a baby book Used Tech Language

Jan 27, 2022
MovieLibrary -An android application which uses tmdb API to fetch the data for various movies and TV Shows
MovieLibrary -An android application which uses tmdb API to fetch the data for various movies and TV Shows

MovieLibrary -An android application which uses tmdb API to fetch the data for various movies and TV Shows

May 1, 2022
Hobby-keeping - Platform to record books that you read and games you played! Made with Kotlin and Spring Framework
Hobby-keeping - Platform to record books that you read and games you played! Made with Kotlin and Spring Framework

Hobby Keeping API to record books that you read and games you played! Made with

Jan 29, 2022
NewsFeedApp - An android news-feed-app which shows latest news of various sources
NewsFeedApp - An android news-feed-app which shows latest news of various sources

NewsFeedApp An android news-feed-app which shows latest news of various sources

May 27, 2022
This app shows you the latest news within the last two hours
This app shows you the latest news within the last two hours

News This app shows you the latest news within the last two hours. also it let's

Dec 21, 2021
App uses the TMDB in order to provide a list of movies, artists and TV shows

MoviesAppTMDB This app uses the TMDB in order to provide a list of movies, artists and TV shows. The purpose of this app is to demonstrate the use of

Nov 4, 2021
The App Loads list of popular movies from a mock API and shows in a recyclerView
The App Loads list of popular movies from a mock API and shows in a recyclerView

popular-movies-app About The App Loads list of popular movies from a mock API and shows in a recyclerView. Any item can be clicked to open the Movie D

Oct 30, 2021
Readow - Readow RSS Reader application. It’s fast and clean, giving you the freedom to enjoy your favorite news
Readow - Readow RSS Reader application. It’s fast and clean, giving you the freedom to enjoy your favorite news

Readow Readow RSS Reader application. It’s fast and clean, giving you the freedo

Apr 25, 2022
New version of my Android app that shows you popular movies using themoviedb.org API.
New version of my Android app that shows you popular movies using themoviedb.org API.

New version of my Android app that shows you popular movies using themoviedb.org API. Using Modern Android Develpment skills like Kotlin, Room, Retrofit, Hilt, coroutines, Flow and Jetpack Compose.

Apr 21, 2022
Cryptac - Mobile application to track your favorite cryptos information. 🚀
Cryptac - Mobile application to track your favorite cryptos information. 🚀

What is it? ?? Cryptac is a mobile application that allows you to track the main important information about your favorite cryptos. It is currently av

Feb 25, 2022
Cryptac is a mobile application that allows you to track the main important information about your favorite cryptos
Cryptac is a mobile application that allows you to track the main important information about your favorite cryptos

Cryptac is a mobile application that allows you to track the main important information about your favorite cryptos.

Jan 21, 2022
AnimApp is an app that recommends you random anime and you can add it to your favourite if you like it.
AnimApp is an app that recommends you random anime and you can add it to your favourite if you like it.

papb-team6 AnimApp is an app that recommends you animes and you can add it to your favourite if you like it. Team members: Firdaus Bisma Suryakusuma (

Mar 9, 2022
An Android app to watch anime on your phone without ads.
An Android app to watch anime on your phone without ads.

Anime X Stream An Android app to watch anime on your phone without ads. WARNING: THIS IS A BETA VERSION of application, THEREFORE YOU MAY ENCOUNTER BU

Jun 16, 2022