├── .gitignore ├── LICENSE.md ├── README.md ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── co │ │ └── icanteach │ │ └── projectx │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── co │ │ │ └── icanteach │ │ │ └── projectx │ │ │ ├── InterviewApplication.kt │ │ │ ├── MainActivity.kt │ │ │ ├── common │ │ │ ├── EndlessScrollListener.kt │ │ │ ├── Extensions.kt │ │ │ ├── ImageBindingAdapter.kt │ │ │ ├── Mapper.kt │ │ │ ├── ReactiveViewModel.kt │ │ │ ├── Resource.kt │ │ │ └── di │ │ │ │ ├── ViewModelFactory.kt │ │ │ │ ├── component │ │ │ │ └── AppComponent.kt │ │ │ │ ├── key │ │ │ │ └── ViewModelKey.kt │ │ │ │ ├── module │ │ │ │ ├── ActivityBuilderModule.kt │ │ │ │ ├── DataModule.kt │ │ │ │ └── ViewModelModule.kt │ │ │ │ └── scope │ │ │ │ └── ActivityScope.kt │ │ │ ├── data │ │ │ ├── InterviewRestInterface.kt │ │ │ ├── NetworkModule.kt │ │ │ ├── RequestInterceptor.kt │ │ │ └── feed │ │ │ │ ├── MoviesRemoteDataSource.kt │ │ │ │ ├── MoviesRepository.kt │ │ │ │ └── response │ │ │ │ ├── PopularTVShowItemResponse.kt │ │ │ │ └── PopularTVShowsResponse.kt │ │ │ └── ui │ │ │ └── populartvshows │ │ │ ├── FetchPopularTvShowUseCase.kt │ │ │ ├── PopularTVShowsFeedAdapter.kt │ │ │ ├── PopularTVShowsFeedItemViewState.kt │ │ │ ├── PopularTVShowsStatusViewState.kt │ │ │ ├── PopularTVShowsViewModel.kt │ │ │ ├── PopularTvShowActivityModule.kt │ │ │ ├── PopularTvShowMapper.kt │ │ │ └── model │ │ │ ├── PopularTvShowItem.kt │ │ │ └── PopularTvShows.kt │ └── res │ │ ├── drawable-v24 │ │ └── ic_launcher_foreground.xml │ │ ├── drawable │ │ └── ic_launcher_background.xml │ │ ├── layout │ │ ├── activity_main.xml │ │ └── item_popular_tv_shows_feed.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ └── values │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── test │ └── java │ └── co │ └── icanteach │ ├── RxImmediateSchedulerRule.kt │ └── projectx │ ├── PopularTVShowsFeedItemViewStateTest.kt │ ├── PopularTVShowsFeedViewStateTest.kt │ ├── PopularTVShowsViewModelTest.kt │ └── PopularTvShowsTestSuite.kt ├── art ├── app_ architecture.jpeg └── app_screenshot.png ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/README.md -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | *.iml -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/build.gradle -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/proguard-rules.pro -------------------------------------------------------------------------------- /app/src/androidTest/java/co/icanteach/projectx/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/androidTest/java/co/icanteach/projectx/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/InterviewApplication.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/InterviewApplication.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/MainActivity.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/EndlessScrollListener.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/EndlessScrollListener.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/Extensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/Extensions.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/ImageBindingAdapter.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/ImageBindingAdapter.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/Mapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/Mapper.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/ReactiveViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/ReactiveViewModel.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/Resource.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/Resource.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/di/ViewModelFactory.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/di/ViewModelFactory.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/di/component/AppComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/di/component/AppComponent.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/di/key/ViewModelKey.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/di/key/ViewModelKey.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/di/module/ActivityBuilderModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/di/module/ActivityBuilderModule.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/di/module/DataModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/di/module/DataModule.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/di/module/ViewModelModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/di/module/ViewModelModule.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/common/di/scope/ActivityScope.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/common/di/scope/ActivityScope.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/data/InterviewRestInterface.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/data/InterviewRestInterface.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/data/NetworkModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/data/NetworkModule.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/data/RequestInterceptor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/data/RequestInterceptor.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/data/feed/MoviesRemoteDataSource.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/data/feed/MoviesRemoteDataSource.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/data/feed/MoviesRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/data/feed/MoviesRepository.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/data/feed/response/PopularTVShowItemResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/data/feed/response/PopularTVShowItemResponse.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/data/feed/response/PopularTVShowsResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/data/feed/response/PopularTVShowsResponse.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/FetchPopularTvShowUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/FetchPopularTvShowUseCase.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTVShowsFeedAdapter.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTVShowsFeedAdapter.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTVShowsFeedItemViewState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTVShowsFeedItemViewState.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTVShowsStatusViewState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTVShowsStatusViewState.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTVShowsViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTVShowsViewModel.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTvShowActivityModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTvShowActivityModule.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTvShowMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/PopularTvShowMapper.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/model/PopularTvShowItem.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/model/PopularTvShowItem.kt -------------------------------------------------------------------------------- /app/src/main/java/co/icanteach/projectx/ui/populartvshows/model/PopularTvShows.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/java/co/icanteach/projectx/ui/populartvshows/model/PopularTvShows.kt -------------------------------------------------------------------------------- /app/src/main/res/drawable-v24/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/drawable-v24/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/drawable/ic_launcher_background.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/layout/activity_main.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/item_popular_tv_shows_feed.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/layout/item_popular_tv_shows_feed.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /app/src/test/java/co/icanteach/RxImmediateSchedulerRule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/test/java/co/icanteach/RxImmediateSchedulerRule.kt -------------------------------------------------------------------------------- /app/src/test/java/co/icanteach/projectx/PopularTVShowsFeedItemViewStateTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/test/java/co/icanteach/projectx/PopularTVShowsFeedItemViewStateTest.kt -------------------------------------------------------------------------------- /app/src/test/java/co/icanteach/projectx/PopularTVShowsFeedViewStateTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/test/java/co/icanteach/projectx/PopularTVShowsFeedViewStateTest.kt -------------------------------------------------------------------------------- /app/src/test/java/co/icanteach/projectx/PopularTVShowsViewModelTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/test/java/co/icanteach/projectx/PopularTVShowsViewModelTest.kt -------------------------------------------------------------------------------- /app/src/test/java/co/icanteach/projectx/PopularTvShowsTestSuite.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/app/src/test/java/co/icanteach/projectx/PopularTvShowsTestSuite.kt -------------------------------------------------------------------------------- /art/app_ architecture.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/art/app_ architecture.jpeg -------------------------------------------------------------------------------- /art/app_screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/art/app_screenshot.png -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/muratcanbur/ProjectX/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | --------------------------------------------------------------------------------