{"id":20814703,"url":"https://github.com/ahmedgamalramadan/weathercompose","last_synced_at":"2025-08-23T10:33:07.382Z","repository":{"id":246601880,"uuid":"821607662","full_name":"AhmedGamalRamadan/WeatherCompose","owner":"AhmedGamalRamadan","description":null,"archived":false,"fork":false,"pushed_at":"2024-08-13T17:03:53.000Z","size":126,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-12T05:25:31.966Z","etag":null,"topics":["coil","coil-image-loader","coroutines-android","dependency-injection","jetpack-compose","kotlin","modularization","moshi-converter","mvvm-architecture","navigation","retrofit","weather-app"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","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/AhmedGamalRamadan.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":"2024-06-29T00:12:51.000Z","updated_at":"2024-08-13T17:03:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"74621286-4555-4211-98f4-43120bd9a35f","html_url":"https://github.com/AhmedGamalRamadan/WeatherCompose","commit_stats":null,"previous_names":["ahmedgamalramadan/weathercompose"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AhmedGamalRamadan/WeatherCompose","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AhmedGamalRamadan%2FWeatherCompose","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AhmedGamalRamadan%2FWeatherCompose/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AhmedGamalRamadan%2FWeatherCompose/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AhmedGamalRamadan%2FWeatherCompose/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AhmedGamalRamadan","download_url":"https://codeload.github.com/AhmedGamalRamadan/WeatherCompose/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AhmedGamalRamadan%2FWeatherCompose/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271746653,"owners_count":24813575,"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","status":"online","status_checked_at":"2025-08-23T02:00:09.327Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["coil","coil-image-loader","coroutines-android","dependency-injection","jetpack-compose","kotlin","modularization","moshi-converter","mvvm-architecture","navigation","retrofit","weather-app"],"created_at":"2024-11-17T21:17:51.721Z","updated_at":"2025-08-23T10:33:07.362Z","avatar_url":"https://github.com/AhmedGamalRamadan.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Weather App in Kotlin using Jetpack Compose\n\nThis Weather App is an Android application that provides real-time weather information by fetching data from a weather API. Built using Jetpack Compose for a modern UI, the app showcases efficient API integration and clean architecture practices.\n\n## Features:\n- **Jetpack Compose:** The app leverages *Jetpack Compose*, a modern Android UI toolkit, to create a seamless and interactive user experience.\n- **Kotlin:** Developed entirely in *Kotlin*, the codebase benefits from the conciseness and expressiveness of the language, promoting efficient and readable code.\n- **Retrofit:** Fetches news articles from an API.\n- **Moshi:** Utilize Moshi for efficient JSON parsing, ensuring seamless communication with APIs.\n- **Clean Architecture:** The project follows a clean and modular architecture, making it easy to understand and extend.\n- **Modularization**: The application employs a modularization approach to divide the project into separate modules, such as domain, presentation, and data. Each module has clear responsibilities and can be developed independently.\n- **MVVM (Model-View-ViewModel)**: The MVVM architecture is utilized to separate the business logic from the view. The Model represents data and business rules, the View is the user-visible interface, and the ViewModel is responsible for preparing and delivering data to the View.\n- **Dependency Injection:** Employing dependency injection enhances the app's maintainability and testability by decoupling components and facilitating easier component replacement and testing.\n- **Implements MVVM architecture for clean and organized code.**\n\n\n## Architecture block diagram\n![Android Architecture](https://github.com/lofcoding/AndroidArchitectureSample/assets/109604722/ed29d956-1154-4518-9107-e4e1a34b4a35)\n\n\n\n\n## Installation\n1. **Clone the Repository**: Clone this repository to your local machine.\n2. **Open in Android Studio**: Open the project in Android Studio.\n3. **Build and Run**: Build and run the project on an Android device or emulator.\n\n\n\n## Screenshots:\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/AhmedGamalRamadan/WeatherCompose/assets/144063315/3977bf4f-5e5c-4143-8d65-8b4c6f347a2f\" alt=\"splash\" width=\"300\"\u003e\u003c/td\u003e\n     \u003ctd\u003e\u003cimg src=\"https://github.com/AhmedGamalRamadan/WeatherCompose/assets/144063315/016f42e6-3c8a-4643-afc6-79d2abd47f69\" alt=\"splash\" width=\"300\"\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\n\n## Connect with Me 🌐\nLet's connect! Feel free to reach out on LinkedIn.\n\u003cp align=\"left\"\u003e\n\u003ca href=\"https://www.linkedin.com/in/ahmed-gamal-ramadan/\" target=\"blank\"\u003e\u003cimg align=\"center\" src=\"https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/linked-in-alt.svg\" alt=\"https://www.linkedin.com/in/ahmed-gamal-97509328a/\" height=\"30\" width=\"40\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fahmedgamalramadan%2Fweathercompose","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fahmedgamalramadan%2Fweathercompose","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fahmedgamalramadan%2Fweathercompose/lists"}