A Mihon/Tachiyomi extension for reading manga, manhwa, and manhua from comix.to.
Built on the keiyoushi/extensions-source build infrastructure, stripped down to a single extension with full API reverse-engineering.
- Browse — Popular (most followed), Latest (recently updated)
- Search — By title with advanced filters
- Filters — Type (Manga/Manhwa/Manhua/Other), Status, Demographic, 31 Genres, Year range, Min chapters, 11 sort options
- Manga details — Author, artist, genres, tags, status, score, alternative names
- Chapter list — Full pagination (handles 700+ chapter manga), deduplication (official > votes > recency), scanlator filter
- Reader — Full image loading with proper headers
- Settings — 10 configurable options (content rating defaults, blocked genres, deduplication, score display, etc.)
| Setting | Description |
|---|---|
| Default content rating | Safe, Suggestive, Erotica, Pornographic |
| Default type filter | Manga, Manhwa, Manhua, Other |
| Default demographic filter | Shounen, Seinen, Shoujo, Josei |
| Blocked genres | Hide specific genres from chips |
| Deduplicate chapters | Keep best version per chapter (official > votes) |
| Scanlator filter | Show only chapters from specific scanlators |
| Show alternative names | Display alt titles in description |
| Show extra info | Type, status, year, rating, latest chapter |
| Show tags in genre chips | Include format tags (Long Strip, Full Color, etc.) |
| Score display position | Don't show / Top of description / End of description |
- Open Mihon
- Go to More → Settings → Browse → Extension repos → Add
- Paste:
https://raw.githubusercontent.com/marbou92/MHRepo/main/index.min.json - Restart Mihon
- Go to Browse → Extensions and install Comix
Download the latest APK from the Actions tab → click a successful CI run → Artifacts.
Comix.to uses a custom API protection layer that was reverse-engineered:
-
Request signing — Every API request needs a
_query parameter: a base64url signature computed via a 3-stage chained S-box substitution over the request path + sorted query string. -
Response encryption — Chapter list and chapter page responses are encrypted (
x-enc: 1header). The body is{"e": "<base64url>"}and decryption reverses the S-box using inverse lookup tables. -
API envelope — All responses are wrapped in
{"status":"ok","result":...}which is unwrapped by an OkHttp interceptor.
Both the sign and decrypt functions are implemented natively in Kotlin — no WebView or JS engine needed.
| Endpoint | Purpose |
|---|---|
GET /api/v1/manga?params |
Manga list (popular / latest / search) |
GET /api/v1/manga/{hid} |
Manga details |
GET /api/v1/manga/{hid}/chapters |
Chapter list (paginated) |
GET /api/v1/chapters/{chapterId} |
Chapter pages (image URLs) |
This repo (MHExtensions) contains the source code. The published extension repo is at marbou92/MHRepo.
MHExtensions/
├── src/all/comix/ # The Comix extension
│ ├── build.gradle.kts
│ ├── res/mipmap-*/ic_launcher.png # Extension icon (5 densities)
│ └── src/eu/kanade/tachiyomi/extension/all/comix/
│ ├── Comix.kt # Main HttpSource + sign/decrypt + settings
│ └── ComixDto.kt # kotlinx.serialization DTOs
├── core/ # Gradle plugin / DSL
├── common/ # Shared runtime utilities
├── compiler/ # @Source annotation processor
├── lib/ # Reusable helpers
├── lib-multisrc/ # 61 multisrc themes
├── .github/
│ ├── workflows/
│ │ ├── build_push.yml # Auto debug builds on push
│ │ ├── build_pull_request.yml # PR checks
│ │ └── release_publish.yml # Manual release + publish to MHRepo
│ └── scripts/
│ └── publish-repo.py # Generates index.min.json
├── setup-signing.sh # Signing key generator
├── ext-bootstrap.py # Extension scaffolder
└── SIGNING.md # Signing setup guide
- JDK 17
- Android SDK (with build-tools)
- Internet access (Gradle downloads dependencies on first build)
./gradlew :src:all:comix:assembleDebugOutput: src/all/comix/build/outputs/apk/debug/*.apk
./gradlew :src:all:comix:assembleRelease \
-PALIAS=<alias> \
-PKEY_STORE_PASSWORD=<password> \
-PKEY_PASSWORD=<password>Output: src/all/comix/build/outputs/apk/release/*.apk
| Workflow | Trigger | Purpose |
|---|---|---|
CI (build_push.yml) |
Auto on push to main |
Builds debug APK for testing |
PR check (build_pull_request.yml) |
Auto on PR | Builds debug to verify PRs |
Release & Publish (release_publish.yml) |
Manual only | Builds signed release APKs + publishes to MHRepo |
- Test with debug build (auto-built on push)
- Go to Actions → Release & Publish → Run workflow
- CI builds signed release APKs
- CI publishes to
MHRepo(generatesindex.min.json, uploads APKs + icons) - Mihon auto-updates the extension
Apache License 2.0
This project does not have any affiliation with comix.to or the content providers available. This project is not affiliated with Mihon/Tachiyomi. All credits to the codebase go to the original keiyoushi contributors.