{"id":24946351,"url":"https://github.com/moatazbadawy/sunset-hadith","last_synced_at":"2025-04-15T11:04:29.493Z","repository":{"id":42209656,"uuid":"401078766","full_name":"MoatazBadawy/Sunset-hadith","owner":"MoatazBadawy","description":"Islamic app with 50K+ downloads, Built using Kotlin, Coroutines, Retrofit, OkHttp, Room Database, Dagger-Hilt, MVVM, Clean architecture.","archived":false,"fork":false,"pushed_at":"2024-03-27T05:21:17.000Z","size":183,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-15T11:04:09.538Z","etag":null,"topics":["android","clean-architecture","coroutines","coroutines-android","dagger2","kotlin","modularization","mvvm-architecture","retrofit","room"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MoatazBadawy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2021-08-29T15:39:16.000Z","updated_at":"2024-03-29T04:21:40.000Z","dependencies_parsed_at":"2025-02-02T20:35:12.876Z","dependency_job_id":null,"html_url":"https://github.com/MoatazBadawy/Sunset-hadith","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/MoatazBadawy%2FSunset-hadith","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MoatazBadawy%2FSunset-hadith/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MoatazBadawy%2FSunset-hadith/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MoatazBadawy%2FSunset-hadith/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MoatazBadawy","download_url":"https://codeload.github.com/MoatazBadawy/Sunset-hadith/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249058372,"owners_count":21205910,"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","clean-architecture","coroutines","coroutines-android","dagger2","kotlin","modularization","mvvm-architecture","retrofit","room"],"created_at":"2025-02-02T20:23:55.430Z","updated_at":"2025-04-15T11:04:29.459Z","avatar_url":"https://github.com/MoatazBadawy.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eSunset Hadith - حديث الغروب\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://opensource.org/licenses/Apache-2.0\"\u003e\u003cimg alt=\"License\" src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://android-arsenal.com/api?level=23\"\u003e\u003cimg alt=\"API\" src=\"https://img.shields.io/badge/API-21%2B-brightgreen.svg?style=flat\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://kotlinlang.org\"\u003e\u003cimg alt=\"Kotlin\" src=\"https://img.shields.io/badge/Kotlin-1.4.xxx-blue\"/\u003e\u003c/a\u003e\n  \u003cimg alt=\"MVVM\" src=\"https://img.shields.io/badge/MVVM-Architecture-orange\"/\u003e\n\u003c/p\u003e\n\n![](https://i.ibb.co/hs8Z57C/Purple-Modern-App-Instagram-Ad.png)\n\u003cbr /\u003e\n\n## Overview 🕌\nAn interactive islamic app that lets users discover Biography of the Prophet Muhammed, Watch videos, set wallpaper Images, download and reading books.\n- Ability to read articles and brochures.\n- Ability to copy and share hadiths with others.\n- Watch and view Islamic videos through Youtube player API.\n- The ability to search in the hadiths of the Prophet.\n- Download images and set them as wallpapers for your device, whether for the home screen or lock screen through the application\n- A selection of books with the ability to read directly and download them\n  \u003cbr /\u003e\n\n\u003ca href='https://play.google.com/store/apps/details?id=com.moataz.afternoonhadeeth\u0026hl=eng'\u003e\u003cimg alt='Get it on Google Play' src='https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png' width=\"170px\"/\u003e\u003c/a\u003e\n\u003cbr /\u003e\n\n## App Images 🌹\nHome | Videos | Hadiths \n--- | --- | --- | \n![](https://i.ibb.co/J7Dgpy4/homePage.jpg) | ![](https://i.ibb.co/pWxsw3h/videos.jpg) | ![](https://i.ibb.co/WzkKR7N/hadith.jpg) | \n\n| Wallpapers | Books | DisplayBook (Scrolled)\n--- | --- | --- |\n![](https://i.ibb.co/ChFc9jH/wallpapers.jpg) | ![](https://i.ibb.co/FbtQ69F/books.jpg) | ![](https://i.ibb.co/khq2hfK/displaybook.jpg)\n\u003cbr /\u003e\n\n\n## Project Architecture MVVM\n![MVVM3](https://user-images.githubusercontent.com/1812129/68319232-446cf900-00be-11ea-92cf-cad817b2af2c.png)\n- Yes , liveData is easy , powerful , but you should know how to use.\n- For livedate which will emit data stream , it has to be in your\n  data layer , and don't inform those observables any thing else like\n  in which thread those will consume , cause it is another\n- For livedata which will emit UI binding events, it has to be in your ViewModel Layer.\n- Observers in UI Consume and react to live data values and bind it.\n  responsibility , and according to `Single responsibility principle`\n  in `SOLID (object-oriented design)` , so don't break this concept by\n  mixing the responsibilities .\n\n![mvvm2](https://user-images.githubusercontent.com/1812129/68319008-e9d39d00-00bd-11ea-9245-ebedd2a2c067.png)\n\u003cbr /\u003e\n\n## Built With 🛠\n- [Kotlin](https://kotlinlang.org/) - First class and official programming language for Android development.\n- [Coroutines](https://kotlinlang.org/docs/coroutines-overview.html) - Asynchronous or non-blocking programming is an important part of the development landscape.\n- [Flow](https://kotlinlang.org/docs/flow.html) - A suspending function asynchronously returns a single value, but how can we return multiple asynchronously computed values? This is where Kotlin Flows come in.\n- [Ktor](https://ktor.io/) - Create asynchronous client and server applications. Anything from microservices to multiplatform HTTP client apps in a simple way. Open Source, free, and fun!.\n- [Android Architecture Components](https://developer.android.com/topic/libraries/architecture) - Collection of libraries that help you design robust, testable, and maintainable apps.\n- [Jetpack Navigation](https://developer.android.com/jetpack/compose/navigation) - Navigation refers to the interactions that allow users to navigate across, into, and back out from the different pieces of content within your app\n- [Material Components for Android](https://github.com/material-components/material-components-android) - Modular and customizable Material Design UI components for Android.\n  \u003cbr /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoatazbadawy%2Fsunset-hadith","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoatazbadawy%2Fsunset-hadith","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoatazbadawy%2Fsunset-hadith/lists"}