Flutter movie app demo built with Dart, Riverpod, and a simple clean architecture folder structure.
- Splash screen
- Onboarding screen
- Home screen
- Movie detail screen
- Search screen
- Favorites screen
- Profile screen
- Video player screen
- Flutter + Dart
- Riverpod
- go_router
- dio
- cached_network_image
- video_player
- shared_preferences
lib/
core/
config/
routing/
services/
theme/
data/
datasources/
models/
repositories/
domain/
entities/
repositories/
usecases/
presentation/
providers/
screens/
widgets/
- Install Flutter stable.
- Open the project.
- Run
flutter pub get - Run
flutter run
The project still uses mock data by default.
- Open
lib/core/config/app_config.dart - Keep
useMockData = true
- Open
lib/core/config/app_config.dart - Change
useMockData = false - Open
lib/core/config/api_config.dart - Paste your API key into
tmdbApiKey - Run the app again
If you need help or any further contact please contact through my Gmail which locate on my Github profile, wishing you have a nice day.
- This is still in the beta version of developing so expecting bugs and non-functional button.
- Remember to update Flutter and Dart to the latest version to make sure everything works.
- This repo was created in 9th April 2026, as University final project by the team of 5