{"id":13456013,"url":"https://github.com/Pool-Of-Tears/Myne","last_synced_at":"2025-03-24T09:31:16.175Z","repository":{"id":65377586,"uuid":"568700970","full_name":"Pool-Of-Tears/Myne","owner":"Pool-Of-Tears","description":"An android app to download \u0026 read ebooks from Project Gutenberg, built with  Jetpack Compose.","archived":false,"fork":false,"pushed_at":"2025-01-05T10:13:40.000Z","size":12957,"stargazers_count":1231,"open_issues_count":17,"forks_count":73,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-03-23T03:06:57.500Z","etag":null,"topics":["android","android-app","books","ebook-downloader","ebook-reader","epub-reader","fdroid","gutenberg-ebooks","jetpack-android","jetpack-compose","kotlin-android","kotlin-coroutines","material-design","material-ui","mvvm-architecture","ui-design"],"latest_commit_sha":null,"homepage":"https://pool-of-tears.github.io","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/Pool-Of-Tears.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["starry-shivam"]}},"created_at":"2022-11-21T08:21:51.000Z","updated_at":"2025-03-19T17:55:44.000Z","dependencies_parsed_at":"2024-01-13T17:47:59.370Z","dependency_job_id":"ddc32b68-d5d9-49b2-a16f-ad883f359dfc","html_url":"https://github.com/Pool-Of-Tears/Myne","commit_stats":{"total_commits":226,"total_committers":19,"mean_commits":"11.894736842105264","dds":"0.34513274336283184","last_synced_commit":"ef1e0c4bf490f3135b3fd56bb56f684f13ced0a9"},"previous_names":[],"tags_count":41,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pool-Of-Tears%2FMyne","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pool-Of-Tears%2FMyne/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pool-Of-Tears%2FMyne/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pool-Of-Tears%2FMyne/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Pool-Of-Tears","download_url":"https://codeload.github.com/Pool-Of-Tears/Myne/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245243244,"owners_count":20583590,"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","books","ebook-downloader","ebook-reader","epub-reader","fdroid","gutenberg-ebooks","jetpack-android","jetpack-compose","kotlin-android","kotlin-coroutines","material-design","material-ui","mvvm-architecture","ui-design"],"created_at":"2024-07-31T08:01:14.817Z","updated_at":"2025-03-24T09:31:16.142Z","avatar_url":"https://github.com/Pool-Of-Tears.png","language":"Kotlin","funding_links":["https://github.com/sponsors/starry-shivam"],"categories":["Kotlin","🧠 Productivity \u0026 Organization","📱 Application","📱 Applications"],"sub_categories":["📖 Readers"],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"\"\u003e\u003cimg width=\"200\" height=\"200\" src=\"https://github.com/Pool-Of-Tears/Myne/blob/main/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png\"\u003e\u003c/a\u003e\n  \u003ch2\u003eMyne: Download \u0026 Read eBooks\u003c/h2\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.android.com\"\u003e\u003cimg src=\"https://forthebadge.com/images/badges/built-for-android.svg\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.github.com/starry-shivam\"\u003e\u003cimg src=\"https://forthebadge.com/images/badges/built-with-love.svg\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://t.me/PotApps\"\u003e\u003cimg src=\"https://img.shields.io/badge/Telegram-PotApps-green?style=flat\u0026logo=telegram\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/Pool-Of-Tears/Myne/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/downloads/Pool-Of-Tears/Myne/total?label=Downloads\u0026logo=github\"\u003e\u003c/a\u003e\n  \u003cimg alt=\"GitHub\" src=\"https://img.shields.io/github/license/Pool-Of-Tears/Myne\"\u003e\n  \u003cimg alt=\"GitHub code size in bytes\" src=\"https://img.shields.io/github/languages/code-size/Pool-Of-Tears/Myne\"\u003e\n  \u003ca href=\"https://www.repostatus.org/#active\"\u003e\u003cimg src=\"https://www.repostatus.org/badges/latest/active.svg\" alt=\"Project Status: Active – The project has reached a stable, usable state and is being actively developed.\" /\u003e\u003c/a\u003e\n  \u003cimg alt=\"build-workflow\"src=\"https://github.com/Pool-Of-Tears/Myne/actions/workflows/android.yml/badge.svg\"\u003e\n\u003c/p\u003e\n\n------\n\n**Myne** is a [FOSS](https://en.m.wikipedia.org/wiki/Free_and_open-source_software) Android application for downloading and reading ebooks from [Project Gutenberg](https://gutenberg.org). It uses the [GutenDex](https://github.com/garethbjohnson/gutendex) API to fetch metadata for ebooks in the backend. Additionally, it functions as an EPUB reader, allowing you to easily import and immerse yourself in your favorite EPUB books!\n\n*The name of the app is inspired from the main character of an anime called [Ascendance of a Bookworm](https://myanimelist.net/anime/39468/Honzuki_no_Gekokujou__Shisho_ni_Naru_Tame_ni_wa_Shudan_wo_Erandeiraremasen)*.\n\n\n\u003e[!Note]\n\u003e\n\u003eThe app also utilizes the Google Books API to retrieve additional data such as synopsis and page count. As the Gutenberg project does not include these values in their metadata. While the app attempts to map the data received from Google Books with Gutenberg's metadata, the mapping is not always 100% accurate. Additionally, not all books available on Gutenberg are accessible on Google Books, or they may be available under different titles. As a result, you may find some books without synopsis or page count, etc.\n\n------\n\n\u003ch2 align=\"center\"\u003eScreenshots\u003c/h2\u003e\n\n| ![](https://graph.org/file/a86b19969bbba506fcdfa.png) | ![](https://graph.org/file/7d1964fb46fd1f4ebf98c.png) | ![](https://graph.org/file/14bc72fa57c42deaf03bf.png) |\n|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|\n| ![](https://graph.org/file/3b2b55557ef23d96213ba.png) | ![](https://graph.org/file/0278019a5078d6f8a6155.png) | ![](https://graph.org/file/c44d5574399783320be10.png) |\n\n------\n\n\u003ch2 align=\"center\"\u003eHighlights\u003c/h2\u003e\n\n- Clean \u0026 beautiful UI based on Google's [material design three](https://m3.material.io/) guidelines.\n- Browse and download over 70k free ebooks available in multiple languages and updated daily.\n- Comes with inbuilt ebook reader while also having an option to use third-party ebook readers.\n- Compatible with Android 8.0 and above (API 26+)\n- Supports [Material You](https://www.androidpolice.com/everything-we-love-about-material-you/amp/) theming in devices running on Android 12+\n- Comes in both light and dark mode.\n- MAD: UI and logic written with pure Kotlin. Single activity, no fragments, only composable destinations.\n\n------\n\n\u003ch2 align=\"center\"\u003eDownloads\u003c/h2\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003ca href=\"https://play.google.com/store/apps/details?id=com.starry.myne\"\u003e\u003cimg alt=\"Get it on Google Play\" src=\"https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png\" height=\"65\"\u003e\u003c/a\u003e\n\u003ca href='https://f-droid.org/packages/com.starry.myne/'\u003e\u003cimg alt='Get it on F-Droid' src='https://fdroid.gitlab.io/artwork/badge/get-it-on.png' height='65'/\u003e\u003c/a\u003e\n\u003ca href='https://apt.izzysoft.de/fdroid/index/apk/com.starry.myne'\u003e\u003cimg alt='Get it on IzzyOnDroid' src='https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png' height='65'/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Pool-Of-Tears/Myne/releases/latest\"\u003e\u003cimg alt=\"Get it on GitHub\" src=\"https://github.com/machiav3lli/oandbackupx/blob/034b226cea5c1b30eb4f6a6f313e4dadcbb0ece4/badge_github.png\" height=\"65\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n------\n\n\u003ch2 align=\"center\"\u003eDonations\u003c/h2\u003e\n\nMyne doesn't contain any ads and doesn't sell your data.\nThe development of the app is financed by individual user contributions, such as you purchasing the app via Google Play or becoming a sponsor on Github ❤️\n\nBecome a [Sponser](https://github.com/sponsors/starry-shivam) on Github | Purchase it on [Google Play](https://play.google.com/store/apps/details?id=com.starry.myne)\n\n------\n\n\u003ch2 align=\"center\"\u003eContributions\u003c/h2\u003e\n\nContributions are welcome! \n\n\u003e[!Note]\n\u003e\n\u003eFor submitting bug reports, feature requests, questions, or any other ideas to improve, please read [CONTRIBUTING.md](/CONTRIBUTING.md) for instructions and guidelines first.\n\n------\n\n\u003ch2 align=\"center\"\u003eTranslations\u003c/h2\u003e\n\nIf you want to make the app available in your language, you're welcome to create a pull request with your translation file. The base string resources can be found under:\n```\n/app/src/main/res/values/strings.xml\n```\nIt is easiest to make a translation using the Android Studio XML editor, but you can always use your favorite XML text editor instead. Check out this guide to learn more about translation strings from [Helpshift](https://developers.helpshift.com/android/i18n/) for Android.\n\n------\n\n\u003ch2 align=\"center\"\u003eTech Stack\u003c/h2\u003e\n\n- [Kotlin](https://kotlinlang.org/) - First class and official programming language for Android development.\n- [Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html) - To improve performance by doing I/O tasks out of main thread asynchronously.\n- [Flow](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.flow/-flow/) - A cold asynchronous data stream that sequentially emits values and completes normally or with an exception.\n- [Android Architecture Components](https://developer.android.com/topic/libraries/architecture) - Collection of libraries that help you design robust, testable, and maintainable apps.\n  - [Jetpack Compose](https://developer.android.com/jetpack/compose?gclsrc=ds\u0026gclsrc=ds) - Jetpack Compose is Android’s recommended modern toolkit for building native UI\n  - [LiveData](https://developer.android.com/topic/libraries/architecture/livedata) - Data objects that notify views when the underlying database changes.\n  - [ViewModel](https://developer.android.com/topic/libraries/architecture/viewmodel) - Stores UI-related data that isn't destroyed on UI changes.\n- [OkHttp3](https://square.github.io/okhttp/) - OkHttp is an HTTP client for Android that’s efficient by default.\n- [Kotlinx.serialization](https://kotlinlang.org/docs/serialization.html) - Provides sets of libraries for various serialization formats – JSON, CBOR, protocol buffers, and others. \n- [Jsoup](https://jsoup.org) - Jsoup is a Java library for working with HTML. It provides a convenient API for extracting and manipulating data, using the HTML5 DOM methods and CSS selectors.\n- [Coil](https://coil-kt.github.io/coil/compose/) - An image loading library for Android backed by Kotlin Coroutines.\n- [Dagger-Hilt](https://dagger.dev/hilt/) For [Dependency injection (DI)](https://developer.android.com/training/dependency-injection)\n- [Room database](https://developer.android.com/jetpack/androidx/releases/room) - Persistence library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.\n- [Lottie](https://airbnb.design/lottie) - Lottie is an Android, iOS and React Native library that renders After Effects animations in real time.\n\n------\n\n\u003ch2 align=\"center\"\u003eStar History\u003c/h2\u003e\n\n[![Star History Chart](https://api.star-history.com/svg?repos=Pool-Of-Tears/Myne\u0026type=Timeline)](https://star-history.com/#Pool-Of-Tears/Myne\u0026Timeline)\n\n------\n\n\u003ch2 align=\"center\"\u003eLicense\u003c/h2\u003e\n\n[Apache License 2.0][license] © [Stɑrry Shivɑm][github]\n\n[license]: /LICENSE\n[github]: https://github.com/starry-shivam\n\n```\nCopyright (c) [2022 - Present] Stɑrry Shivɑm\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPool-Of-Tears%2FMyne","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FPool-Of-Tears%2FMyne","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPool-Of-Tears%2FMyne/lists"}