MangaRack is a console line application capable of downloading manga series from popular manga scanlation sites. Each downloaded chapter is stored on your computer as a comic book archive and contains additional embedded meta information. The embedded meta information is compatible with the popular ComicRack application suite.
- NodeJS >=
6.x(http://nodejs.org/) - NPM >=
3.x(https://www.npmjs.org/) - GraphicsMagick >=
1.3.x(http://www.graphicsmagick.org/)
- Batoto support is intended as an incomplete high-quality provider.
- KissManga support is intended as a back-up provider.
- MangaFox support is intended as a complete medium-quality provider.
Use the applicable instructions to install. Is your operating system not listed? Please ask or contribute!
- Run in Terminal:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - - Run in Terminal:
sudo apt-get install nodejs graphicsmagick - Run in Terminal:
sudo npm install -g mangarack
- Install Homebrew following the instructions at http://brew.sh/
- Run in Terminal:
brew install node graphicsmagick - Run in Terminal:
npm install -g mangarack
- Install NodeJS following the instructions at http://nodejs.org/ (and choose latest)
- Install GraphicsMagick following the instructions at http://www.graphicsmagick.org/
- Run in Command Prompt:
npm install -g mangarack
Use the applicable instructions for the interface of your choice (currently limited to command-line).
The command-line interface does not have a graphical component and is ideal for automation purposes and headless machines. The interface can run using a sequence of series addresses (the site address containing the chapter listing), or using the standard input.
Download Futari dake from MangaFox:
mangarack-cli http://mangafox.me/manga/futari_dake/
Download Futari dake from MangaFox and disable image normalization:
mangarack-cli --runnable.cli.disableNormalize 1 http://mangafox.me/manga/futari_dake/
Download the series listed in the MangaRack.txt file:
mangarack-cli < MangaRack.txt
--component.core.batoto.username <username>provides a username for Batoto.--component.core.batoto.password <password>provides a password for Batoto.--runnable.cli.disableMangafoxHeuristicCrop 1disables MangaFox image cropping.--runnable.cli.disableNormalize 1disables image normalization.--runnable.cli.metaUnknownVolume 99overrides unknown volumes in ComicInfo.xml (See #44).
MangaRack is developed in TypeScript, a typed superset of JavaScript, and is designed to run in any JavaScript-enabled platform, including but not limited to cordova, electron, and nodejs. All code has been split into modules that have been tagged with a specific label:
componentmodules are environment agnostic and define required services.cordovamodules implementcomponent-required services for cordova.nodemodules implementcomponent-required services for nodejs.runnablemodules are intended to be executable entry points.
Each module has its own package definition, but none of the modules specify inter-module dependencies. This means that modules do not explicitly depend on each other through their package definition, even thought they might need another module to function properly. If you wish to install a module through npm:
- Install the preferred
componentmodule and itscomponentdependencies. - Install the preferred environment module and its environment dependencies.
- Use the API (documented through definitions) to use
mangarackfunctionality.
If you wish to contribute to this repository:
- Clone this repository into a folder named
node_modules. - Run
node .ezpz installin the folder using Command Prompt/Terminal. - Open the folder with Visual Studio Code.
- Press
CTRL+SHIFT+Bto start the compiler. You can edit the code now and test your changes. - Press
F5to start the debugger. You can enter series addresses into the terminal.
Please open an issue for further questions.