1670 Commits

Author SHA1 Message Date
AwkwardPeak7
621dc6c121
Remove kdt & add Armageddon (#9346)
remove kdt & add Armageddon
2025-07-25 05:47:28 +01:00
Troy Liu
6ee4ab2521
lanraragi: FIX: 404 error when baseurl contains additional path (#9340) 2025-07-25 05:47:28 +01:00
AwkwardPeak7
4d61698687
Webtoons.com: use api to get chapters (#9332)
* Webtoons.com: use api to get chapters

* completed status

* rename
2025-07-25 05:47:27 +01:00
FlaminSarge
8a9231c5af
Mangadex: Handle missing isUnavailable chapter field (#9301)
* Mangadex: Handle missing isUnavailable chapter field

* Update build.gradle

* Switch from nullable bool to bool for isUnavailable, with default false

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>

---------

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>
2025-07-25 05:47:27 +01:00
peakedshout
6af9f2d853
SakuraManhwa: Added support for SakuraManhwa source (#9195)
New: Added support for SakuraManhwa source
2025-07-25 05:47:27 +01:00
heddxh
8e7146ec24
Fix Comic Growl (#9009)
* fetch popular mangas

* fetch pages

* descramble image

* clean code

* fix date time parse

* get all chapters

* add dto for page response

* move dto and descrambler into separate files

* happily use parseAs

* add dummy url for missing chapters

* set different icons for lock and pay chapters

* search and latest

* get all authors

* clean code

* remove comment and unneeded json field

* fix incorrectly http url conversion
2025-07-25 05:47:27 +01:00
AwkwardPeak7
5fb99e11eb
webtoons.com (ID), preserve old source id 2025-07-25 05:47:27 +01:00
AwkwardPeak7
a4347e9da1
Webtoons.com: refactor and fix for site changes (#9245)
* Webtoons Translate: move out of multisrc & rework

it basically override everything from the main webtoons class, so split it off

* DongmanManhua: move to individual

* Webtoons: fix and make individual

* remove old multisrc

* use meta og:image

* deeplink fix

* fix deeplink crash & old details thumbnails
2025-07-25 05:47:24 +01:00
kanoou
dd595cca72
EternalMangas: Move to es and change theme (#9243)
move to ES
2025-07-25 05:47:24 +01:00
FlaminSarge
66f2a0ed6e
MangaDex: Add setting to include unavailable chapters in chapter list (#9208)
* MangaDex: Add setting to include unavailable chapters in chapter list

* Remove redundant isUnavailable check
2025-07-25 05:47:24 +01:00
DokterKaj
fcc13a63ed
DeviantArt: Preserve token in multi-image posts (#9151)
* DeviantArt: Preserve token in multi-image posts

* DeviantArt: Use keiyoushi.utils.tryParse

* DeviantArt: Make when block nicer

* DeviantArt: No need for two variables

* DeviantArt: Only find firstImageUrl if needed

* DeviantArt: Use if expression for less indenting
2025-07-25 05:47:24 +01:00
Radon Rosborough
ee40d4e9e4
Migrate from fakeimg.pl to fakeimg.ryd.tools (#9020) 2025-07-25 05:47:23 +01:00
laonhao139
bb92f316fc
Add Xiutaku source (#8949)
* Add Xiutaku source

* Update following comments

* Update timezone

* Update following suggestions

* Update locator

* Update following suggestions
2025-07-25 05:47:22 +01:00
Tejas Sharma
36295f9b69
Comick: option to de-duplicate chapters based on "score" (#8923)
* Adds the ability to automatically filter chapters in comick based on their "score"

* wording update, version bump

* use chapter_ prefix when referring to score filtering

* Update src/all/comickfun/assets/i18n/messages_en.properties

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>

* change syntax for filtering based on PR feedback

* figured out how to make an extension

* updated, thanks!

---------

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>
2025-07-25 05:47:22 +01:00
happywillow0
4fbe372043
Myreadingmanga Fix Chapter Titles (#8838)
* Bump Extension Version Code

* Bump User Agent Version

* Remove Chapter Name Logic

Deprecated: Source no longer provides table of contents with chapter names.

* Update Chapter Name

Chapter list based on page list number and not true chapter number.
2025-05-20 21:27:51 +01:00
marioplus
c44aba3f1a
feat(misskon): split chapters into individual pages (#8800)
* feat(misskon): split chapters into individual pages

- Migrate from single-chapter to per-page architecture
- Fix long loading time issues

* fix(misskon): Remove chapter_number configuration
- Drop deprecated chapter_number field setup
2025-05-20 21:27:51 +01:00
marioplus
d3fa36c82d
feat(buondua): split chapters into individual pages (#8803)
* feat(buondua): split chapters into individual pages

- Migrate from single-chapter to per-page architecture
- Fix long loading time issues

* fix(buondua): Remove chapter_number configuration

- Drop deprecated chapter_number field setup
2025-05-20 21:27:51 +01:00
bapeey
3c91f2a834
EternalMangas: Fix browse (#8780)
* fix

* oops

* use destructor
2025-05-20 21:27:51 +01:00
Vetle Ledaal
adbfe86669
Manhwa18.cc: encode search, add headers, remove redundant override (#8767) 2025-05-20 21:27:49 +01:00
Vetle Ledaal
d3d573fe77
Kiutaku: encode search (#8729) 2025-05-20 21:27:48 +01:00
Vetle Ledaal
aad47bab3c
Komga: encode search, add headers everywhere (#8702) 2025-05-20 21:27:48 +01:00
bapeey
302ac4b0cb
EternalMangas: Fetch regex from external repo (#8674)
* get regex from repo

* bump
2025-05-20 21:27:48 +01:00
bapeey
312747fb1a
EternalMangas: Fix no results and NPE (#8647)
fix
2025-05-20 21:27:45 +01:00
Tim Schneeberger
0da807ff70
feat: add GlobalComix (#8637)
* feat: add GlobalComix

Closes #3726

* fix: parse comic URLs correctly

* style: cleanup

* refactor: rename PageListDataDto to PageDataDto

* fix: sort search results by relevancy

* fix: improve premium chapter detection

* refactor: add chapter number to SChapter

* refactor: remove unused fields and allow some fields to be nullable

* refactor: minor cleanup

* Update src/all/globalcomix/src/eu/kanade/tachiyomi/extension/all/globalcomix/GlobalComix.kt

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>

* Update src/all/globalcomix/src/eu/kanade/tachiyomi/extension/all/globalcomix/GlobalComix.kt

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>

* Update src/all/globalcomix/src/eu/kanade/tachiyomi/extension/all/globalcomix/GlobalComix.kt

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>

* Update src/all/globalcomix/src/eu/kanade/tachiyomi/extension/all/globalcomix/dto/ChapterDto.kt

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>

* refactor: remove CacheControl

* refactor: move constants of out object

* refactor: add new imports & remove 204 check

* refactor: remove chapter list 204 check

---------

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>
2025-05-20 21:27:45 +01:00
Stratzcha
bea0c8897d
Webtoons: Add max quality pref (#8532) 2025-05-20 21:26:58 +01:00
AwkwardPeak7
1c2876f7a5
Kdt Scans: update url (#8543)
update url
2025-05-20 21:26:58 +01:00
marioplus
f7e3684d45
feat(YellowNote): add source 小黄书 (#8485)
* feat(YellowNote): add source 小黄书

* fix(YellowNote): reverse chapter sorting order

* feat(YellowNote): improve domain configuration and URL handling

- Implement dual domain configuration (default + override)
  - Default settings refresh when code updates occur
  - Override settings maintain custom configurations
- Enhance URL processing using HttpUrl
  - Fix encoding issues in query URLs
  - Improve URL parsing reliability

* feat(YellowNote): adapter /amateurs.html
2025-05-20 21:26:57 +01:00
Secozzi
b709f76b96
Comick: add tag exclude to extension settings (#8504)
* feat(all/comick): Add tag exclude to extension settings

* dont add empty tags
2025-05-20 21:26:57 +01:00
AwkwardPeak7
219ceaac1e
MangaPark: fixes & improvements (#8483)
* cover absolute url & uncensored cover for hentai

* utils

* nsfw pref and thumbnail baseurl

* lint

* try upload status when original status is unknown

* include extra info in description

* off by default

* bump

* clean title

* nullable

* status set using nullability

* review changes

* revert

* actually set to off
2025-05-20 21:26:57 +01:00
AwkwardPeak7
877ebd33c7
fix build 2025-05-20 21:26:57 +01:00
marioplus
ae6d455bb8
fix(pornpics): properly configure language settings (#8466)
* fix(pornpics): properly configure language settings

- Implement language configuration via SourceFactory

* fix(pornpics): properly bind ID and language settings

- Associate language codes with correct source IDs
- Use 'all' ID for English (en) language

* fix: remove all lang
2025-05-20 21:26:57 +01:00
DarkOps3
b425b94051
komga: sort genres and tags in alphabetical order (#8427) 2025-05-20 21:26:53 +01:00
DokterKaj
eb9b9b9aee
DeviantArt: Order chapter list chronologically instead of by source (#8407)
Order chapter list chronologically instead of by source
2025-05-20 21:26:53 +01:00
AwkwardPeak7
ac48b271c1
hitomi: handle gifs (#8398) 2025-05-20 21:26:53 +01:00
marioplus
334dd69fab
Add Source PornPics (#8364)
* feat(pornpics): add source pornpics

* feat(pornpics): add i18n support

* fix(pornpics): Default category read error

* fix(pornpics): Content-Type is not set correctly

* fix(pornpics): properly handle searches

* fix(pornpics): properly handle searches

* fix(pornpics): correct next page detection logic.

Add +1 to requested image count per page,Compare actual received count with pageSize to determine next page.

* fix(pornpics): set base language to en

* fix(pornpics): safely handle gallery info parsing

* feat(pornpics): add filter

* chore(pornpics): remove unused dependency

* fix(pornpics): correct category urlPart values.

* refactor(pornpics): simplify category browsing logic

- Remove category unselected
- Treat all non-search requests as category browsing

* refactor(pornpics): make a singelton object and remove comanion object

* refactor(pornpics): put in class to reuse preference

* refactor(pornpics): optimize chapter loading with fetchChapterList

- Replace chapterFromElement with fetchChapterList
- Reduce unnecessary network requests

* fix(pornpics): correct CategoryType initialization

* refactor(pornpics): improve method naming

- Rename `addQueryPageParameter` to `addQueryParameterPage` for clarity

* refactor(pornpics): improve API readability with boolean parameters

- Change `buildMangasPageRequest(page: Int, period: Int)` to:
  `buildMangasPageRequest(page: Int, popular: Boolean)`
- Replace numeric period flag with semantic boolean
- Simplify request building logic

* refactor(pornpics): extract category search logic to dedicated method

- Extract `useSearch` as standalone method
- Add enhanced validation logic for category search

* refactor(pornpics): replace manual parsing with HttpUrl

- Replace custom URL parsing logic with HttpUrl utility

* fix(pornpics): remove invalid category options

* refactor(pornpics): improve JSON error handling

- Throw specific exception type when JSON parsing fails
2025-05-20 21:26:53 +01:00
AwkwardPeak7
47d14b6f29
KdtScans: update url, filter LNs from search, fix date (#8370)
KdtScans: update url & filter LNs fom search
2025-05-20 21:26:53 +01:00
dngonz
85c4793096
Bato.to: Fix manga not recognized from different url entries (#8352)
fix url
2025-05-20 21:26:53 +01:00
bapeey
dd95e39ebc
MangaFire: Fix image coudn't be loaded (#8332)
add referer
2025-05-20 21:26:53 +01:00
Chopper
383d9c5535
MangaHosted: Update domain and api url (#8303)
Update api url
2025-05-20 21:26:52 +01:00
marioplus
fad76bc4b2
feat(BoaBua): add source BaoBua (#8253)
* feat(buondua): add source BaoBua

Refs: #1104

* fix(buondua/search): resolve pagination param forwarding
chore(buondua/search): clean up URL format and flag

* Fix:
  - Add missing pagination parameter propagation
* Maintenance:
  - Remove redundant trailing "/" in pagination URLs
  - Set `supportsLatest` to false (default behavior)

Closes: #1104

* chore(buondua): remove redundant trim() calls

Closes: #1104

* refactor(BaoBua): standardize chapter names and URL handling

- Replace date-based chapter names with static "Gallery" value
- Remove baseUrl from category URLs (construct dynamically when used)

Closes: #1104

* chore(BaoBua): remove unused

Closes: #1104

* chore(BaoBua): revert settings.gradle.kts

Closes: #1104

* chore(BaoBua): remove unused import

Closes: #1104

* chore(BaoBua): remove needless blank line

Closes: #1104

* fix(BaoBua): add unselected Category

Closes: #1104

* refactor(BaoBua): optimize manga details parsing

- Set update_strategy = UpdateStrategy.ONLY_FETCH_ONCE
- Remove unused randomua dependency

Closes: #1104
2025-05-20 21:26:37 +01:00
marioplus
40a9d2ec6a
feat(misskon): add source misskon. (#8225)
* feat(misskon): add source misskon.

refs: #1855

* feat(misskon): Improve network handling and code structure

• Network enhancements:
  - Add headers parameter for `GET` methods
  - Implement standardized query with `HttpUrl`
  - Replace `attr()` with `asbUrl()` for safe path composition

• Structural improvements:
  - Move date regex to companion object
  - Extract SimpleDateFormat as global constant
  - Refactor Filter logic into standalone class

• Robustness upgrades:
  - Remove unsafe non-null assertion(!!) on date_upload
  - Adopt SManga.create().apply  { } chaining pattern

refs: #1855

* feat(misskon): improve code structure and null safety

- Replace `attr()` with `absUrl()` for more reliable URL extraction
- Remove non-null assertion (`!!`) from `thumbnail_url` as it's not critical
- Fix usage of `select()` and `selectFirst()` to properly handle nullable cases

refs: #1855

* chore(MissKon): remove needless blank line

- Fix lint violation (no-consecutive-blank-lines)

Closes: #1855

* refactor(MissKon): optimize URL handling and reuse utils

* Remove baseUrl from category URLs (build dynamically when used)
* Reuse existing utils for:
  - Date parsing
  - Filter queries
* Standardize pagination URL construction

Closes: #1855

* fix(MissKon): Correct URL template, set default gallery name, and unify selectors

Closes: #1855

* refactor(MissKon): fix URL construction and client configuration

- Fix string interpolation in search URL ("$it.url"  → "${it.url}")
- Remove MOBILE user agent restriction
- Remove unused dependency
- Add ONLY_FETCH_ONCE update strategy
- Clean up selector syntax
2025-05-20 21:26:37 +01:00
Vetle Ledaal
98bd2586fb
Koharu: do not use network on main thread (#8255) 2025-05-20 21:26:37 +01:00
marioplus
2723d5d0ca
fix(buondua): enhance Cloudflare challenge bypass (#8249)
* fix(buondua): enhance Cloudflare challenge bypass

- Add rate limiting (max 10 requests/second)
- Implement random User-Agent rotation
- Inject Referer header
- Version bump 2 → 3

refs: #8079

* chore(buondua): replace interceptor with headersBuilder for request headers

- Replace the interceptor with  headersBuilder()
- Move the SimpleDateFormat to the companion object or class variable

Refs: #8079
2025-05-20 21:26:37 +01:00
AwkwardPeak7
77bd833e6a
Hitomi: change cdn domain & fix image url logic (#8204)
* Hitomi: change cdn domain & image url logic

* remove unused

* avifbigtn
2025-03-27 00:02:40 +00:00
Vetle Ledaal
3fb70c10de
Koharu: fix DTO & bypass Cloudflare (#8175)
* Koharu - \r\n → \n

* SchaleNetwork: fix loading & support related-manga

* (SchaleNetwok/Koharu): Fix DTO & bypass Cloudflare (#128)

* Fix DTO
* Bypass CloudFlare Turnstile
* Add tags filter select box which supports click on 'tag' to search
* Allow permanent excluded tags

* Revert fork specific Koharu changes

* Bump version + lint

---------

Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
2025-03-27 00:02:35 +00:00
Vetle Ledaal
44a4f517d2
Remove remaining usage of network.client (#8153)
* Explicitly use `network.cloudflareClient` instead of `super.client`

... but only if the parent is `HttpSource` or `ParsedHttpSource`

* Remove use of `network.client`

... replaced with `network.cloudflareClient` or `super.client` if the
parent class sets `client` to `network.cloudflareClient` already.
2025-03-27 00:02:34 +00:00
Uranus
72c0ecc64f
Komga: add search for books (#8102)
* Komga: add search for books

* clean up unused code

* add String.isFromBook() method

* fix lint error
2025-03-27 00:02:34 +00:00
BrutuZ
8a14edfd48
Comick: Localized title setting (#8111)
* Localized title preference

* lint
2025-03-27 00:02:34 +00:00
AwkwardPeak7
55e3a5b101
Danbooru: fix app crash
oops

closes #8101
2025-03-27 00:02:31 +00:00
Vetle Ledaal
1c3e40c5dc
Remove extensions with parked domains (#8077)
Remove some parked domains

Fairy Manga
KomikPlay
LegendScanlations
MangaToRead
MangaUS
MangaXP
NeatManga
NOISE Manga
Rainbow Fairy Scan
Sawamics
Zahard
2025-03-27 00:02:31 +00:00