Nyora for Mihon
A drop-in extension repository that brings Nyora's full ~900-source catalog to unmodified, stock Mihon: one Android APK bundles the entire kotatsu-parsers engine and every source and parses fully on-device, with no server, no forked app, and no code changes to Mihon itself.
- ~900Nyora sources exposed to Mihon
- 0App modifications to stock Mihon
- 100% on-deviceParsing location
- NoneServer round-trips to read
- SFW / 18+, per-languageCatalog split
- Extension repo added by URLDelivery
Stack
- Kotlin
- Android (Mihon / Tachiyomi extension API)
- kotatsu-parsers-redo engine (bundled on-device)
- Mihon extension repo format (index.min.json + repo.json)
- Gradle (per-variant APK assembly)
- OkHttp
- GitHub Pages (repo hosting)
Overview
Nyora for Mihon gives users of Mihon — the popular open-source Android manga reader that forked from Tachiyomi — access to Nyora's entire catalog of roughly 900 sources, without changing a single line of the Mihon app. It is not a forked reader and not a patched build. It is a drop-in extension repository: the user pastes one URL into Mihon's extension settings, and every Nyora source shows up in the normal extension browser exactly like any other Tachiyomi-style extension. Everything parses entirely on the device; there is no server in the loop when you read.
How it works
The hard part is that Mihon and Nyora speak different dialects. Mihon expects each extension to implement its Tachiyomi-style HttpSource contract, while Nyora's catalog is driven by the kotatsu-parsers-redo engine, which has its own source model and its own request and response shapes. Rather than reimplement 900 scrapers by hand, the project bundles the kotatsu-parsers engine directly inside the extension APK and wraps each Nyora parser behind Mihon's interface. When Mihon asks for popular titles, the latest updates, a search, a manga's details, or a chapter's page list, the adapter translates that request into the engine's native model, runs the parser in-process on the phone, and maps the result back into Mihon's Manga, SChapter, and Page types.
Because the engine ships inside the APK, the whole pipeline runs on-device. There is no Nyora server required to read — unlike a thin cloud client, this build carries the parser engine itself, so it works the way a native Mihon extension works.
Delivery as a standard Mihon repo
The catalog is packaged in the exact shape Mihon already understands: an index.min.json and repo.json alongside apk/ and icon/ directories. That is the same repository format third-party Tachiyomi and Mihon source repos have always used, which is precisely why it works on a stock, store-fresh install with no app modification, no ADB, and no developer mode. The user adds the repository by URL and Mihon does the rest.
Organizing 900 sources
A flat wall of 900 extensions would be unusable, so sources are split into SFW and 18+ variants and grouped by language, each carrying its real source icon so it is recognizable in Mihon's list. The whole repository — the split, the language grouping, and the icons — is generated mechanically from the engine's own source registry, so it stays in lockstep with the bundled engine instead of being hand-curated.
What this demonstrates
This is integration engineering at the boundary between two mature codebases: adapting one full parser architecture to another app's plugin contract, packaging a JVM parser engine to run on-device inside a third-party host, and reusing that host's existing distribution mechanism so users get 900 sources without ever leaving stock Mihon.