popcorn
πΏ Discover your next favorite movie. A Flutter app showcasing Clean Architecture, Bloc, and TMDB API integration.
File Explorer
Download Latest Version (.zip)- AndroidManifest.xml
- MainActivity.kt
- launch_background.xml
- launch_background.xml
- ic_launcher.png
- ic_launcher.png
- ic_launcher.png
- ic_launcher.png
- ic_launcher.png
- styles.xml
- styles.xml
- AndroidManifest.xml
- AndroidManifest.xml
- build.gradle.kts
- gradle-wrapper.properties
- .gitignore
- build.gradle.kts
- gradle.properties
- settings.gradle.kts
- Fraunces-Bold.ttf
- Fraunces-Regular.ttf
- Fraunces-SemiBold.ttf
- Inter-Bold.ttf
- Inter-Medium.ttf
- Inter-Regular.ttf
- Inter-SemiBold.ttf
- connection_popcorn.png
- problem_popcorn.png
- terrified_popcorn.png
- thrilled_popcorn.png
- onboarding_page1.png
- onboarding_page2.png
- film_strip.png
- happy_popcorn.png
- app_icon.png
- detail_1.png
- detail_2.png
- home.png
- home_2.png
- movies_list.png
- onboarding_1.png
- onboarding_2.png
- search_genres.png
- search_results.png
- splash.png
- watchlist.png
- AppFrameworkInfo.plist
- Debug.xcconfig
- Release.xcconfig
- 1024.png
- 114.png
- 120.png
- 180.png
- 29.png
- 40.png
- 57.png
- 58.png
- 60.png
- 80.png
- 87.png
- Contents.json
- LaunchScreen.storyboard
- Main.storyboard
- AppDelegate.swift
- Info.plist
- Runner-Bridging-Header.h
- IDEWorkspaceChecks.plist
- WorkspaceSettings.xcsettings
- contents.xcworkspacedata
- Runner.xcscheme
- project.pbxproj
- IDEWorkspaceChecks.plist
- WorkspaceSettings.xcsettings
- contents.xcworkspacedata
- RunnerTests.swift
- .gitignore
- Podfile
- Podfile.lock
- app_constants.dart
- constants.dart
- di.dart
- injection.dart
- error.dart
- failures.dart
- guard.dart
- api_endpoints.dart
- dio_client.dart
- network.dart
- app_router.dart
- glass_nav_shell.dart
- router.dart
- onboarding_storage.dart
- storage.dart
- app_colors.dart
- app_text_styles.dart
- app_theme.dart
- theme.dart
- either.dart
- types.dart
- usecase.dart
- core.dart
- datasources.dart
- detail_remote_datasource.dart
- cast_member_model.dart
- models.dart
- movie_detail_model.dart
- detail_repository_impl.dart
- repositories.dart
- data.dart
- cast_member.dart
- entities.dart
- movie_detail.dart
- detail_repository.dart
- repositories.dart
- get_movie_credits.dart
- get_movie_detail.dart
- get_similar_movies.dart
- usecases.dart
- domain.dart
- bloc.dart
- detail_bloc.dart
- detail_event.dart
- detail_state.dart
- detail_screen.dart
- screens.dart
- cast_avatar.dart
- detail_actions.dart
- detail_backdrop_header.dart
- detail_cast_section.dart
- detail_genres.dart
- detail_overview.dart
- detail_poster_title.dart
- detail_similar_section.dart
- detail_stats_row.dart
- widgets.dart
- presentation.dart
- detail.dart
- datasources.dart
- home_remote_datasource.dart
- genre_model.dart
- models.dart
- movie_model.dart
- home_repository_impl.dart
- repositories.dart
- data.dart
- entities.dart
- genre.dart
- movie.dart
- home_repository.dart
- repositories.dart
- get_movie_genres.dart
- get_popular_movies.dart
- get_top_rated_movies.dart
- get_trending_movies.dart
- usecases.dart
- domain.dart
- bloc.dart
- home_bloc.dart
- home_event.dart
- home_state.dart
- home_screen.dart
- movies_list_screen.dart
- screens.dart
- home_hero_section.dart
- movie_card.dart
- movie_list_item.dart
- movie_section.dart
- new_releases_grid.dart
- widgets.dart
- presentation.dart
- home.dart
- onboarding_screen.dart
- screens.dart
- onboarding_step.dart
- widgets.dart
- presentation.dart
- onboarding.dart
- datasources.dart
- search_remote_datasource.dart
- repositories.dart
- search_repository_impl.dart
- data.dart
- entities.dart
- genre_category.dart
- repositories.dart
- search_repository.dart
- discover_by_genre.dart
- get_genre_backdrops.dart
- search_movies.dart
- usecases.dart
- domain.dart
- bloc.dart
- search_bloc.dart
- search_event.dart
- search_state.dart
- screens.dart
- search_screen.dart
- active_filter_chip.dart
- genre_card.dart
- genre_grid.dart
- search_app_bar.dart
- search_empty_state.dart
- search_error_state.dart
- search_result_item.dart
- search_results_list.dart
- widgets.dart
- presentation.dart
- search.dart
- screens.dart
- splash_screen.dart
- presentation.dart
- splash.dart
- data.dart
- watchlist_storage.dart
- bloc.dart
- watchlist_bloc.dart
- watchlist_event.dart
- watchlist_state.dart
- screens.dart
- watchlist_screen.dart
- watchlist_empty.dart
- watchlist_poster_card.dart
- watchlist_toggle_button.dart
- widgets.dart
- presentation.dart
- watchlist.dart
- features.dart
- app_empty_state.dart
- app_error_state.dart
- glass_back_button.dart
- movie_rating.dart
- popcorn_button.dart
- popcorn_shimmer.dart
- poster_fallback.dart
- pressable_scale.dart
- widgets.dart
- shared.dart
- lib.dart
- main.dart
- .env.example
- .gitignore
- .metadata
- analysis_options.yaml
- pubspec.lock
- pubspec.yaml
- README.md
# Installation Guide
1. Get the code
git clone https://github.com/aydozy/popcorn
Downloads the entire project code from GitHub to your computer.
cd popcorn
Moves into the project folder you just downloaded.
2. Gradle (Java/Kotlin)
Medium RecommendedPrerequisites
- Git Needed to download the project code from GitHub.
- JDK (Java) Required to build and run Java/Kotlin projects.
- Gradle If the repo includes gradlew (Gradle Wrapper), you don't need to install Gradle separately.
cd android/app
This project's files live in a subfolder, so move into it first.
./gradlew build
Builds the project using Gradle.
A BUILD SUCCESSFUL message means it worked. The output is created under build/.
// repository documentation
Was this content helpful?
(0 ratings)
