MovieDB
Find The Latest trending and upcoming movies and tv shows with MovieDB app. The app contains all info about movies and tv shows. find similar movies or shows, Browse all genres, video trailers, backdrops, logos, and posters.
Note: App is updated to version 1.0.1 you can find other versions by changing branch or in release.
Changelog
version 1.0.1
- removed cloud firestore as database.
- added hive_flutter as local database to store favorites for fast data fetching.
- added proxy server to hide Api-key and get all data in one single request(backend folder -You can deploy it to heroku).
- migrated old flutter code base (2.2.3) to latest 2.8.0 app.
- added youtube_player_flutter library to watch trailers.
- removed dynamic theming.
- added new glassy effect to each page and new theme for home page.
- added data caching for movies and tv shows.
- added image download feature. (backdrops, logos, posters)
- new animations.
- removed palette_generator package.
Note: last updated september 2022 configured project to latest flutter version 3.3.2
App Features.
- Search Functionality
- Onboarding-Screen
- Select favourite movie
- Home Screen
- Tranding movie
- Movies different category
- Popular movie
- Upcomming movie
- Tranding person of week
- Top rated movie
- Movies detail
- Movies trailer and poster
- Movie cast
- Cast member detail
- Movies on bases of keyword
- Recommendation and similar movie
Packages used:
- cupertino_icons: ^1.0.2
- intl: ^0.17.0
- http: ^0.13.4
- hive_flutter: ^1.1.0
- flutter_bloc: ^8.0.0
- font_awesome_flutter: ^9.2.0
- google_fonts: ^2.1.0
- url_launcher: ^6.0.17
- readmore: ^2.1.0
- cached_network_image: ^3.2.0
- equatable: ^2.0.3
- uni_links: ^0.5.1
- shimmer: ^2.0.0
- fluttertoast: ^8.0.8
- photo_view: ^0.13.0
- carousel_slider: ^4.0.0
How to use
frist you need to setup proxy server for app.
-
deploy backend folder to server.
-
add Envirnoment variables to your deploy server.
PS: You can easily deploy this server to heroku. Tutorial link: https://devcenter.heroku.com/articles/deploying-nodejs
API_KEY = "?api_key=<Your tmdb api key>"
OMDB_API_KEY="<your ombd api key>"
To clone and run this application, you'll need Git and Flutter installed on your computer. From your command line:
# Clone this repository
$ git clone https://github.com/Appii00/Flutter-Bloc-MovieDB-App.git
# go to lib/api/key.dart and paste your deployed server link to BASE_URL
# Go into the repository
$ cd Flutter-Bloc-MovieDB-App
# Install dependencies
$ flutter packages get
# Run the app
$ flutter run
This project is just for fun, but if you have any crazy idea for this app feel free to contribute, or create request for the features. Any contributions you make are greatly appreciated.