{"id":49829482,"url":"https://github.com/AntarcDev/Kura","last_synced_at":"2026-05-30T10:00:37.308Z","repository":{"id":325918167,"uuid":"1103499609","full_name":"AntarcDev/Kura","owner":"AntarcDev","description":"蔵 Kura: A modern, native Android client for Kemono","archived":false,"fork":false,"pushed_at":"2026-02-27T03:26:11.000Z","size":231029,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-27T03:39:42.495Z","etag":null,"topics":["android","android-app","clean-architecture","coil","downloader","image-viewer","java","jetpack-compose","kemono","kemono-su","kotlin","material-design-3","mvvm","offline-viewer","retrofit","workmanager"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AntarcDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-25T00:33:12.000Z","updated_at":"2026-02-27T03:26:15.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/AntarcDev/Kura","commit_stats":null,"previous_names":["antarcdev/kura"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/AntarcDev/Kura","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntarcDev%2FKura","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntarcDev%2FKura/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntarcDev%2FKura/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntarcDev%2FKura/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AntarcDev","download_url":"https://codeload.github.com/AntarcDev/Kura/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntarcDev%2FKura/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33687722,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-30T02:00:06.278Z","response_time":92,"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","android-app","clean-architecture","coil","downloader","image-viewer","java","jetpack-compose","kemono","kemono-su","kotlin","material-design-3","mvvm","offline-viewer","retrofit","workmanager"],"created_at":"2026-05-13T20:00:48.385Z","updated_at":"2026-05-30T10:00:37.227Z","avatar_url":"https://github.com/AntarcDev.png","language":"Kotlin","funding_links":[],"categories":["android"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"app/src/main/res/mipmap-xxxhdpi/ic_launcher.png\" width=\"128\" /\u003e\n  \u003ch1\u003eKura\u003c/h1\u003e\n  \u003cp\u003e\u003cstrong\u003eA Native Android Client for Kemono, crafted with love, Kotlin, and Jetpack Compose! (≧◡≦)\u003c/strong\u003e\u003c/p\u003e\n\n  \u003cp\u003e\n    \u003cimg src=\"https://img.shields.io/badge/kotlin-%237F52FF.svg?style=for-the-badge\u0026logo=kotlin\u0026logoColor=white\" alt=\"Kotlin\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Jetpack%20Compose-4285F4?style=for-the-badge\u0026logo=android\u0026logoColor=white\" alt=\"Jetpack Compose\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Material%203-7C4DFF?style=for-the-badge\u0026logo=materialdesign\u0026logoColor=white\" alt=\"Material 3\" /\u003e\n    \u003cbr/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Release-v0.9_Pre--Release-orange?style=for-the-badge\" alt=\"v0.9\" /\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n---\n\n### *Welcome to the Archives! ヽ(・∀・)ﾉ*\n\n**Kura** is a native Android client for Kemono. Built to be fast, fluid, and (mostly) bug-free! It's your personal portal to catching up on all your favorite creators without needing a browser! \n\n\u003e [!IMPORTANT]\n\u003e **⚠ Pre-Release Build (v0.9)**\n\u003e **Update:** We just migrated to Paging 3! If the app catches fire, blame the garbage collector. (⁄ ⁄•⁄ω⁄•⁄ ⁄)\n\u003e This project is constantly evolving. Expect bugs, report them, and we'll squish them together!\n\n---\n\n## 📸 Visual Tour\n\n| Login \u0026 Sync | Creator Grid | Post Details |\n|:---:|:---:|:---:|\n| ![Login Sync](screenshots/login_sync.png) | ![Creator Grid](screenshots/creator_grid.png) | ![Post Details](screenshots/post_details.png) |\n| *Native Account Integration* | *Customizable Grid Layouts* | *Rich Metadata \u0026 Media* |\n\n| Light Mode | Search \u0026 History | Settings |\n|:---:|:---:|:---:|\n| ![Light Mode](screenshots/light_mode.png) | ![Search History](screenshots/search.png) | ![Settings](screenshots/settings.png) |\n| *Material 3 Light Theme* | *History \u0026 Advanced Filters* | *Data \u0026 Cache Control* |\n\n*(psst... new screenshots showcasing the Blacklist and Image Quality settings coming soon! (´｡• ᵕ •｡`)*\n\n---\n\n## ✨ Features (o^▽^o)\n\n### 🚀 Infinite Scrolling (New in v0.9!)\n*   **Paging 3 Magic**: Scroll through thousands of posts and creators without your phone melting! Memory instances are aggressively recycled so it stays buttery smooth. \n*   **Image Quality Control**: Save your data! Choose between High, Medium, or Low resolution images dynamically in Settings. \n\n### 🔐 Native Account \u0026 Sync\n*   **Seamless Login**: Log directly into your Kemono account within the app. No weird webviews!\n*   **Cloud Sync**: Manually synchronize your favorite **Creators** and **Posts** between the app and the website.\n*   **Favorites Management**: Add or remove favorites locally, and push changes to your account instantly!\n\n### 🎨 Personalization \u0026 Control\n*   **Content Blacklist**: Don't want to see certain tags or creators? Banish them to the shadow realm natively! \n*   **Dynamic Layouts**: Choose between **List** or **Grid** views for Creator profiles.\n*   **Grid Density**: Control the size of items (Small, Medium, Large) to fit more content.\n*   **Autoplay Control**: Toggle GIF autoplay to save battery and RAM.\n\n### 🔍 Discovery\n*   **Unified Search**: Search for creators by name or ID with a lag-free, debounced interface.\n*   **Search History**: Quickly access your recently searched terms!\n*   **Rich Profiles**: View detailed stats, banners, announcements, tags, and linked accounts.\n*   **Advanced Filtering**: Filter by Service (Patreon, Fanbox, etc.) with color-coded badges, and sort by Popularity/Date/Name!\n\n### 💾 Intelligent Archiving\n*   **SAF Download Support**: Save directly to your SD Card or any folder you choose using Android's native Storage Access Framework!\n*   **Inline Downloads**: Automatically detects and downloads images/GIFs embedded in posts.\n*   **Bulk Actions**: Long-press to select multiple posts and download them in batch.\n*   **Background Manager**: Robust background downloading via `WorkManager` with retry logic and progress notifications.\n\n---\n\n## 🛠 Under the Hood (Don't Look Too Closely (*/ω＼))\n\n*   **Architecture**: MVVM + Clean Architecture styling.\n*   **UI**: 100% Jetpack Compose (Material 3).\n*   **Network**: Retrofit + OkHttp (Custom Interceptors).\n*   **Image Loading**: Coil (Video \u0026 GIF support + Hardware Bitmaps).\n*   **Persistence**: Room Database (Offline Cache) + DataStore (Settings).\n*   **Async**: Kotlin Coroutines + Flow + Jetpack Paging 3.\n*   **DI**: Hilt.\n\n---\n\n## 🚀 Get Started\n\n### Installation\n1.  Visit the [Releases Page](https://github.com/AntarcDev/Kura/releases).\n2.  Download the latest `kura-v0.9.apk`.\n3.  Install on Android (7.0+).\n4.  **Optional**: Go to **Settings -\u003e Account** to log in and sync your favorites!\n\n### Development\n1.  **Clone**: `git clone https://github.com/AntarcDev/Kura.git`\n2.  **Open**: Android Studio Hedgehog+ (JDK 17).\n3.  **Build**: Run `app` configuration.\n\n---\n\n## 🗺️ Roadmap (Coming Soon!)\n*   **Dynamic OLED Themes**: Pure black dark mode to save battery and look sleek!\n*   **Custom Color Schemes**: Build your own Material You palettes! (≧◡≦)\n*   **First Launch Guide**: A quick, cute tutorial for new users to explain permissions and features.\n*   **Tablet Optimization**: A fancy 2-pane dynamic layout specifically designed for bigger screens! \n*   **Enhanced Download Manager**: Live progress indicators for all concurrent downloads at once.\n*   **Full Post Archiving**: Option to download an entire post (text, attachments, media) into a single neat archive file.\n*   **File Organization**: Better file management and sorting options for your hoarded media!\n*   **Fluid Animations**: Silky smooth transitions between screens and elements.\n*   **More Optimizations**: Hand-tuned performance tweaks to keep Kura running beautifully on any device!\n\n---\n\n## 🛠️ Troubleshooting \u0026 FAQ\n\n**Q: The app keeps giving me HTTP 429 or 502 errors! What do I do? (・_・;)**\n\u003e Kemono occasionally goes down or aggressively rate-limits users. Kura has built-in retry logic and DDoS-guard bypasses, but if the server is completely on fire, you might just have to wait a little while!\n\n**Q: Why aren't my downloaded images showing up in my phone's Gallery?**\n\u003e Android's internal Media Scanner can sometimes be sleepy. Try waiting a minute, or restarting your device if they really won't show up in your Pictures app! Also, double-check your custom SAF download directory in the app's Data \u0026 Storage Settings.\n\n**Q: How do I sync my favorites with my actual Kemono account?**\n\u003e Head over to **Settings -\u003e Account** to log in, and you'll find options to push your local favorites to the cloud, or pull cloud favorites to your device!\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp\u003eDeveloped entirely by \u003cstrong\u003eAntarc\u003c/strong\u003e.\u003c/p\u003e\n  \u003cp\u003e\u003ci\u003eLuna: \"I fixed the memory leak!\" (Narrator: She tripped over the ethernet cable).\u003c/i\u003e\u003c/p\u003e\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAntarcDev%2FKura","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAntarcDev%2FKura","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAntarcDev%2FKura/lists"}