feat: port 4 Madara-based sources (zinmanga, manhuafast, harimanga, mangadrama)

- zinmanga (https://mangazin.org) — plain Madara wrapper
- manhuafast (https://manhuafast.com) — plain Madara wrapper
- harimanga (https://harimanga.me) — plain Madara wrapper
- mangadrama (https://mangadrama.com) — Madara with new chapter endpoint
  and custom chapter list selector
This commit is contained in:
achmad
2026-05-14 22:37:16 +07:00
parent d432a3948f
commit baca350481
8 changed files with 102 additions and 0 deletions
+16
View File
@@ -0,0 +1,16 @@
package harimanga
import (
"goyomi/internal/registry"
base "goyomi/sources/base/madara"
)
func New() *base.Source {
return base.New(base.Config{
Name: "Harimanga",
BaseURL: "https://harimanga.me",
Lang: "en",
})
}
func init() { registry.Register(New()) }
+9
View File
@@ -0,0 +1,9 @@
package harimanga
import (
"testing"
"goyomi/internal/sourcetest"
)
func TestSource(t *testing.T) { sourcetest.Run(t, New(), "Harimanga", "en") }
+18
View File
@@ -0,0 +1,18 @@
package mangadrama
import (
"goyomi/internal/registry"
base "goyomi/sources/base/madara"
)
func New() *base.Source {
return base.New(base.Config{
Name: "Manga Drama",
BaseURL: "https://mangadrama.com",
Lang: "en",
UseNewChapterEndpoint: true,
ChapterListSelector: "li.wp-manga-chapter.free-chap",
})
}
func init() { registry.Register(New()) }
+9
View File
@@ -0,0 +1,9 @@
package mangadrama
import (
"testing"
"goyomi/internal/sourcetest"
)
func TestSource(t *testing.T) { sourcetest.Run(t, New(), "Manga Drama", "en") }
+16
View File
@@ -0,0 +1,16 @@
package manhuafast
import (
"goyomi/internal/registry"
base "goyomi/sources/base/madara"
)
func New() *base.Source {
return base.New(base.Config{
Name: "ManhuaFast",
BaseURL: "https://manhuafast.com",
Lang: "en",
})
}
func init() { registry.Register(New()) }
+9
View File
@@ -0,0 +1,9 @@
package manhuafast
import (
"testing"
"goyomi/internal/sourcetest"
)
func TestSource(t *testing.T) { sourcetest.Run(t, New(), "ManhuaFast", "en") }
+16
View File
@@ -0,0 +1,16 @@
package zinmanga
import (
"goyomi/internal/registry"
base "goyomi/sources/base/madara"
)
func New() *base.Source {
return base.New(base.Config{
Name: "Zinmanga",
BaseURL: "https://mangazin.org",
Lang: "en",
})
}
func init() { registry.Register(New()) }
+9
View File
@@ -0,0 +1,9 @@
package zinmanga
import (
"testing"
"goyomi/internal/sourcetest"
)
func TestSource(t *testing.T) { sourcetest.Run(t, New(), "Zinmanga", "en") }