{"id":18431136,"url":"https://github.com/sandesh300/news-app","last_synced_at":"2025-10-07T11:24:13.494Z","repository":{"id":178663975,"uuid":"662196875","full_name":"sandesh300/News-App","owner":"sandesh300","description":"Android News Application","archived":false,"fork":false,"pushed_at":"2024-03-11T19:45:35.000Z","size":203,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-14T00:50:06.250Z","etag":null,"topics":["android-studio","java","mvvm-architecture","news-api","retrofit2"],"latest_commit_sha":null,"homepage":"","language":"Java","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/sandesh300.png","metadata":{"files":{"readme":"README.md","changelog":"NewsApp-main/LICENSE","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":"2023-07-04T15:04:34.000Z","updated_at":"2025-03-02T03:56:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"4d910792-97c9-4e6f-b986-1bb4fdba7751","html_url":"https://github.com/sandesh300/News-App","commit_stats":null,"previous_names":["sandesh300/news-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sandesh300/News-App","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandesh300%2FNews-App","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandesh300%2FNews-App/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandesh300%2FNews-App/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandesh300%2FNews-App/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sandesh300","download_url":"https://codeload.github.com/sandesh300/News-App/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandesh300%2FNews-App/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278763704,"owners_count":26041634,"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-10-07T02:00:06.786Z","response_time":59,"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":["android-studio","java","mvvm-architecture","news-api","retrofit2"],"created_at":"2024-11-06T05:23:39.688Z","updated_at":"2025-10-07T11:24:13.466Z","avatar_url":"https://github.com/sandesh300.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# News-App\n## Introduction -\nThis project is an Android News Application developed using Java and Android Studio. It leverages the Retrofit2 library for making network requests to the News API. The application follows the MVVM (Model-View-ViewModel) architecture pattern, providing users with a modern and intuitive interface for accessing the latest news articles from various sources.\n\n## Technologies -\n### - Java:\nPrimary programming language for Android application development.\n### Retrofit2:\nHTTP client for making network requests to the News API and handling API responses.\n### Android Studio:\nIntegrated Development Environment (IDE) for building Android applications.\n### MVVM Architecture:\nSeparation of concerns between the UI (View), business logic (ViewModel), and data (Model) layers.\n### News API:\nExternal API providing access to news articles from various sources and categories.\n\n## Features -\n- Browse News: Users can browse the latest news articles from different sources and categories.\n- Search Functionality: Enables users to search for specific news articles by keywords.\n- Offline Reading: Articles can be cached for offline reading, allowing users to access content even without an internet connection.\n- Bookmarking: Users can bookmark their favorite articles for easy access later.\n- Sharing: Allows users to share interesting articles with friends via social media or other messaging platforms.\n\n## Architecture -\nThe application follows the MVVM (Model-View-ViewModel) architecture pattern:\n\n### - Model:\nRepresents the data layer of the application. It includes data models and repositories responsible for fetching data from the News API.\n### - View:\nDefines the user interface components of the application. Activities, fragments, and XML layout files are used to create the UI elements.\n### - ViewModel:\nActs as an intermediary between the View and the Model. It retrieves data from the Model and prepares it for presentation in the View. LiveData and MutableLiveData are used for observing and updating UI \ncomponents.\n\n## Modules -\nThe key modules of the application include:\n\n### Network Module:- \nHandles network requests to the News API using Retrofit2.\n### UI Module:-\nDefines the user interface components and layouts for displaying news articles.\n### Data Module:\nManages data retrieval from the News API and caching for offline reading.\n### ViewModel Module:\nImplements the ViewModel classes responsible for preparing data for presentation in the UI.\n\n## Images-\n\u003cimg src=\"https://github.com/sandesh300/News-App/assets/92014891/ef6f866c-7926-4598-9150-05b07f2c75c7\" width=\"400\"\u003e\n\u003cimg src=\"https://github.com/sandesh300/News-App/assets/92014891/549af918-7781-4aee-975b-6b8d56b04347\" width=\"400\"\u003e\n\u003cimg src=\"https://github.com/sandesh300/News-App/assets/92014891/8e2f0e69-2a3f-4d2a-a260-788a035712d9\" width=\"400\"\u003e\n\u003cimg src=\"https://github.com/sandesh300/News-App/assets/92014891/a38494be-5728-466c-b566-74a359ddfbf3\" width=\"400\"\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsandesh300%2Fnews-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsandesh300%2Fnews-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsandesh300%2Fnews-app/lists"}