From 85f34b1b236fd49d862a95ea3d58078fea0e0e0d Mon Sep 17 00:00:00 2001 From: achmad Date: Thu, 14 May 2026 07:26:42 +0700 Subject: [PATCH] feat: add batch 4 base-source wrappers (MangaCatalog, PizzaReader, Monochrome, MangAdventure, EroMuse) 15 MangaCatalog en/ sources (franchise-specific read* sites), hniscantrad (PizzaReader/all), monochromescans (Monochrome), assortedscans (MangAdventure), eightmuses (EroMuse). --- cmd/server/main.go | 20 ++++++++++ docs/phase4-standalone.md | 38 +++++++++---------- sources/all/hniscantrad/hniscantrad.go | 16 ++++++++ sources/en/assortedscans/assortedscans.go | 16 ++++++++ sources/en/eightmuses/eightmuses.go | 16 ++++++++ sources/en/monochromescans/monochromescans.go | 16 ++++++++ .../readattackontitanshingekinokyojinmanga.go | 16 ++++++++ .../en/readberserkmanga/readberserkmanga.go | 16 ++++++++ .../readblackclovermangaonline.go | 16 ++++++++ ...adbokunoheroacademiamyheroacademiamanga.go | 16 ++++++++ .../readchainsawmanmangaonline.go | 16 ++++++++ .../readfairytailedenszeromangaonline.go | 16 ++++++++ .../readhaikyuumangaonline.go | 16 ++++++++ .../readjujutsukaisenmangaonline.go | 16 ++++++++ .../readkingdommangaonline.go | 16 ++++++++ ...adnanatsunotaizai7deadlysinsmangaonline.go | 16 ++++++++ .../readnarutoborutosamurai8mangaonline.go | 16 ++++++++ .../readonepiecemangaonline.go | 16 ++++++++ .../readonepunchmanmangaonlinetwo.go | 16 ++++++++ .../readsololevelingmangamanhwaonline.go | 16 ++++++++ .../readtokyoghoulretokyoghoulmangaonline.go | 16 ++++++++ 21 files changed, 343 insertions(+), 19 deletions(-) create mode 100644 sources/all/hniscantrad/hniscantrad.go create mode 100644 sources/en/assortedscans/assortedscans.go create mode 100644 sources/en/eightmuses/eightmuses.go create mode 100644 sources/en/monochromescans/monochromescans.go create mode 100644 sources/en/readattackontitanshingekinokyojinmanga/readattackontitanshingekinokyojinmanga.go create mode 100644 sources/en/readberserkmanga/readberserkmanga.go create mode 100644 sources/en/readblackclovermangaonline/readblackclovermangaonline.go create mode 100644 sources/en/readbokunoheroacademiamyheroacademiamanga/readbokunoheroacademiamyheroacademiamanga.go create mode 100644 sources/en/readchainsawmanmangaonline/readchainsawmanmangaonline.go create mode 100644 sources/en/readfairytailedenszeromangaonline/readfairytailedenszeromangaonline.go create mode 100644 sources/en/readhaikyuumangaonline/readhaikyuumangaonline.go create mode 100644 sources/en/readjujutsukaisenmangaonline/readjujutsukaisenmangaonline.go create mode 100644 sources/en/readkingdommangaonline/readkingdommangaonline.go create mode 100644 sources/en/readnanatsunotaizai7deadlysinsmangaonline/readnanatsunotaizai7deadlysinsmangaonline.go create mode 100644 sources/en/readnarutoborutosamurai8mangaonline/readnarutoborutosamurai8mangaonline.go create mode 100644 sources/en/readonepiecemangaonline/readonepiecemangaonline.go create mode 100644 sources/en/readonepunchmanmangaonlinetwo/readonepunchmanmangaonlinetwo.go create mode 100644 sources/en/readsololevelingmangamanhwaonline/readsololevelingmangamanhwaonline.go create mode 100644 sources/en/readtokyoghoulretokyoghoulmangaonline/readtokyoghoulretokyoghoulmangaonline.go diff --git a/cmd/server/main.go b/cmd/server/main.go index f455990..f8b30be 100755 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -121,6 +121,26 @@ import ( _ "goyomi/sources/en/mangatoday" _ "goyomi/sources/en/onemangaco" _ "goyomi/sources/en/onemangainfo" + + _ "goyomi/sources/en/readattackontitanshingekinokyojinmanga" + _ "goyomi/sources/en/readberserkmanga" + _ "goyomi/sources/en/readblackclovermangaonline" + _ "goyomi/sources/en/readbokunoheroacademiamyheroacademiamanga" + _ "goyomi/sources/en/readchainsawmanmangaonline" + _ "goyomi/sources/en/readfairytailedenszeromangaonline" + _ "goyomi/sources/en/readhaikyuumangaonline" + _ "goyomi/sources/en/readjujutsukaisenmangaonline" + _ "goyomi/sources/en/readkingdommangaonline" + _ "goyomi/sources/en/readnanatsunotaizai7deadlysinsmangaonline" + _ "goyomi/sources/en/readnarutoborutosamurai8mangaonline" + _ "goyomi/sources/en/readonepiecemangaonline" + _ "goyomi/sources/en/readonepunchmanmangaonlinetwo" + _ "goyomi/sources/en/readsololevelingmangamanhwaonline" + _ "goyomi/sources/en/readtokyoghoulretokyoghoulmangaonline" + _ "goyomi/sources/all/hniscantrad" + _ "goyomi/sources/en/monochromescans" + _ "goyomi/sources/en/assortedscans" + _ "goyomi/sources/en/eightmuses" ) func main() { diff --git a/docs/phase4-standalone.md b/docs/phase4-standalone.md index d2db7dc..90aa30b 100755 --- a/docs/phase4-standalone.md +++ b/docs/phase4-standalone.md @@ -78,7 +78,7 @@ Detailed implementation notes for complex sources are in the **Notes** section a - [x] `all/hentaihand` - [ ] `all/hentairox` - [ ] `all/hentaizap` -- [ ] `all/hniscantrad` +- [x] `all/hniscantrad` - [ ] `all/holonometria` - [ ] `all/honeytoon` - [ ] `all/imhentai` @@ -184,7 +184,7 @@ Detailed implementation notes for complex sources are in the **Notes** section a - [ ] `en/aryascans` - [ ] `en/asiatoon` - [ ] `en/asmotoon` -- [ ] `en/assortedscans` +- [x] `en/assortedscans` - [ ] `en/asurascans` ⚠️ see notes - [ ] `en/athreascans` - [ ] `en/atsumaru` → base: Madara @@ -239,7 +239,7 @@ Detailed implementation notes for complex sources are in the **Notes** section a - [ ] `en/eggporncomics` - [ ] `en/egscomics` - [ ] `en/eighteenporncomic` -- [ ] `en/eightmuses` +- [x] `en/eightmuses` - [ ] `en/elanschool` - [x] `en/elftoon` - [ ] `en/epicmanga` @@ -447,7 +447,7 @@ Detailed implementation notes for complex sources are in the **Notes** section a - [x] `en/mistscans` - [ ] `en/mlbblore` - [ ] `en/monochromecustom` -- [ ] `en/monochromescans` +- [x] `en/monochromescans` - [ ] `en/multporn` - [ ] `en/murimscan` - [ ] `en/myhentaicomics` @@ -496,23 +496,23 @@ Detailed implementation notes for complex sources are in the **Notes** section a - [ ] `en/razure` - [ ] `en/rdscans` - [ ] `en/readallcomicscom` -- [ ] `en/readattackontitanshingekinokyojinmanga` -- [ ] `en/readberserkmanga` -- [ ] `en/readblackclovermangaonline` -- [ ] `en/readbokunoheroacademiamyheroacademiamanga` -- [ ] `en/readchainsawmanmangaonline` +- [x] `en/readattackontitanshingekinokyojinmanga` +- [x] `en/readberserkmanga` +- [x] `en/readblackclovermangaonline` +- [x] `en/readbokunoheroacademiamyheroacademiamanga` +- [x] `en/readchainsawmanmangaonline` - [ ] `en/readcomiconline` - [ ] `en/readcomicsonline` -- [ ] `en/readfairytailedenszeromangaonline` -- [ ] `en/readhaikyuumangaonline` -- [ ] `en/readjujutsukaisenmangaonline` -- [ ] `en/readkingdommangaonline` -- [ ] `en/readnanatsunotaizai7deadlysinsmangaonline` -- [ ] `en/readnarutoborutosamurai8mangaonline` -- [ ] `en/readonepiecemangaonline` -- [ ] `en/readonepunchmanmangaonlinetwo` -- [ ] `en/readsololevelingmangamanhwaonline` -- [ ] `en/readtokyoghoulretokyoghoulmangaonline` +- [x] `en/readfairytailedenszeromangaonline` +- [x] `en/readhaikyuumangaonline` +- [x] `en/readjujutsukaisenmangaonline` +- [x] `en/readkingdommangaonline` +- [x] `en/readnanatsunotaizai7deadlysinsmangaonline` +- [x] `en/readnarutoborutosamurai8mangaonline` +- [x] `en/readonepiecemangaonline` +- [x] `en/readonepunchmanmangaonlinetwo` +- [x] `en/readsololevelingmangamanhwaonline` +- [x] `en/readtokyoghoulretokyoghoulmangaonline` - [ ] `en/readvagabondmanga` - [ ] `en/reallifecomics` - [ ] `en/reimanga` diff --git a/sources/all/hniscantrad/hniscantrad.go b/sources/all/hniscantrad/hniscantrad.go new file mode 100644 index 0000000..7d2fc2d --- /dev/null +++ b/sources/all/hniscantrad/hniscantrad.go @@ -0,0 +1,16 @@ +package hniscantrad + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/pizzareader" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "HNI-Scantrad", + BaseURL: "https://hni-scantrad.net", + Lang: "all", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/assortedscans/assortedscans.go b/sources/en/assortedscans/assortedscans.go new file mode 100644 index 0000000..e13132e --- /dev/null +++ b/sources/en/assortedscans/assortedscans.go @@ -0,0 +1,16 @@ +package assortedscans + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangadventure" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Assorted Scans", + BaseURL: "https://assortedscans.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/eightmuses/eightmuses.go b/sources/en/eightmuses/eightmuses.go new file mode 100644 index 0000000..aa81b99 --- /dev/null +++ b/sources/en/eightmuses/eightmuses.go @@ -0,0 +1,16 @@ +package eightmuses + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/eromuse" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "8Muses", + BaseURL: "https://comics.8muses.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/monochromescans/monochromescans.go b/sources/en/monochromescans/monochromescans.go new file mode 100644 index 0000000..655496e --- /dev/null +++ b/sources/en/monochromescans/monochromescans.go @@ -0,0 +1,16 @@ +package monochromescans + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/monochrome" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Monochrome Scans", + BaseURL: "https://manga.d34d.one", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readattackontitanshingekinokyojinmanga/readattackontitanshingekinokyojinmanga.go b/sources/en/readattackontitanshingekinokyojinmanga/readattackontitanshingekinokyojinmanga.go new file mode 100644 index 0000000..2b20eec --- /dev/null +++ b/sources/en/readattackontitanshingekinokyojinmanga/readattackontitanshingekinokyojinmanga.go @@ -0,0 +1,16 @@ +package readattackontitanshingekinokyojinmanga + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Attack on Titan Shingeki no Kyojin Manga", + BaseURL: "https://ww11.readsnk.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readberserkmanga/readberserkmanga.go b/sources/en/readberserkmanga/readberserkmanga.go new file mode 100644 index 0000000..8bbdbff --- /dev/null +++ b/sources/en/readberserkmanga/readberserkmanga.go @@ -0,0 +1,16 @@ +package readberserkmanga + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Berserk Manga", + BaseURL: "https://readberserk.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readblackclovermangaonline/readblackclovermangaonline.go b/sources/en/readblackclovermangaonline/readblackclovermangaonline.go new file mode 100644 index 0000000..7deed98 --- /dev/null +++ b/sources/en/readblackclovermangaonline/readblackclovermangaonline.go @@ -0,0 +1,16 @@ +package readblackclovermangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Black Clover Manga Online", + BaseURL: "https://ww10.readblackclover.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readbokunoheroacademiamyheroacademiamanga/readbokunoheroacademiamyheroacademiamanga.go b/sources/en/readbokunoheroacademiamyheroacademiamanga/readbokunoheroacademiamyheroacademiamanga.go new file mode 100644 index 0000000..e025f42 --- /dev/null +++ b/sources/en/readbokunoheroacademiamyheroacademiamanga/readbokunoheroacademiamyheroacademiamanga.go @@ -0,0 +1,16 @@ +package readbokunoheroacademiamyheroacademiamanga + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Boku no Hero Academia My Hero Academia Manga", + BaseURL: "https://ww10.readmha.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readchainsawmanmangaonline/readchainsawmanmangaonline.go b/sources/en/readchainsawmanmangaonline/readchainsawmanmangaonline.go new file mode 100644 index 0000000..c57c1e2 --- /dev/null +++ b/sources/en/readchainsawmanmangaonline/readchainsawmanmangaonline.go @@ -0,0 +1,16 @@ +package readchainsawmanmangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Chainsaw Man Manga Online", + BaseURL: "https://ww5.readchainsawman.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readfairytailedenszeromangaonline/readfairytailedenszeromangaonline.go b/sources/en/readfairytailedenszeromangaonline/readfairytailedenszeromangaonline.go new file mode 100644 index 0000000..8bbbbd0 --- /dev/null +++ b/sources/en/readfairytailedenszeromangaonline/readfairytailedenszeromangaonline.go @@ -0,0 +1,16 @@ +package readfairytailedenszeromangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Fairy Tail & Edens Zero Manga Online", + BaseURL: "https://ww8.readfairytail.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readhaikyuumangaonline/readhaikyuumangaonline.go b/sources/en/readhaikyuumangaonline/readhaikyuumangaonline.go new file mode 100644 index 0000000..81174bc --- /dev/null +++ b/sources/en/readhaikyuumangaonline/readhaikyuumangaonline.go @@ -0,0 +1,16 @@ +package readhaikyuumangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Haikyuu!! Manga Online", + BaseURL: "https://ww9.readhaikyuu.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readjujutsukaisenmangaonline/readjujutsukaisenmangaonline.go b/sources/en/readjujutsukaisenmangaonline/readjujutsukaisenmangaonline.go new file mode 100644 index 0000000..383d84d --- /dev/null +++ b/sources/en/readjujutsukaisenmangaonline/readjujutsukaisenmangaonline.go @@ -0,0 +1,16 @@ +package readjujutsukaisenmangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Jujutsu Kaisen Manga Online", + BaseURL: "https://ww5.readjujutsukaisen.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readkingdommangaonline/readkingdommangaonline.go b/sources/en/readkingdommangaonline/readkingdommangaonline.go new file mode 100644 index 0000000..265da23 --- /dev/null +++ b/sources/en/readkingdommangaonline/readkingdommangaonline.go @@ -0,0 +1,16 @@ +package readkingdommangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Kingdom Manga Online", + BaseURL: "https://ww5.readkingdom.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readnanatsunotaizai7deadlysinsmangaonline/readnanatsunotaizai7deadlysinsmangaonline.go b/sources/en/readnanatsunotaizai7deadlysinsmangaonline/readnanatsunotaizai7deadlysinsmangaonline.go new file mode 100644 index 0000000..6b853cd --- /dev/null +++ b/sources/en/readnanatsunotaizai7deadlysinsmangaonline/readnanatsunotaizai7deadlysinsmangaonline.go @@ -0,0 +1,16 @@ +package readnanatsunotaizai7deadlysinsmangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Nanatsu no Taizai 7 Deadly Sins Manga Online", + BaseURL: "https://ww7.read7deadlysins.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readnarutoborutosamurai8mangaonline/readnarutoborutosamurai8mangaonline.go b/sources/en/readnarutoborutosamurai8mangaonline/readnarutoborutosamurai8mangaonline.go new file mode 100644 index 0000000..0b295ed --- /dev/null +++ b/sources/en/readnarutoborutosamurai8mangaonline/readnarutoborutosamurai8mangaonline.go @@ -0,0 +1,16 @@ +package readnarutoborutosamurai8mangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Naruto Boruto Samurai 8 Manga Online", + BaseURL: "https://ww11.readnaruto.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readonepiecemangaonline/readonepiecemangaonline.go b/sources/en/readonepiecemangaonline/readonepiecemangaonline.go new file mode 100644 index 0000000..878cb6c --- /dev/null +++ b/sources/en/readonepiecemangaonline/readonepiecemangaonline.go @@ -0,0 +1,16 @@ +package readonepiecemangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read One Piece Manga Online", + BaseURL: "https://ww12.readonepiece.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readonepunchmanmangaonlinetwo/readonepunchmanmangaonlinetwo.go b/sources/en/readonepunchmanmangaonlinetwo/readonepunchmanmangaonlinetwo.go new file mode 100644 index 0000000..dcf8ad9 --- /dev/null +++ b/sources/en/readonepunchmanmangaonlinetwo/readonepunchmanmangaonlinetwo.go @@ -0,0 +1,16 @@ +package readonepunchmanmangaonlinetwo + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read One-Punch Man Manga Online", + BaseURL: "https://ww6.readopm.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readsololevelingmangamanhwaonline/readsololevelingmangamanhwaonline.go b/sources/en/readsololevelingmangamanhwaonline/readsololevelingmangamanhwaonline.go new file mode 100644 index 0000000..3781695 --- /dev/null +++ b/sources/en/readsololevelingmangamanhwaonline/readsololevelingmangamanhwaonline.go @@ -0,0 +1,16 @@ +package readsololevelingmangamanhwaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Solo Leveling Manga Manhwa Online", + BaseURL: "https://ww3.readsololeveling.org", + Lang: "en", + }) +} + +func init() { registry.Register(New()) } diff --git a/sources/en/readtokyoghoulretokyoghoulmangaonline/readtokyoghoulretokyoghoulmangaonline.go b/sources/en/readtokyoghoulretokyoghoulmangaonline/readtokyoghoulretokyoghoulmangaonline.go new file mode 100644 index 0000000..36447b4 --- /dev/null +++ b/sources/en/readtokyoghoulretokyoghoulmangaonline/readtokyoghoulretokyoghoulmangaonline.go @@ -0,0 +1,16 @@ +package readtokyoghoulretokyoghoulmangaonline + +import ( + "goyomi/internal/registry" + base "goyomi/sources/base/mangacatalog" +) + +func New() *base.Source { + return base.New(base.Config{ + Name: "Read Tokyo Ghoul Re & Tokyo Ghoul Manga Online", + BaseURL: "https://ww11.tokyoghoulre.com", + Lang: "en", + }) +} + +func init() { registry.Register(New()) }