Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/angjelkom/flutter_netflix
Netflix Clone with BloC, GoRouter and TMDB.
https://github.com/angjelkom/flutter_netflix
bloc dart flutter flutter-app gorouter netflix-clone slivers tmdb tmdb-api
Last synced: 4 days ago
JSON representation
Netflix Clone with BloC, GoRouter and TMDB.
- Host: GitHub
- URL: https://github.com/angjelkom/flutter_netflix
- Owner: angjelkom
- License: mit
- Created: 2022-11-06T20:57:07.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-20T16:42:39.000Z (7 months ago)
- Last Synced: 2024-10-19T04:30:33.841Z (2 months ago)
- Topics: bloc, dart, flutter, flutter-app, gorouter, netflix-clone, slivers, tmdb, tmdb-api
- Language: Dart
- Homepage:
- Size: 553 KB
- Stars: 161
- Watchers: 6
- Forks: 42
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π Netflix UI Clone in Flutter using BloC
![Backdrop](https://user-images.githubusercontent.com/9529847/200143091-d3d65ea0-128d-4adc-800f-369158b11f71.png)
The Project uses BloC package to manage the state and GoRouter for navigation. It use the awesome [TMDB](https://www.themoviedb.org/) [API](https://www.themoviedb.org/documentation/api) to fetch the needed tv shows and movie data.
The main purpose of this project is to demonstrate the usage of BloC and GoRouter combined but even more to demonstrate Slivers usage in Flutter. It heavily depends on Slivers, like CustomScrollView, SliverList, GridView, SliverAppBar and even SliverPersistentHeader. It also has a BottomBarNavigation nicely implemented with GoRouter's ShellRoute. Apart from that it uses Hero Widgets in order to animate a simple small transition when moving from Home -> Tv Shows and a CustomPainter to replicate the smiley faces on the profiles.
It contains various screens like Profile Selection, Home, New & Hot, Movie and Tv Show Details Page.
Apart from that the project implements custom App Icon and Splash Screen and on Android it uses the new Android 12 API for showing Splash screen.
NOTE: This project is not a complete Netflix UI Clone but I would say it's the most "complete" compared to other on the internet which in their way are awesome as well!
# Download
For those that want to have a quick look at the app you can download and install the apk on an android device or emulator from [Releases](https://github.com/angjelkom/flutter_netflix/releases/download/v1.0.0/flutter-netflix-v1.0.0.apk).# Running
1. Get Packages
```dart
flutter pub get
```
2. Get an API key from [TMDB](https://www.themoviedb.org/documentation/api) and replace it in `lib/api/api.dart`
```dart
final apiKey = 'INSERT_YOUR_API_KEY_HERE';
```
3. Run App
```dart
flutter run --release
```# Links
[Netflix Clone in Flutter using BloC, GoRouter andΒ TMDB - Medium](https://medium.com/@angjelkom/netflix-clone-in-flutter-using-bloc-gorouter-and-tmdb-2eeff4d22a75)
[TMDB Site](https://www.themoviedb.org/)
[TMDB API](https://www.themoviedb.org/documentation/api)
# Credits
# Licence
flutter_netflix is Licenced under the [MIT Licence](https://github.com/echonox/main/LICENSE)