{"id":15040907,"url":"https://github.com/tfaki/multi-module-nextflix-composable","last_synced_at":"2025-04-04T20:15:01.634Z","repository":{"id":42971351,"uuid":"438421106","full_name":"tfaki/Multi-Module-Nextflix-Composable","owner":"tfaki","description":"Includes jetpack compose, navigation, paging, hilt, retrofit, coil, coroutines, flow..","archived":false,"fork":false,"pushed_at":"2024-07-17T09:24:34.000Z","size":13974,"stargazers_count":435,"open_issues_count":0,"forks_count":54,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-04-04T20:14:51.240Z","etag":null,"topics":["android","android-app","android-application","android-development","coroutines","flow","gradle-kotlin-dsl","hilt-android","jetpack-android","jetpack-compose","kotlin","kotlin-android","kotlin-dsl","multimodule-kotlin-app","navigation","paging-library"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tfaki.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["tfaki"]}},"created_at":"2021-12-14T22:38:25.000Z","updated_at":"2025-04-03T18:38:30.000Z","dependencies_parsed_at":"2024-07-17T11:32:50.879Z","dependency_job_id":"a7638e00-80ad-4615-b681-7aae7990edd7","html_url":"https://github.com/tfaki/Multi-Module-Nextflix-Composable","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tfaki%2FMulti-Module-Nextflix-Composable","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tfaki%2FMulti-Module-Nextflix-Composable/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tfaki%2FMulti-Module-Nextflix-Composable/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tfaki%2FMulti-Module-Nextflix-Composable/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tfaki","download_url":"https://codeload.github.com/tfaki/Multi-Module-Nextflix-Composable/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247242681,"owners_count":20907134,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-app","android-application","android-development","coroutines","flow","gradle-kotlin-dsl","hilt-android","jetpack-android","jetpack-compose","kotlin","kotlin-android","kotlin-dsl","multimodule-kotlin-app","navigation","paging-library"],"created_at":"2024-09-24T20:45:16.225Z","updated_at":"2025-04-04T20:15:01.608Z","avatar_url":"https://github.com/tfaki.png","language":"Kotlin","funding_links":["https://github.com/sponsors/tfaki"],"categories":[],"sub_categories":[],"readme":"# Nextflix-Composable\n![Kotlin](https://img.shields.io/badge/kotlin-%230095D5.svg?style=for-the-badge\u0026logo=kotlin\u0026logoColor=white)\n![Android](https://img.shields.io/badge/Android-3DDC84?style=for-the-badge\u0026logo=android\u0026logoColor=white)\n![Android Studio](https://img.shields.io/badge/Android%20Studio-3DDC84.svg?style=for-the-badge\u0026logo=android-studio\u0026logoColor=white)\n\n[![](https://img.shields.io/badge/Android%20Arsenal-Multi--Module--Nextflix--Composable-green.svg?style=flat)](https://android-arsenal.com/details/1/8264)\n\nA Clean Architecture App to show use of  multi-module-architecture in a Jetpack Compose.\n\nThe modules are as follow:\n\n* app: Presentation Layer\n\n* domain: Business Logic Layer\n\n* data: Data Access Layer\n\n* common: A View Items Layer\n\n* nowplaying: A Screen Layer\n\n* popular: A Screen Layer\n\n* upcoming: A Screen Layer\n\n* buildSrc: Includes Versions of Dependecies \n\n## --- Requirement ---\nYou should add api key to Network Module before build app.\nhttps://developer.themoviedb.org/reference/intro/authentication\n\n## Screenshots\n\n\u003ctable style=\"padding:10px\"\u003e\n\t\u003ctr\u003e\n\t\t\u003ctd align=\"center\"\u003e\n\t\t\t\u003ch2\u003eNow Playing Screen\u003c/h2\u003e\n\t\t\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\n\t\t\t\u003ch2\u003ePopular Screen\u003c/h2\u003e\n\t\t\u003c/td\u003e\n  \u003ctd align=\"center\"\u003e\n\t\t\t\u003ch2\u003eUpcoming Screen\u003c/h2\u003e\n\t\t\u003c/td\u003e\n  \t\u003c/tr\u003e\n\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003e\n\t\t\t\u003cimg src=\"assets/now_playing_screen.png\" alt=\"Now Playing Screen\" width=\"300\"/\u003e\n    \t\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\n\t\t\t\u003cimg src=\"assets/popular_screen.png\" alt=\"Popular Screen\" width=\"300\"/\u003e\n    \t\u003c/td\u003e\n  \u003ctd align=\"center\"\u003e\n\t\t\t\u003cimg src=\"assets/upcoming_screen.png\" alt=\"Upcoming Screen\" width=\"300\"/\u003e\n    \t\u003c/td\u003e\n  \t\u003c/tr\u003e\n\u003c/table\u003e\n\n## Shimmer Effects\n\u003cp\u003e\n \u003cimg align=\"left\" src=\"assets/grid_shimmer.gif\" width=\"300\" height=\"550\"/\u003e\n \u003cimg align=\"center\" src=\"assets/row_shimmer.gif\" width=\"300\" height=\"550\"/\u003e\n\u003c/p\u003e\n\n\n## Tech Stack\n\n* Multi-Module-Architecture\n* Kotlin\n* Jetpack Compose\n* Material Design\n* Hilt \n* Coroutines\n* Flow\n* Paging\n* Navigation\n* AndroidX\n* Retrofit\n* Coil\n* Solid Principles\n\n## MAD Scorecard\n\u003ctable style=\"padding:10px\"\u003e\n\t\u003ctr\u003e\n\t\t\u003ctd align=\"center\"\u003e\n\t\t\t\u003ch2\u003eModern Android Development\u003c/h2\u003e\n\t\t\u003c/td\u003e\n  \t\u003c/tr\u003e\n\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003e\n\t\t\t\u003cimg src=\"assets/summary.png\" alt=\"Modern Android Development\" width=\"1000\"/\u003e\n    \t\u003c/td\u003e\n  \t\u003c/tr\u003e\n\u003c/table\u003e\n\n## TODOs\n\n* Unit Tests\n* Implementation of static code analysis tool(ktlint etc.) \n* Better UIs\n* Add More Screens (Details etc.)\n* Error Handling\n* Favorite Icon\n\n## Screens\n* [Click here for Now Playing Screen](https://github.com/TalhaFaki/Multi-Module-Nextflix-Composable/blob/main/nowplaying/src/main/java/com/talhafaki/nowplaying/ui/NowPlayingScreen.kt)\n* [Click here for Popular Screen](https://github.com/TalhaFaki/Multi-Module-Nextflix-Composable/blob/main/popular/src/main/java/com/talhafaki/popular/ui/PopularScreen.kt)\n* [Click here for Upcoming Screen](https://github.com/TalhaFaki/Multi-Module-Nextflix-Composable/blob/main/upcoming/src/main/java/com/talhafaki/upcoming/ui/UpcomingScreen.kt)\n\n## Follow me here:\nhttps://linktr.ee/talhafaki\n\n## Did you find this repository helpful?\nDon't forget give a star.\n\n## Didn't you?\nThen fork this repo, make it better and don't forget give a STAR.\n\n```xml\nMIT License\n\nCopyright (c) 2021 Talha Fakıoğlu\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftfaki%2Fmulti-module-nextflix-composable","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftfaki%2Fmulti-module-nextflix-composable","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftfaki%2Fmulti-module-nextflix-composable/lists"}