{"id":13610909,"url":"https://github.com/mr3y-the-programmer/Ludi","last_synced_at":"2025-04-13T01:33:26.955Z","repository":{"id":183504735,"uuid":"606875717","full_name":"mr3y-the-programmer/Ludi","owner":"mr3y-the-programmer","description":"🎮 Catch up with the latest gaming news, Discover new games, and much more. 🕹️","archived":false,"fork":false,"pushed_at":"2024-04-13T23:44:13.000Z","size":19272,"stargazers_count":75,"open_issues_count":6,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-04-14T13:11:56.968Z","etag":null,"topics":["android","android-app","androidx","compose-multiplatform","jetpack-compose","kotlin","kotlin-multiplatform","material-design-3","paging3","rawg-api","sqldelight2"],"latest_commit_sha":null,"homepage":"https://play.google.com/store/apps/details?id=com.mr3y.ludi","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mr3y-the-programmer.png","metadata":{"files":{"readme":"README.md","changelog":"changelog_config.json","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-02-26T20:17:26.000Z","updated_at":"2024-04-22T08:30:51.273Z","dependencies_parsed_at":"2023-10-27T20:25:53.670Z","dependency_job_id":"5d678156-5a78-49a6-b4a3-569710576390","html_url":"https://github.com/mr3y-the-programmer/Ludi","commit_stats":null,"previous_names":["mr3y-the-programmer/ludi"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr3y-the-programmer%2FLudi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr3y-the-programmer%2FLudi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr3y-the-programmer%2FLudi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr3y-the-programmer%2FLudi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mr3y-the-programmer","download_url":"https://codeload.github.com/mr3y-the-programmer/Ludi/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248654036,"owners_count":21140236,"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","android-app","androidx","compose-multiplatform","jetpack-compose","kotlin","kotlin-multiplatform","material-design-3","paging3","rawg-api","sqldelight2"],"created_at":"2024-08-01T19:01:49.304Z","updated_at":"2025-04-13T01:33:26.440Z","avatar_url":"https://github.com/mr3y-the-programmer.png","language":"Kotlin","funding_links":[],"categories":["Kotlin"],"sub_categories":[],"readme":"# Ludi\n[![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](http://www.apache.org/licenses/LICENSE-2.0) [![Build Status](https://img.shields.io/github/actions/workflow/status/mr3y-the-programmer/Ludi/build.yml?branch=main\u0026label=Desktop%2FAndroid%20Build\u0026logo=Android\u0026logoColor=black)](https://github.com/mr3y-the-programmer/Ludi/actions/workflows/build.yml) \u003ca target=\"_blank\" href=\"https://androidweekly.net/issues/issue-600\"\u003e\u003cimg src=\"https://androidweekly.net/issues/issue-600/badge\"\u003e\u003c/a\u003e\n![mar32](https://github.com/mr3y-the-programmer/Ludi/assets/26522145/93ae21de-7bb1-4851-9263-c8a9ca0ad801)\n\nLudi is a Kotlin multiplatform app(Android + Desktop) For browsing \u0026 discovering new games, Checking daily updated price discounts \u0026 giveaways on games, and RSS gaming news feed reader from your favorite gaming news websites, All in one single app. \n\nIt is a playground for demonstrating the use of modern tech stack(KMP, compose multiplatform..etc) to develop high-quality apps.\n\n## Screenshots\n### Android\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/3e7f2382-212e-4e4b-a11d-f1a775b009e9\" width=\"33%\" /\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/fc15500c-4033-4f12-a809-7e5f7cf936c2\" width=\"33%\" /\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/b5646433-b4b8-4b43-a042-dcd0ca6493ea\" width=\"33%\" /\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/e062becf-64d6-42a1-b10f-b092087c72fe\" width=\"33%\" /\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/968e9e20-828c-4d8e-9c66-340bdcdbd677\" width=\"33%\" /\u003e\n\u003c/p\u003e\n\n### Desktop \n\u003cp float=\"left\"\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/59163d5d-b8a1-49e7-8a06-fc8598e72618\" width=\"33%\" /\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/acf823ef-acc0-4b81-b9a5-237721efb8b0\" width=\"33%\" /\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/b403060a-3b1c-4219-aca7-ef1380cb1e47\" width=\"33%\" /\u003e\n\u003c/p\u003e\n\u003cp float=\"left\"\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/3182302b-8b1f-4913-8988-c1f097192c4d\" width=\"33%\" /\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/21f2b84b-a973-4d13-9513-32c70d96b0cc\" width=\"33%\" /\u003e\n  \u003cimg src=\"https://github.com/mr3y-the-programmer/Ludi/assets/26522145/06340da5-2081-4129-8d07-da11bb90b3df\" width=\"33%\" /\u003e\n\u003c/p\u003e\n\n## Features\n\n- Discover trending, top rated, and other highly recommended games.\n- Search for a specific game or Filter games by store, tag or platform.\n- RSS news reader for your favorite gaming websites.\n- Offline support/Caching for RSS feed articles. \n- Full-text search for RSS feed articles.\n- Get Updated with the latest deals on games prices \u0026 giveaways.\n- Adaptive layout design for (Mobile, tablet or Desktop).\n- Dark Theme.\n- Material 3 design language.\n\n## Download\n\u003ca href=\"https://play.google.com/store/apps/details?id=com.mr3y.ludi\" target=\"_blank\"\u003e\n\u003cimg src=\"https://play.google.com/intl/en_gb/badges/static/images/badges/en_badge_web_generic.png\" width=240 /\u003e\n\u003c/a\u003e\n\nOr from [github releases](https://github.com/mr3y-the-programmer/Ludi/releases)\n\n## Tech Stack\n[Kotlin Multiplatform](https://kotlinlang.org/docs/multiplatform.html) for sharing code between different platforms.\n\n[Compose Multiplatform](https://github.com/JetBrains/compose-multiplatform) for building shared UI.\n\n[Coil 3](https://github.com/coil-kt/coil) for fetching \u0026 displaying images.\n\n[kmpalette](https://github.com/jordond/kmpalette) for generating color palettes from images.\n\n[Voyager](https://github.com/adrielcafe/voyager), [Molecule](https://github.com/cashapp/molecule) for navigation, presenters.\n\n[Ktor Client](https://github.com/ktorio/ktor) for network requests.\n\n[Kotlinx serializtion](https://github.com/Kotlin/kotlinx.serialization) serializing json responses.\n\n[RSS parser](https://github.com/prof18/RSS-Parser) parsing RSS feed.\n\n[Paging 3](https://github.com/cashapp/multiplatform-paging) Loading data from network/database in chunks/pages.\n\n[Datastore proto/preferences](https://developer.android.com/jetpack/androidx/releases/datastore) for saving user preferences.\n\n[kotlin-inject](https://github.com/evant/kotlin-inject) Multiplatform DI.\n\n[Sqldelight](https://github.com/cashapp/sqldelight) for Offline caching.\n\n[Lyricist](https://github.com/adrielcafe/lyricist) type-safe dynamically updated string resources.\n\n[Crashlytics](https://firebase.google.com/docs/crashlytics), [Bugsnag](https://docs.bugsnag.com/platforms/java/other/) for Crash reporting.\n\n[Turbine](https://github.com/cashapp/turbine), [Robolectric](https://github.com/robolectric/robolectric) for testing.\n\n[Refresh Versions](https://github.com/Splitties/refreshVersions) for fetching dependency versions updates.\n\n[App Versioning](https://github.com/ReactiveCircus/app-versioning), [Github actions](https://github.com/mr3y-the-programmer/Ludi/tree/main/.github/workflows), \n[Gradle Play publisher](https://github.com/Triple-T/gradle-play-publisher) for an automated app building \u0026 deployment. \n\n## Contributing\nSee [CONTRIBUTING.md](https://github.com/mr3y-the-programmer/Ludi/blob/main/CONTRIBUTING.md).\n\n## Todo\n- [ ] Write Screenshot tests.\n- [ ] Maybe split the shared module into multiple features/modules.\n## Credits\n- Thanks to [RAWG API](https://rawg.io/apidocs) (Video Games Database).\n- Thanks to [Cheapshark API](https://apidocs.cheapshark.com/) (Price comparison website for digital games).\n- Thanks to [GamerPower API](https://www.gamerpower.com/api-read) (Providing access to giveaways updated daily).\n## License\n```\nCopyright [2023] [MR3Y]\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmr3y-the-programmer%2FLudi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmr3y-the-programmer%2FLudi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmr3y-the-programmer%2FLudi/lists"}