Mango is a self-hosted manga server and web reader
Go to file
Alex Ling 77237a274a Color the close button in alert black so it won't disappear in dark
mode
2020-03-13 01:38:16 +00:00
.github Add issue templates 2020-02-21 16:42:12 -05:00
public Color the close button in alert black so it won't disappear in dark 2020-03-13 01:38:16 +00:00
spec Add spec for `util.cr` 2020-03-12 23:47:14 +00:00
src Show reading progress in reader 2020-03-13 01:05:16 +00:00
.gitignore update Docker configuration 2020-02-18 05:37:45 +08:00
Dockerfile update Docker configuration 2020-02-18 05:37:45 +08:00
LICENSE - initial commit 2020-02-11 22:06:17 +00:00
Makefile Add unit test 2020-02-25 19:00:10 +00:00
README.md Add sourcerer.io contributors 2020-02-29 21:47:59 -05:00
docker-compose.example.yml Update docker-compose example 2020-02-23 21:09:50 +00:00
gulpfile.js Remove console in minified JS files 2020-02-28 17:52:14 +00:00
package.json Use Babel, so I can write modern JS and save my sanity 2020-02-23 18:26:57 +00:00
shard.lock - initial commit 2020-02-11 22:06:17 +00:00
shard.yml - when building for release, embed the static files in binary 2020-02-15 23:29:11 +00:00

README.md

banner

Mango

Gitter

Mango is a self-hosted manga server and reader. Its features include

  • Multi-user support
  • Supports both .zip and .cbz formats
  • Automatically stores reading progress
  • The web reader is responsive and works well on mobile, so there is no need for a mobile app
  • All the static files are embedded in the binary, so the deployment process is easy and painless

Installation

Pre-built Binary

  1. Simply download the pre-built binary file mango for the latest release. All the dependencies are statically linked, and it should work with most Linux systems on amd64.

Docker

  1. Make sure you have docker installed and running. You will also need docker-compose
  2. Clone the repository
  3. Copy docker-compose.example.yml to docker-compose.yml
  4. Modify the volumes in docker-compose.yml to point the directories to desired locations on the host machine
  5. Run docker-compose up. This should build the docker image and start the container with Mango running inside
  6. Head over to localhost:9000 to log in

Build from source

  1. Make sure you have Crystal, Node and Yarn installed. You might also need to install the development headers for libsqlite3 and libyaml.
  2. Clone the repository
  3. make && sudo make install
  4. Start Mango by running the command mango
  5. Head over to localhost:9000 to log in

Usage

CLI

Mango e-manga server/reader. Version 0.1.0

    -v, --version                    Show version
    -h, --help                       Show help
    -c PATH, --config=PATH           Path to the config file. Default is `~/.config/mango/config.yml`

Config

The default config file location is ~/.config/mango/config.yml. It might be different if you are running Mango in a docker container. The config options and default values are given below

---
port: 9000
library_path: ~/mango/library
db_path: ~/mango/mango.db
scan_interval_minutes: 5
log_level: info
  • scan_interval_minutes can be any non-negative integer. Setting it to 0 disables the periodic scan
  • log_level can be debug, info, warn, error, fatal or off. Setting it to off disables the logging

Required Library Structure

Please make sure that your library directory has the following structure:

.
├── Manga 1
│   └── Manga 1.cbz
└── Manga 2
    ├── Vol 0001.zip
    ├── Vol 0002.zip
    ├── Vol 0003.zip
    ├── Vol 0004.zip
    └── Vol 0005.zip

Initial Login

On the first run, Mango would log the default username and a randomly generated password to STDOUT. You are advised to immediately change the password.

Screenshots

Library:

library screenshot

Title:

title screenshot

Reader:

reader screenshot

Mobile UI:

mobile screenshot

Contributors