Movie Hub

  Movie, Streaming

Movie Hub šŸŽ¬šŸ˜

Movie Hub is an app that allows users to view different categories of movies and also watch!. It creates an immersive and seamless movie-watching experience!. It is built with FlutteršŸ˜šŸ˜Œ and Firebase using theĀ TMDB APIĀ andĀ VidSrcĀ for viewing the movies.

It provides an interactive and captivating experience for the user!

Demo

Ā Screen.Recording.2023-12-21.at.15.48.58.movĀ 

Preview

Screenshot 2023-12-21 at 15 17 25Ā Screenshot 2023-12-21 at 15 17 33Ā Screenshot 2023-12-21 at 15 17 44Ā Screenshot 2023-12-21 at 15 18 06Ā Screenshot 2023-12-21 at 15 18 16Ā Screenshot 2023-12-21 at 15 18 21Ā Screenshot 2023-12-21 at 15 18 51Ā Screenshot 2023-12-21 at 15 18 57Ā Screenshot 2023-12-21 at 15 20 03Ā Screenshot 2023-12-21 at 15 28 58Ā Screenshot 2023-12-21 at 15 18 57

Key Features

  • View movies in diverse categories (e.g Trending, Popular, Upcoming, Top Rated)
  • Discover Movies
  • Watch movies
  • Add Movies to watchList
  • Search for Movies
  • Sign in, Sign Up, Forgot Password, Sign Out
  • Choose Avatar
  • View Similar Movies to a Movie
  • View Images from a Movie
  • Infinite scrolling with pagination
  • Nice Loading UI with the Shimmer
  • Visit Movie’s webpage

Installation

  • You can download the apk to your Android device fromĀ here

To run MovieHub from the Codebase, you need to get a TMDB API key fromĀ hereĀ you will have to create an account, if you don’t have one.

Once you have the API Key, you can create an api_keys.dart file, locate the lib > core > utils and create the file under it

Add the following:

String get baseUrl => 'https://api.themoviedb.org/3';

String get apiKey => 'YOUR API KEY';

String get videoBaseUrl => 'https://vidsrc.to/embed/movie/';

You also need to create a firebase project atĀ Firebase

With all these in place, you can

flutter run

Packages Used

Lessons Learned and Challenges faced

Veni, Vidi, Vici!

I faced a lot of issues during the development of this app, but i also learnt alot!

  • The main reason why i took on this task is to explore Firebase well, and i did that to an extent, exploring its Database, Storage, Crashlytics and Authentication Services.
  • I had issues trying to make watching movies possible, then when i thought i had gotten it right, it wasn’t working on Android šŸ¤¦šŸ½ā€ā™€ļøšŸ˜‚, but i had to do more research and changed the webview package , after a lot of iteration, it worked!
  • I also had issues while implementing the watchlist section, i had a bug that took me a while to fix, but after speaking to my seniors and alot of reflection, i got it right
  • What kept me going was the joy i felt after i completed a feature successfully.