Mangal.mov
✨ Mangal is feature rich, configurable manga browser & downloader written in Go with support for different formats
⚙️ One of the most important features of Mangal is that it supports user defined scrapers that can be added with just a few lines of config file (see config & limitations)
🦎 Works in both modes - TUI & Inline. Use it as a standalone app or integrate with scripts
🍿 This app is inspired by awesome ani-cli. Check it out!
Currently, Mangal supports these formats
- Epub
- CBZ
- Zip
- Plain (just images)
Type
mangal formats
for more info
TUI.mov
For more information about inline mode type
mangal inline --help
# Search manga. Returns a list of found manga
mangal inline --query "death note"
# Search manga. Returns a JSON list of found manga
mangal inline --query "death note" --json
# Get chapters of first manga in the list
mangal inline --query "death note" --manga 1
# Download first chapter of the first manga in the list
mangal inline --query "death note" --manga 1 --chapter 1
TLDR: Use
mangal config where
to show where config should be located andmangal config init
to create default config
Config is located at the OS default config directory.
- Unix -
$XDG_CONFIG_HOME/mangal/config.toml
if$XDG_CONFIG_HOME
exists, else$HOME/.config/mangal/config.toml
- Darwin (macOS) -
$HOME/Library/Application\ Support/mangal/config.toml
- Windows -
%AppData%\mangal\config.toml
You can load config from custom path by using --config
flag
mangal --config /user/configs/config.toml
By default, Mangal uses manganelo as a source
Click here to show config example
# Which sources to use. You can use several sources, it won't affect perfomance'
use = ['manganelo']
# Available options: pdf, epub, cbz, zip, plain (just images)
format = "pdf"
# If false, then OS default pdf reader will be used
use_custom_reader = false
custom_reader = "zathura"
# Custom download path, can be either relative (to the current directory) or absolute
download_path = '.'
# Add images to cache
# If set to true mangal could crash when trying to redownload something really quickly
# Usually happens on slow machines
cache_images = false
[ui]
# Fullscreen mode
fullscreen = true
# Input prompt icon
prompt = ">"
# Input placeholder
placeholder = "What shall we look for?"
# Selected chapter mark
mark = "▼"
# Search window title
title = "Mangal"
[sources]
[sources.manganelo]
# Base url
base = 'https://ww5.manganelo.tv'
# Search endpoint. Put %s where the query should be
search = 'https://ww5.manganelo.tv/search/%s'
# Selector of entry anchor (<a></a>) on search page
manga_anchor = '.search-story-item a.item-title'
# Selector of entry title on search page
manga_title = '.search-story-item a.item-title'
# Manga chapters anchors selector
chapter_anchor = 'li.a-h a.chapter-name'
# Manga chapters titles selector
chapter_title = 'li.a-h a.chapter-name'
# Reader page images selector
reader_page = '.container-chapter-reader img'
# Random delay between requests
random_delay_ms = 500 # ms
# Are chapters listed in reversed order on that source?
# reversed order -> from newest chapter to oldest
reversed_chapters_order = true
The ultimate manga downloader multitool
Usage:
mangal [flags]
mangal [command]
Available Commands:
cleanup Remove cached and temp files
completion Generate the autocompletion script for the specified shell
config Config actions
formats Information about available formats
help Help about any command
inline Search & Download manga in inline mode
version Show version
Flags:
-c, --config string use config from path
-f, --format string use custom format
-h, --help help for mangal
Use "mangal [command] --help" for more information about a command.
go install github.com/metafates/mangal@latest
git clone https://github.com/metafates/mangal.git
cd mangal
go install
brew tap metafates/tap
brew install metafates/tap/mangal
Soon... 😴
git clone https://github.com/metafates/mangal.git
cd mangal
go build
You can also cross build for windows, linux & macos by running
cross-compile.py
Built binaries will be stored in the
bin
folder
Even though many manga sites will work, there exists some (serious) limitations to which sites could be added
- Navigation layout should follow this model
- Each manga have a separate page
- Manga page should have a some form of chapters list (not lazy loaded)
- Each chapter should have a separate reader page with all images
Some sites that work well
I'm planning to make a more advanced scraper creation system to overcome this roadblocks somewhere in the future
Logo taken from here