Skip to content

Add SoraRaw#16570

Open
Kellenok wants to merge 4 commits into
keiyoushi:mainfrom
Kellenok:add-soraraw
Open

Add SoraRaw#16570
Kellenok wants to merge 4 commits into
keiyoushi:mainfrom
Kellenok:add-soraraw

Conversation

@Kellenok

@Kellenok Kellenok commented Jun 8, 2026

Copy link
Copy Markdown

Support for https://soraraw.net/ or https://soraraw.com/ (#10972)

  • Updated extVersionCode value in build.gradle for individual extensions (Set to 1 for the new extension)
  • Updated overrideVersionCode or baseVersionCode as needed for all multisrc extensions (N/A for individual extension)
  • Referenced all related issues in the PR body (e.g. "Closes #xyz") (Remember to edit the PR body to link any issues)
  • Added the isNsfw = true flag in build.gradle when appropriate (Set to true)
  • Have not changed source names
  • Have explicitly kept the id if a source's name or language were changed (N/A for new extension)
  • Have tested the modifications by compiling and running the extension through Android Studio (Built successfully via Gradle wrapper)
  • 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

@Rafou376 Rafou376 left a comment

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.

Think about rereading CONTRIBUTING.md

Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRaw.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRaw.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRaw.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRaw.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRawDto.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRawDto.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/Dto.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/Dto.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/Dto.kt
val author: String? = null,
val artist: String? = null,
val status: String? = null,
val genres: List<kotlinx.serialization.json.JsonElement>? = 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.

why JsonElement? also import

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

The genres JSON is different depending on the endpoint. On list/search it returns IDs [368, 511], but on details it returns objects [{"id": 16, "name": "18禁"}]. Since MangaDto is shared, I used JsonElement to handle both. I also fixed the import.

Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/Dto.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRaw.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRaw.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRaw.kt Outdated
Comment thread src/ja/soraraw/src/eu/kanade/tachiyomi/extension/ja/soraraw/SoraRaw.kt Outdated
}
}

return getFullDatabaseObservable().map { list ->

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.

if website doesn't provide proper search, then don't provide one, instead of fetching 100 pages in one go

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

The site itself uses client-side search and fetches until 404, so removing search makes the extension useless imo. I replaced the 1..100 loop with a dynamic fetch that stops on 404 (page 12, as there are 11 JSON files). The results are cached in memory so it only fetches once per session. Can it be like this?

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.

3 participants