Flutter application about movies, TV shows and actors using TMDB.
An application developed using the excellent TMDB API. The user logs into the application using one of three methods (FirebaseAuth) or automatically (Hive) if he has logged in before. On the main screen, there are various categories of movies and TV shows such as Popular, Coming Soon, Recommended (only visible to users who have liked any titles) Greatest Hits, Random Decade Hits (selected randomly when the app starts), Best of Random Year and Categories (genres). Users can search for given movies, TV shows or actors and see their favorites in dedicated screens.
After clicking on a given tile, a screen with details is shown. For a given actor it include photos, a list of films and TV shows in which actor appeared, a career description and basic data such as place of birth, age and height. For movies and TV shows the following are shown: cast, description, photos, similar titles, rating, genres and detailed data (for movies - release date, runtime, budget and revenue, for TV shows - years in which the title aired, total number of seasons and episodes). For TV shows, there is also a screen with detailed information about seasons with a list of episodes and their data (title, broadcast date, description, length, rating).
- TMDB data used with over 900.000 movies, 160.000 TV Shows, 3.000.000 people and 5.000.000 images
- Various categories along with two randomly generated
- Detail screens for movies, TV shows and actors
- Seasons & Episodes lists for TV shows
- Login via Facebook, Google, Login & Password
- Authentication features (username change, password reset, password change, delete account)
- User data storage in Hive & Firestore
- BLoC
- Clean Architecture
- Dio
- dotenv
- Firebase
- GetIt, injectable
- Hive
- Hooks
- Lints
- MVVM
- Pagination
- TMDB API
- Unit tests
Cinemania.1.mp4
Cinemania.2.mp4
Project was created with:
- Flutter version: 3.19.4
- Dart version: 3.3.2
- Copy repository link.
git clone https://github.com/MarekRudzki/Cinemania.git
- Open command prompt and navigate to the path where you want to clone repo.
- Paste copied link and hit enter.
- Congrats, you have successfully cloned this repository in your computer!
- Open project in IDE of your choice.
- Get a free TMDB API key from the TMDB.
- Get a free Ninjas API key from the Ninjas.
- In main app folder create a file called
.env
including:TMDBkey = Your_TMDB_Key NinjasAPIKey = 'Your_Ninjas_Key'
- Run the app.
I am a Flutter enthusiast from Poland.
- 🔭 Started my Flutter journey in March 2022.
- 📖 Learning new Flutter related stuff every day.
- 💻 In my free time, I love to read books and play video games.
- 🎮 Currently I have one app published on Google Play Store - "Słowotok - polska gra Wordle"