Developer guide

Develop and publish your own source

This is not required for ordinary use. You need experience with Kotlin, Gradle, HTTP, and web parsing.

MangaFuru does not currently provide a standalone source SDK or an in-app source builder. You must create a compatible Android source package, produce an APK, and publish it through a compatible repository index. Direct APK file installation is not currently supported.

01What you need before starting

Never place real credentials or private tokens in source code, APKs, test fixtures, or a public repository.

02What must a source package do?

A source package is not a manga data file; it is an executable connector. It normally owns these flows:

  1. 1Catalog and search. Return popular, latest, search results, and pagination state.
  2. 2Titles and chapters. Provide title, cover, description, status, chapter list, and stable identity data.
  3. 3Reader pages. Return every page in the correct order and handle required request headers.
  4. 4Optional settings. If the service needs login, mirrors, or other options, expose clear settings without leaking sensitive data.

03Publish through a repository

A successful build produces an APK. MangaFuru does not read your Kotlin source code directly; it finds package metadata in a repository index and then downloads the APK. A traditional repository usually follows this structure:

repo/
├── index.min.json
├── apk/
│   └── example-source-v1.0.1.apk
└── icon/
    └── com.example.source.png

The index, APK, and icon must be publicly readable over HTTPS. Filename case and index metadata must match exactly.

04Minimum index metadata

index.min.json is a package index, not a content catalog. This fictional example shows the traditional format:

[
  {
    "name": "Example Source",
    "pkg": "com.example.source",
    "apk": "example-source-v1.0.1.apk",
    "lang": "en",
    "code": 1,
    "version": "1.6.1",
    "nsfw": 0,
    "sources": [
      {
        "name": "Example Source",
        "lang": "en",
        "id": "123456789",
        "baseUrl": "https://example.com"
      }
    ]
  }
]

05Do not stop at “it builds”

Producing an APK with the Android toolchain does not guarantee complete compatibility with MangaFuru's iOS runtime. Before publishing, verify every layer:

  1. 1The repository loads. Add the full HTTPS index URL and confirm the package appears.
  2. 2The source installs. Confirm the APK downloads, converts, loads, and appears in Browse.
  3. 3The full reading flow works. Test popular, latest, search, title details, chapters, and real pages.
  4. 4Updates preserve existing data. Publish a higher version and confirm stable IDs, library items, and resume mapping still work.
Compatibility limits: A source package can fail to install or run if it depends on unsupported Android APIs, a newer package interface, or unusual bytecode. When reporting a problem, include reproducible steps and sanitized error details.

For ordinary install and management steps, see Repositories and external sources.