From 500501c5f50d90d22c5c65b01140c9ca787201bd Mon Sep 17 00:00:00 2001 From: achmad Date: Thu, 14 May 2026 22:58:59 +0700 Subject: [PATCH] feat: port 10 en/ Madara sources MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Passing (6): tritiniascans, mangamaniacs, mangakiss, mahouirexnohentaikarte, milftoon Site issues (4): spmanhwa — non-Cloudflare anti-bot challenge (HTTP 200 challenge page) webtoonscan, yaoiscan, manhwaclan — HTTP 403 on latest endpoint whalemanga — HTTP 526 (Cloudflare SSL error) --- .../mahouirexnohentaikarte.go | 16 ++++++++++++++++ .../mahouirexnohentaikarte_test.go | 8 ++++++++ sources/en/mangakiss/mangakiss.go | 16 ++++++++++++++++ sources/en/mangakiss/mangakiss_test.go | 8 ++++++++ sources/en/mangamaniacs/mangamaniacs.go | 16 ++++++++++++++++ sources/en/mangamaniacs/mangamaniacs_test.go | 8 ++++++++ sources/en/manhwaclan/manhwaclan.go | 16 ++++++++++++++++ sources/en/manhwaclan/manhwaclan_test.go | 8 ++++++++ sources/en/milftoon/milftoon.go | 17 +++++++++++++++++ sources/en/milftoon/milftoon_test.go | 8 ++++++++ sources/en/spmanhwa/spmanhwa.go | 16 ++++++++++++++++ sources/en/spmanhwa/spmanhwa_test.go | 8 ++++++++ sources/en/tritiniascans/tritiniascans.go | 16 ++++++++++++++++ sources/en/tritiniascans/tritiniascans_test.go | 8 ++++++++ sources/en/webtoonscan/webtoonscan.go | 16 ++++++++++++++++ sources/en/webtoonscan/webtoonscan_test.go | 8 ++++++++ sources/en/whalemanga/whalemanga.go | 17 +++++++++++++++++ sources/en/whalemanga/whalemanga_test.go | 8 ++++++++ sources/en/yaoiscan/yaoiscan.go | 16 ++++++++++++++++ sources/en/yaoiscan/yaoiscan_test.go | 8 ++++++++ 20 files changed, 242 insertions(+) create mode 100644 sources/en/mahouirexnohentaikarte/mahouirexnohentaikarte.go create mode 100644 sources/en/mahouirexnohentaikarte/mahouirexnohentaikarte_test.go create mode 100644 sources/en/mangakiss/mangakiss.go create mode 100644 sources/en/mangakiss/mangakiss_test.go create mode 100644 sources/en/mangamaniacs/mangamaniacs.go create mode 100644 sources/en/mangamaniacs/mangamaniacs_test.go create mode 100644 sources/en/manhwaclan/manhwaclan.go create mode 100644 sources/en/manhwaclan/manhwaclan_test.go create mode 100644 sources/en/milftoon/milftoon.go create mode 100644 sources/en/milftoon/milftoon_test.go create mode 100644 sources/en/spmanhwa/spmanhwa.go create mode 100644 sources/en/spmanhwa/spmanhwa_test.go create mode 100644 sources/en/tritiniascans/tritiniascans.go create mode 100644 sources/en/tritiniascans/tritiniascans_test.go create mode 100644 sources/en/webtoonscan/webtoonscan.go create mode 100644 sources/en/webtoonscan/webtoonscan_test.go create mode 100644 sources/en/whalemanga/whalemanga.go create mode 100644 sources/en/whalemanga/whalemanga_test.go create mode 100644 sources/en/yaoiscan/yaoiscan.go create mode 100644 sources/en/yaoiscan/yaoiscan_test.go diff --git a/sources/en/mahouirexnohentaikarte/mahouirexnohentaikarte.go b/sources/en/mahouirexnohentaikarte/mahouirexnohentaikarte.go new file mode 100644 index 0000000..a886f57 --- /dev/null +++ b/sources/en/mahouirexnohentaikarte/mahouirexnohentaikarte.go @@ -0,0 +1,16 @@ +package mahouirexnohentaikarte + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Mahouirexnohentaikarte", + BaseURL: "https://mahouirexnohentaikarte.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/mahouirexnohentaikarte/mahouirexnohentaikarte_test.go b/sources/en/mahouirexnohentaikarte/mahouirexnohentaikarte_test.go new file mode 100644 index 0000000..e33f364 --- /dev/null +++ b/sources/en/mahouirexnohentaikarte/mahouirexnohentaikarte_test.go @@ -0,0 +1,8 @@ +package mahouirexnohentaikarte + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "Mahouirexnohentaikarte", "en") } diff --git a/sources/en/mangakiss/mangakiss.go b/sources/en/mangakiss/mangakiss.go new file mode 100644 index 0000000..f58048f --- /dev/null +++ b/sources/en/mangakiss/mangakiss.go @@ -0,0 +1,16 @@ +package mangakiss + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Manga Kiss", + BaseURL: "https://mangakiss.org", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/mangakiss/mangakiss_test.go b/sources/en/mangakiss/mangakiss_test.go new file mode 100644 index 0000000..befd988 --- /dev/null +++ b/sources/en/mangakiss/mangakiss_test.go @@ -0,0 +1,8 @@ +package mangakiss + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "Manga Kiss", "en") } diff --git a/sources/en/mangamaniacs/mangamaniacs.go b/sources/en/mangamaniacs/mangamaniacs.go new file mode 100644 index 0000000..d7d204f --- /dev/null +++ b/sources/en/mangamaniacs/mangamaniacs.go @@ -0,0 +1,16 @@ +package mangamaniacs + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "MangaManiacs", + BaseURL: "https://mangamaniacs.org", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/mangamaniacs/mangamaniacs_test.go b/sources/en/mangamaniacs/mangamaniacs_test.go new file mode 100644 index 0000000..8bf4d52 --- /dev/null +++ b/sources/en/mangamaniacs/mangamaniacs_test.go @@ -0,0 +1,8 @@ +package mangamaniacs + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "MangaManiacs", "en") } diff --git a/sources/en/manhwaclan/manhwaclan.go b/sources/en/manhwaclan/manhwaclan.go new file mode 100644 index 0000000..f526751 --- /dev/null +++ b/sources/en/manhwaclan/manhwaclan.go @@ -0,0 +1,16 @@ +package manhwaclan + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "ManhwaClan", + BaseURL: "https://manhwaclan.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/manhwaclan/manhwaclan_test.go b/sources/en/manhwaclan/manhwaclan_test.go new file mode 100644 index 0000000..c6d2133 --- /dev/null +++ b/sources/en/manhwaclan/manhwaclan_test.go @@ -0,0 +1,8 @@ +package manhwaclan + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "ManhwaClan", "en") } diff --git a/sources/en/milftoon/milftoon.go b/sources/en/milftoon/milftoon.go new file mode 100644 index 0000000..3e6339c --- /dev/null +++ b/sources/en/milftoon/milftoon.go @@ -0,0 +1,17 @@ +package milftoon + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Milftoon", + BaseURL: "https://milftoon.xxx", + Lang: "en", + MangaSubString: "comics", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/milftoon/milftoon_test.go b/sources/en/milftoon/milftoon_test.go new file mode 100644 index 0000000..48ce352 --- /dev/null +++ b/sources/en/milftoon/milftoon_test.go @@ -0,0 +1,8 @@ +package milftoon + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "Milftoon", "en") } diff --git a/sources/en/spmanhwa/spmanhwa.go b/sources/en/spmanhwa/spmanhwa.go new file mode 100644 index 0000000..127aaa5 --- /dev/null +++ b/sources/en/spmanhwa/spmanhwa.go @@ -0,0 +1,16 @@ +package spmanhwa + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Spmanhwa", + BaseURL: "https://spmanhwa.online", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/spmanhwa/spmanhwa_test.go b/sources/en/spmanhwa/spmanhwa_test.go new file mode 100644 index 0000000..4fb2355 --- /dev/null +++ b/sources/en/spmanhwa/spmanhwa_test.go @@ -0,0 +1,8 @@ +package spmanhwa + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "Spmanhwa", "en") } diff --git a/sources/en/tritiniascans/tritiniascans.go b/sources/en/tritiniascans/tritiniascans.go new file mode 100644 index 0000000..76f7e55 --- /dev/null +++ b/sources/en/tritiniascans/tritiniascans.go @@ -0,0 +1,16 @@ +package tritiniascans + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "TritiniaScans", + BaseURL: "https://tritinia.org", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/tritiniascans/tritiniascans_test.go b/sources/en/tritiniascans/tritiniascans_test.go new file mode 100644 index 0000000..e3f3eb9 --- /dev/null +++ b/sources/en/tritiniascans/tritiniascans_test.go @@ -0,0 +1,8 @@ +package tritiniascans + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "TritiniaScans", "en") } diff --git a/sources/en/webtoonscan/webtoonscan.go b/sources/en/webtoonscan/webtoonscan.go new file mode 100644 index 0000000..64c9c2f --- /dev/null +++ b/sources/en/webtoonscan/webtoonscan.go @@ -0,0 +1,16 @@ +package webtoonscan + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "WebtoonScan", + BaseURL: "https://webtoonscan.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/webtoonscan/webtoonscan_test.go b/sources/en/webtoonscan/webtoonscan_test.go new file mode 100644 index 0000000..d23974d --- /dev/null +++ b/sources/en/webtoonscan/webtoonscan_test.go @@ -0,0 +1,8 @@ +package webtoonscan + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "WebtoonScan", "en") } diff --git a/sources/en/whalemanga/whalemanga.go b/sources/en/whalemanga/whalemanga.go new file mode 100644 index 0000000..2c3d549 --- /dev/null +++ b/sources/en/whalemanga/whalemanga.go @@ -0,0 +1,17 @@ +package whalemanga + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "WhaleManga", + BaseURL: "https://whalemanga.com", + Lang: "en", + UseNewChapterEndpoint: true, + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/whalemanga/whalemanga_test.go b/sources/en/whalemanga/whalemanga_test.go new file mode 100644 index 0000000..8f30c19 --- /dev/null +++ b/sources/en/whalemanga/whalemanga_test.go @@ -0,0 +1,8 @@ +package whalemanga + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "WhaleManga", "en") } diff --git a/sources/en/yaoiscan/yaoiscan.go b/sources/en/yaoiscan/yaoiscan.go new file mode 100644 index 0000000..dfa0b2c --- /dev/null +++ b/sources/en/yaoiscan/yaoiscan.go @@ -0,0 +1,16 @@ +package yaoiscan + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/madara" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "YaoiScan", + BaseURL: "https://yaoiscan.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/yaoiscan/yaoiscan_test.go b/sources/en/yaoiscan/yaoiscan_test.go new file mode 100644 index 0000000..fc7deb4 --- /dev/null +++ b/sources/en/yaoiscan/yaoiscan_test.go @@ -0,0 +1,8 @@ +package yaoiscan + +import ( + "testing" + "goyomi/internal/sourcetest" +) + +func TestSource(t *testing.T) { sourcetest.Run(t, New(), "YaoiScan", "en") }