{"id":44521272,"url":"https://github.com/raxden/mmdb","last_synced_at":"2026-02-13T17:39:45.430Z","repository":{"id":65588298,"uuid":"355810992","full_name":"raxden/mmdb","owner":"raxden","description":"Mobile movie database is a simple app to search movies and tv shows. It uses The Movie Database API to get the data. Currently in development.","archived":false,"fork":false,"pushed_at":"2024-10-16T19:18:22.000Z","size":9923,"stargazers_count":6,"open_issues_count":11,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-18T18:14:54.406Z","etag":null,"topics":["android","clean-architecture","compose","coroutines","hilt","junit","kotlin","modularization","mvvm","retrofit2","room"],"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/raxden.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-04-08T07:46:41.000Z","updated_at":"2023-10-13T16:20:08.000Z","dependencies_parsed_at":"2023-09-28T01:52:22.908Z","dependency_job_id":"821e2e42-c186-4f33-922c-93a205c86cb5","html_url":"https://github.com/raxden/mmdb","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/raxden/mmdb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raxden%2Fmmdb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raxden%2Fmmdb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raxden%2Fmmdb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raxden%2Fmmdb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/raxden","download_url":"https://codeload.github.com/raxden/mmdb/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raxden%2Fmmdb/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29413556,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T06:24:03.484Z","status":"ssl_error","status_checked_at":"2026-02-13T06:23:12.830Z","response_time":78,"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","clean-architecture","compose","coroutines","hilt","junit","kotlin","modularization","mvvm","retrofit2","room"],"created_at":"2026-02-13T17:39:44.900Z","updated_at":"2026-02-13T17:39:45.423Z","avatar_url":"https://github.com/raxden.png","language":"Kotlin","readme":"Mobile movie database\n==========\n\n\u003ca href='https://github.com/raxden/mmdb/actions/workflows/ci.yml'\u003e\u003cimg src='https://github.com/raxden/mmdb/workflows/Continuous%20Integration/badge.svg'\u003e\u003c/a\u003e\n[![codecov](https://codecov.io/gh/raxden/mmdb/branch/master/graph/badge.svg?token=UQoTMhwKPO)](https://codecov.io/gh/raxden/mmdb)\n\nMobile movie database is a simple app to search movies and tv shows. It uses [The Movie Database API](https://developers.themoviedb.org/3/getting-started/introduction) to get the data. Currently in development.\n\n## How to build on your environment\n\nAdd your [The Movie DB](https://www.themoviedb.org)'s API key in your `./config/secrets.properties` file.\n```xml\nTMDB_TOKEN_V3=YOUR_API_KEY\nTMDB_TOKEN_V4=YOUR_API_KEY\n```\n\n## Roadmap\n\n- [x] Home\n- [x] Medias by category\n- [x] Dark mode\n- [x] Media detail (WIP)\n- [ ] Player\n- [x] Search (WIP)\n- [ ] Account\n\n## Guidelines\n\n- https://github.com/android/nowinandroid\n- https://developer.android.com/topic/architecture/ui-layer \n- https://developer.android.com/topic/architecture/ui-layer/events#consuming-trigger-updates \n- https://medium.com/androiddevelopers/viewmodel-one-off-event-antipatterns-16a1da869b95\n\n## Goals\n\nThe goal of this project is to do practice on the new technologies, patterns and styles. Some functionalities are still not implemented or not completed.\n\n- [x] MVVM\n- [x] Kotlin\n- [x] Room\n  - [x] Migration\n  - [ ] Type converters\n- [x] Coroutines\n  - [x] Flow\n  - [x] StateFlow\n  - [x] SharedFlow\n- [x] Hilt\n- [x] Compose\n  - [x] Navigation\n    - [x] NavHost\n  - [x] LaunchedEffect\n  - [x] DisposableEffect\n- [x] Junit\n  - [x] Mockk\n  - [x] Turbine\n  - [x] Google Truth\n  - [ ] Robolectric\n  - [ ] Parameterized tests\n- [x] Instrumentation tests\n  - [x] Espresso\n  - [x] Using Hilt to inject dependencies into tests\n  - [x] Create largeTest using RestMock and Room in memory.\n  - [x] MockWebServer\n- [x] CI\n  - [x] Github actions\n  - [x] Composite actions\n  - [x] Coverage\n    - [x] Codecov integration\n    - [ ] Sonarqube integration\n  - [x] Detekt integration\n  - [ ] Snapshot testing\n  - [x] Firebase app distribution\n  - [ ] Google Play integration\n- [x] Architecture\n  - [x] Modularization by features\n  - [ ] Dynamic features\n  - [ ] Kotlin Multiplatform\n- [ ] Create catalog app module\n- [x] Dependencies\n  - [x] Use gradle kotlin dsl\n  - [x] Use gradle plugin portal\n  - [x] Version catalog (.toml)\n  - [x] Use composite build - https://stackoverflow.com/questions/60464719/gradle-includebuild-vs-implementation-project\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraxden%2Fmmdb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraxden%2Fmmdb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraxden%2Fmmdb/lists"}