diff --git a/multisrc/overrides/madara/freemanga/additional.gradle.kts b/multisrc/overrides/madara/freemanga/additional.gradle.kts new file mode 100644 index 000000000..10beb8157 --- /dev/null +++ b/multisrc/overrides/madara/freemanga/additional.gradle.kts @@ -0,0 +1,4 @@ + +dependencies { + implementation project(':lib-ratelimit') +} diff --git a/multisrc/overrides/madara/freemanga/res/midmap-hdpi/ic_launcher.png b/multisrc/overrides/madara/freemanga/res/midmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..920d047c1 Binary files /dev/null and b/multisrc/overrides/madara/freemanga/res/midmap-hdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/freemanga/res/midmap-mdpi/ic_launcher.png b/multisrc/overrides/madara/freemanga/res/midmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..fdb109396 Binary files /dev/null and b/multisrc/overrides/madara/freemanga/res/midmap-mdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/freemanga/res/midmap-xhdpi/ic_launcher.png b/multisrc/overrides/madara/freemanga/res/midmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..b506271d7 Binary files /dev/null and b/multisrc/overrides/madara/freemanga/res/midmap-xhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/freemanga/res/midmap-xxhdpi/ic_launcher.png b/multisrc/overrides/madara/freemanga/res/midmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..9d20287a2 Binary files /dev/null and b/multisrc/overrides/madara/freemanga/res/midmap-xxhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/freemanga/res/midmap-xxxhdpi/ic_launcher.png b/multisrc/overrides/madara/freemanga/res/midmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..4c629e9e8 Binary files /dev/null and b/multisrc/overrides/madara/freemanga/res/midmap-xxxhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/freemanga/res/web_hi_res_512.png b/multisrc/overrides/madara/freemanga/res/web_hi_res_512.png new file mode 100644 index 000000000..45df407e4 Binary files /dev/null and b/multisrc/overrides/madara/freemanga/res/web_hi_res_512.png differ diff --git a/multisrc/overrides/madara/freemanga/src/FreeManga.kt b/multisrc/overrides/madara/freemanga/src/FreeManga.kt new file mode 100644 index 000000000..71cd52d13 --- /dev/null +++ b/multisrc/overrides/madara/freemanga/src/FreeManga.kt @@ -0,0 +1,70 @@ +package eu.kanade.tachiyomi.extension.en.freemanga + +import eu.kanade.tachiyomi.lib.ratelimit.RateLimitInterceptor +import eu.kanade.tachiyomi.annotations.Nsfw +import eu.kanade.tachiyomi.multisrc.madara.Madara +import okhttp3.OkHttpClient +import java.util.concurrent.TimeUnit + +@Nsfw +class FreeManga : Madara("Free Manga", "https://freemanga.me", "en") { + private val rateLimitInterceptor = RateLimitInterceptor(1) + + override val client: OkHttpClient = network.cloudflareClient.newBuilder() + .connectTimeout(10, TimeUnit.SECONDS) + .readTimeout(30, TimeUnit.SECONDS) + .addNetworkInterceptor(rateLimitInterceptor) + .build() + + override fun getGenreList() = listOf( + Genre("Action", "action"), + Genre("Adult", "adult"), + Genre("Adventure", "adventure"), + Genre("Anime", "anime"), + Genre("Cartoon", "cartoon"), + Genre("Comedy", "comedy"), + Genre("Comic", "comic"), + Genre("Cooking", "cooking"), + Genre("Detective", "detective"), + Genre("Doujinshi", "doujinshi"), + Genre("Drama", "drama"), + Genre("Ecchi", "ecchi"), + Genre("Fanstasy", "fantasy"), + Genre("Gender bender", "gender-bender"), + Genre("Harem", "harem"), + Genre("Historical", "historical"), + Genre("Horror", "horror"), + Genre("Isekai", "isekai"), + Genre("Josei", "josei"), + Genre("Live action", "live-action"), + Genre("Manga", "manga"), + Genre("Manhua", "manhua"), + Genre("Manhwa", "manhwa"), + Genre("Martial arts", "martial-arts"), + Genre("Mature", "mature"), + Genre("Mecha", "mecha"), + Genre("Medical", "medical"), + Genre("Mystery", "mystery"), + Genre("One shot", "one-shot"), + Genre("Psychological", "psychological"), + Genre("Romance", "romance"), + Genre("School Life", "school-life"), + Genre("Sci-fi", "sci-fi"), + Genre("Seinen", "seinen"), + Genre("Shoujo", "shoujo"), + Genre("Shoujo ai", "shoujo-ai"), + Genre("Shounen", "shounen"), + Genre("Shounen ai", "shounen-ai"), + Genre("Slice of Life", "slice-of-life"), + Genre("Smut", "smut"), + Genre("Soft Yaoi", "soft-yaoi"), + Genre("Soft Yuri", "soft-yuri"), + Genre("Sports", "sports"), + Genre("Supernatural", "supernatural"), + Genre("Tragedy", "tragedy"), + Genre("Webtoon", "webtoon"), + Genre("Webtoons", "webtoons"), + Genre("Yaoi", "yaoi"), + Genre("Yuri", "yuri"), + ) +} diff --git a/multisrc/overrides/madara/mangatuli/additional.gradle.kts b/multisrc/overrides/madara/mangatuli/additional.gradle.kts new file mode 100644 index 000000000..10beb8157 --- /dev/null +++ b/multisrc/overrides/madara/mangatuli/additional.gradle.kts @@ -0,0 +1,4 @@ + +dependencies { + implementation project(':lib-ratelimit') +} diff --git a/multisrc/overrides/madara/mangatuli/res/midmap-hdpi/ic_launcher.png b/multisrc/overrides/madara/mangatuli/res/midmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..942bd3d75 Binary files /dev/null and b/multisrc/overrides/madara/mangatuli/res/midmap-hdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/mangatuli/res/midmap-mdpi/ic_launcher.png b/multisrc/overrides/madara/mangatuli/res/midmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..c5561b013 Binary files /dev/null and b/multisrc/overrides/madara/mangatuli/res/midmap-mdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/mangatuli/res/midmap-xhdpi/ic_launcher.png b/multisrc/overrides/madara/mangatuli/res/midmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..e05a1cee0 Binary files /dev/null and b/multisrc/overrides/madara/mangatuli/res/midmap-xhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/mangatuli/res/midmap-xxhdpi/ic_launcher.png b/multisrc/overrides/madara/mangatuli/res/midmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..b403e185d Binary files /dev/null and b/multisrc/overrides/madara/mangatuli/res/midmap-xxhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/mangatuli/res/midmap-xxxhdpi/ic_launcher.png b/multisrc/overrides/madara/mangatuli/res/midmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..a5ecfcbef Binary files /dev/null and b/multisrc/overrides/madara/mangatuli/res/midmap-xxxhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/mangatuli/res/web_hi_res_512.png b/multisrc/overrides/madara/mangatuli/res/web_hi_res_512.png new file mode 100644 index 000000000..dd83ef42c Binary files /dev/null and b/multisrc/overrides/madara/mangatuli/res/web_hi_res_512.png differ diff --git a/multisrc/overrides/madara/mangatuli/src/MangaTuli.kt b/multisrc/overrides/madara/mangatuli/src/MangaTuli.kt new file mode 100644 index 000000000..d3f758086 --- /dev/null +++ b/multisrc/overrides/madara/mangatuli/src/MangaTuli.kt @@ -0,0 +1,83 @@ +package eu.kanade.tachiyomi.extension.en.mangatuli + +import eu.kanade.tachiyomi.lib.ratelimit.RateLimitInterceptor +import eu.kanade.tachiyomi.annotations.Nsfw +import eu.kanade.tachiyomi.multisrc.madara.Madara +import okhttp3.OkHttpClient +import java.util.concurrent.TimeUnit + +@Nsfw +class MangaTuli : Madara("MangaTuli", "https://mangatuli.com", "en") { + private val rateLimitInterceptor = RateLimitInterceptor(1) + + override val client: OkHttpClient = network.cloudflareClient.newBuilder() + .connectTimeout(10, TimeUnit.SECONDS) + .readTimeout(30, TimeUnit.SECONDS) + .addNetworkInterceptor(rateLimitInterceptor) + .build() + + override fun getGenreList() = listOf( + Genre("4-koma", "4-koma"), + Genre("Action", "action"), + Genre("Adult", "adult"), + Genre("Adventure", "adventure"), + Genre("Chinese", "chinese"), + Genre("Comedy", "comedy"), + Genre("Cooking", "cooking"), + Genre("Crime", "crime"), + Genre("Crossdressing", "crossdressing"), + Genre("Demons", "demons"), + Genre("Detective", "detective"), + Genre("Doujinshi", "doujinshi"), + Genre("Drama", "drama"), + Genre("Ecchi", "ecchi"), + Genre("English", "english"), + Genre("Fanstasy", "fantasy"), + Genre("Full color", "full-color"), + Genre("Game", "game"), + Genre("Gender bender", "gender-bender"), + Genre("Harem", "harem"), + Genre("Historical", "historical"), + Genre("Horror", "horror"), + Genre("Isekai", "isekai"), + Genre("Josei", "josei"), + Genre("Korean", "korean"), + Genre("Magic", "magic"), + Genre("Magical girls", "magical-girls"), + Genre("Manga", "manga"), + Genre("Manhua", "manhua"), + Genre("Manhwa", "manhwa"), + Genre("Martial arts", "martial-arts"), + Genre("Mature", "mature"), + Genre("Mecha", "mecha"), + Genre("Medical", "medical"), + Genre("Military", "military"), + Genre("Music", "music"), + Genre("Mystery", "mystery"), + Genre("One shot", "one-shot"), + Genre("Psychological", "psychological"), + Genre("Reincarnation", "reincarnation"), + Genre("Romance", "romance"), + Genre("School Life", "school-life"), + Genre("Sci-fi", "sci-fi"), + Genre("Seinen", "seinen"), + Genre("Shoujo", "shoujo"), + Genre("Shoujo ai", "shoujo-ai"), + Genre("Shounen", "shounen"), + Genre("Shounen ai", "shounen-ai"), + Genre("Slice of Life", "slice-of-life"), + Genre("Smut", "smut"), + Genre("Sports", "sports"), + Genre("Super power", "super-power"), + Genre("Superhero", "superhero"), + Genre("Supernatural", "supernatural"), + Genre("Thriller", "thriller"), + Genre("Traditional games", "traditional-games"), + Genre("Tragedy", "tragedy"), + Genre("Webtoon", "webtoon"), + Genre("Webtoons", "webtoons"), + Genre("Wuxia", "wuxia"), + Genre("Yaoi", "yaoi"), + Genre("Yuri", "yuri"), + ) +} diff --git a/multisrc/overrides/madara/yaoimanga/additional.gradle.kts b/multisrc/overrides/madara/yaoimanga/additional.gradle.kts new file mode 100644 index 000000000..10beb8157 --- /dev/null +++ b/multisrc/overrides/madara/yaoimanga/additional.gradle.kts @@ -0,0 +1,4 @@ + +dependencies { + implementation project(':lib-ratelimit') +} diff --git a/multisrc/overrides/madara/yaoimanga/res/midmap-hdpi/ic_launcher.png b/multisrc/overrides/madara/yaoimanga/res/midmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..98aab181f Binary files /dev/null and b/multisrc/overrides/madara/yaoimanga/res/midmap-hdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/yaoimanga/res/midmap-mdpi/ic_launcher.png b/multisrc/overrides/madara/yaoimanga/res/midmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..4981ec5b4 Binary files /dev/null and b/multisrc/overrides/madara/yaoimanga/res/midmap-mdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/yaoimanga/res/midmap-xhdpi/ic_launcher.png b/multisrc/overrides/madara/yaoimanga/res/midmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..e1e7347be Binary files /dev/null and b/multisrc/overrides/madara/yaoimanga/res/midmap-xhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/yaoimanga/res/midmap-xxhdpi/ic_launcher.png b/multisrc/overrides/madara/yaoimanga/res/midmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..932aa7dca Binary files /dev/null and b/multisrc/overrides/madara/yaoimanga/res/midmap-xxhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/yaoimanga/res/midmap-xxxhdpi/ic_launcher.png b/multisrc/overrides/madara/yaoimanga/res/midmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..dfac6f86f Binary files /dev/null and b/multisrc/overrides/madara/yaoimanga/res/midmap-xxxhdpi/ic_launcher.png differ diff --git a/multisrc/overrides/madara/yaoimanga/res/web_hi_res_512.png b/multisrc/overrides/madara/yaoimanga/res/web_hi_res_512.png new file mode 100644 index 000000000..4475cbfa8 Binary files /dev/null and b/multisrc/overrides/madara/yaoimanga/res/web_hi_res_512.png differ diff --git a/multisrc/overrides/madara/yaoimanga/src/YaoiManga.kt b/multisrc/overrides/madara/yaoimanga/src/YaoiManga.kt new file mode 100644 index 000000000..4359a0437 --- /dev/null +++ b/multisrc/overrides/madara/yaoimanga/src/YaoiManga.kt @@ -0,0 +1,75 @@ +package eu.kanade.tachiyomi.extension.en.yaoimanga + +import eu.kanade.tachiyomi.lib.ratelimit.RateLimitInterceptor +import eu.kanade.tachiyomi.annotations.Nsfw +import eu.kanade.tachiyomi.multisrc.madara.Madara +import okhttp3.OkHttpClient +import java.util.concurrent.TimeUnit + +@Nsfw +class YaoiManga : Madara("Yaoi Manga", "https://yaoi.mobi", "en") { + private val rateLimitInterceptor = RateLimitInterceptor(1) + + override val client: OkHttpClient = network.cloudflareClient.newBuilder() + .connectTimeout(10, TimeUnit.SECONDS) + .readTimeout(30, TimeUnit.SECONDS) + .addNetworkInterceptor(rateLimitInterceptor) + .build() + + override fun getGenreList() = listOf( + Genre("Action", "action"), + Genre("Adult", "adult"), + Genre("Adventure", "adventure"), + Genre("Anime", "anime"), + Genre("BL", "bl"), + Genre("Boys Love", "boyslove"), + Genre("Cartoon", "cartoon"), + Genre("Comedy", "comedy"), + Genre("Comic", "comic"), + Genre("Cooking", "cooking"), + Genre("Detective", "detective"), + Genre("Doujinshi", "doujinshi"), + Genre("Drama", "drama"), + Genre("Ecchi", "ecchi"), + Genre("Fanstasy", "fantasy"), + Genre("Free hentai", "free-hentai"), + Genre("Gender bender", "gender-bender"), + Genre("Harem", "harem"), + Genre("Historical", "historical"), + Genre("Horror", "horror"), + Genre("Isekai", "isekai"), + Genre("Josei", "josei"), + Genre("Live action", "live-action"), + Genre("Manga", "manga"), + Genre("Manhua", "manhua"), + Genre("Manhwa", "manhwa"), + Genre("Martial arts", "martial-arts"), + Genre("Mature", "mature"), + Genre("Mecha", "mecha"), + Genre("Medical", "medical"), + Genre("Mystery", "mystery"), + Genre("One shot", "one-shot"), + Genre("Premium", "premium"), + Genre("Psychological", "psychological"), + Genre("Raw", "raw"), + Genre("Romance", "romance"), + Genre("School life", "school-life"), + Genre("Sci-fi", "sci-fi"), + Genre("Seinen", "seinen"), + Genre("Shoujo", "shoujo"), + Genre("Shoujo ai", "shoujo-ai"), + Genre("Shounen", "shounen"), + Genre("Shounen ai", "shounen-ai"), + Genre("Slice of Life", "slice-of-life"), + Genre("Smut", "smut"), + Genre("Soft Yaoi", "soft-yaoi"), + Genre("Soft Yuri", "soft-yuri"), + Genre("Sports", "sports"), + Genre("Supernatural", "supernatural"), + Genre("Tragedy", "tragedy"), + Genre("Webtoon", "webtoon"), + Genre("Webtoons", "webtoons"), + Genre("Yaoi", "yaoi"), + Genre("Yuri", "yuri"), + ) +} diff --git a/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt b/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt index db10c2811..a926cc644 100644 --- a/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt +++ b/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt @@ -289,9 +289,10 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("Manga Fenix", "https://manga-fenix.com", "es"), SingleLang("Manga Mitsu", "https://mangamitsu.com", "en", isNsfw = true, overrideVersionCode = 1), SingleLang("Fudido Scanlator", "https://fudidoscan.com", "pt-BR", isNsfw = true), - SingleLang("Yaoi Manga", "https://yaoi.mobi", "en", isNsfw = true), - SingleLang("FreeManga", "https://freemanga.me", "en", isNsfw = true), - SingleLang("MangaTuli", "https://mangatuli.com", "en", isNsfw = true) + SingleLang("Yaoi Manga", "https://yaoi.mobi", "en", isNsfw = true, overrideVersionCode = 1), + SingleLang("Free Manga", "https://freemanga.me", "en", isNsfw = true, overrideVersionCode = 1), + SingleLang("MangaTuli", "https://mangatuli.com", "en", isNsfw = true, overrideVersionCode = 1) + ) companion object {