{"id":19510704,"url":"https://github.com/meta-ben/mvvm_kitty","last_synced_at":"2026-04-21T09:33:28.688Z","repository":{"id":67016452,"uuid":"246442378","full_name":"Meta-Ben/MVVM_Kitty","owner":"Meta-Ben","description":"2020 - Android experimentation of Strictly simple MVVM architecture ","archived":false,"fork":false,"pushed_at":"2024-07-15T22:49:25.000Z","size":449,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-31T03:41:52.516Z","etag":null,"topics":["android","kotlin","mvvm","simplified"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Meta-Ben.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2020-03-11T01:02:45.000Z","updated_at":"2024-07-16T00:58:03.000Z","dependencies_parsed_at":"2024-01-23T23:24:32.888Z","dependency_job_id":"6424710f-e401-4c75-9d7d-4e371eb29773","html_url":"https://github.com/Meta-Ben/MVVM_Kitty","commit_stats":null,"previous_names":["meta-ben/mvvm_kitty"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Meta-Ben/MVVM_Kitty","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meta-Ben%2FMVVM_Kitty","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meta-Ben%2FMVVM_Kitty/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meta-Ben%2FMVVM_Kitty/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meta-Ben%2FMVVM_Kitty/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Meta-Ben","download_url":"https://codeload.github.com/Meta-Ben/MVVM_Kitty/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meta-Ben%2FMVVM_Kitty/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32085547,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-21T06:27:27.065Z","status":"ssl_error","status_checked_at":"2026-04-21T06:27:21.250Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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","kotlin","mvvm","simplified"],"created_at":"2024-11-10T23:16:48.778Z","updated_at":"2026-04-21T09:33:28.666Z","avatar_url":"https://github.com/Meta-Ben.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e:cat: MVVM Template with Cats :cat: \u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://img.shields.io/badge/Android-%204--2--1?style=for-the-badge\u0026label=platform\u0026color=green\"\u003e\n \u003cimg src=\"https://img.shields.io/badge/Kotlin-%204--2--1?style=for-the-badge\u0026label=language\u0026color=orange\"\u003e\n\u003c/p\u003e\n\n## Preview\n![Preview](https://github.com/Amealky/MVVM_Kitty/assets/25056111/6eb923a0-e9b3-4c44-a35f-736ecc116c37)\n\n\n## Overview\nThis Repository contains a simple MVVM Architecture using TheCatApi made in Kotlin without RX and without dagger2/Koin\nJust the basic :wink:\n\nImplementing [Cat API](https://thecatapi.com/)\n\nMade with [Android Studio 4.1](https://developer.android.com/studio/archive?hl=en)\n\n### Packages\n\n - **BasicApp class:**  Override the Application() class to inject dependencies ( like repositories )\n \n - **data:**  Contains local entities, DTO's, Api services, repositories and also the NetworkProvider\n \n - **ui:** Just contain View Classes like Activities/Fragment, Adapters, etc...\n \n - **utils:**  Contain tools and extensions ( like a BindingExtension to use Glide directly into a layout.xml )\n \n - **viewmodels:**  Contain all the ViewModels classes provinding views with data\n \n ## Model View ViewModel \n This project is basically a very simple representation of the MVVM ( without any optional library like Dagger2/Koin or RXJava/RXKotlin )\n and this is how it's implemented\n  \n- **ViewModel**  \n  - \u003eExpose models get from the service to the view\n  \n  - \u003eCan be create with a factory to allow the injection of dependencies\n\n- **View ( ui )** \n  - \u003eSubscribe to the ViewModel\n  \n  - \u003eObserve data exposed by the ViewModel\n  \n  - \u003eUpdate the UI when ViewModel data's change\n  \n## Some librairies used \nIn fact I used some librairies to make this simple project but don't worry these librairies can be used in other architecture\n( MVP, MVC, etc )\n\nThe project use AndroidX\n\n- [Glide](https://github.com/bumptech/glide) media management and image loading framework for Android\n\n- [Retrofit2](https://github.com/square/retrofit) HTTP client for Android\n\n- [Retrofit LiveData Adapter](https://github.com/leonardoxh/livedata-call-adapter) A Retrofit 2 CallAdapter.Factory for Android LiveData\n\n- [Retrofit Converter Moshi](https://github.com/square/retrofit/tree/master/retrofit-converters/moshi) A Converter which uses Moshi for serialization to and from JSON.\n\n- [Moshi](https://github.com/square/moshi) Moshi is a modern JSON library for Android and Java. It makes it easy to parse JSON into Java objects\n\nIf you have any trouble of understanding or if you want to help me to improve myself let me know ! :blush:\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeta-ben%2Fmvvm_kitty","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeta-ben%2Fmvvm_kitty","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeta-ben%2Fmvvm_kitty/lists"}