Skip to content

Add MangaLix#17621

Merged
AwkwardPeak7 merged 6 commits into
keiyoushi:mainfrom
duasmisha-hub:codex/add-mangalix
Jul 18, 2026
Merged

Add MangaLix#17621
AwkwardPeak7 merged 6 commits into
keiyoushi:mainfrom
duasmisha-hub:codex/add-mangalix

Conversation

@duasmisha-hub

@duasmisha-hub duasmisha-hub commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Refs #16275

Adds the English MangaLix source with popular and latest catalogs, search and filters, manga details, chapters, and reader pages.

Validation performed:

  • :src:en:mangalix:spotlessCheck
  • :src:en:mangalix:assembleDebug
  • :src:en:mangalix:assembleRelease
  • Live catalog validation for all 118 titles
  • Live chapter/page/image flow using a title near the end of the archive

Checklist:

  • Updated versionCode value in build.gradle.kts
  • Updated baseVersionCode in build.gradle.kts (if updated multisrc theme code)
  • Referenced all related issues in the PR body (e.g. "Closes #xyz")
  • Set the contentWarning configuration in build.gradle.kts appropriately
  • Have not changed source names
  • Have explicitly kept the id if a source's name or language were changed
  • Have tested the modifications by compiling and running the extension through Android Studio
  • Have removed web_hi_res_512.png when adding a new extension
  • This PR is AI-assisted, I have reviewed the changes manually and confirmed they are not slop

@duasmisha-hub
duasmisha-hub marked this pull request as ready for review July 15, 2026 07:17
get() = latestChapter?.releaseDate.toMangaTimestamp()

fun toSManga(baseUrl: String): SManga = SManga.create().apply {
url = "/manga/$slug"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

only save the slug (or id)

import java.util.zip.GZIPInputStream

@Source
abstract class Mangalix : HttpSource() {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please implement KeiSource instead, you also need to set libVersion in build.gradle.kts to 1.6

headers.newBuilder()
.set("Accept", "image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8")
.build()
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no need for lazy, make them property getters


@Volatile
private var chapterCache: ChapterCache? = null

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we avoid caching in memory?

@duasmisha-hub

Copy link
Copy Markdown
Contributor Author

done.

readChapters(slug).distinctBy { it.id to it.number }.map { chapter ->
SChapter.create().apply {
val number = chapter.number.toString().removeSuffix(".0")
url = "$slug/$number/${chapter.id}"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

save rest of data in memo, only save a unique identifier in url (e.g chapter.id)

@AwkwardPeak7
AwkwardPeak7 merged commit 70994f1 into keiyoushi:main Jul 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants