https://github.com/onigoetz/comics-reader
Read your comic book scans on tablet !
https://github.com/onigoetz/comics-reader
cbr cbz comic-books comics-reader new-topic pdf-support
Last synced: 23 days ago
JSON representation
Read your comic book scans on tablet !
- Host: GitHub
- URL: https://github.com/onigoetz/comics-reader
- Owner: onigoetz
- License: mit
- Created: 2011-10-23T18:29:58.000Z (almost 14 years ago)
- Default Branch: master
- Last Pushed: 2025-09-14T00:12:16.000Z (29 days ago)
- Last Synced: 2025-09-14T02:29:59.687Z (29 days ago)
- Topics: cbr, cbz, comic-books, comics-reader, new-topic, pdf-support
- Language: JavaScript
- Homepage:
- Size: 68.6 MB
- Stars: 36
- Watchers: 4
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Comics reader
[](https://github.com/onigoetz/Comics-Reader/releases)
[](https://github.com/onigoetz/Comics-Reader/blob/master/LICENSE.md)

[](https://hub.docker.com/r/onigoetz/comicsreader)Read your comics on your tablet
## What is it ?
A nice little comic book reader for tablets and mobile phones.
It is not intended to work on a desktop computer.## Features
- Watch your comic books on your phone or tablet, at home or on the go.
- Uses your filesystem, has an embedded database.
- Supports most comics formats : CBZ/CBR/ZIP/RAR, PDF, simple image directory.
- Internal search engine to find your comics easily
- Use basic auth credentials (from Nginx/Apache) or use the embedded Database to manage users.## Installing
### Using docker (Recommended)
```
docker run -v /your-images-dir:/comics -p 8080:8080 --rm onigoetz/comicsreader
```Will start the comics reader using your comic books at `/your-images-dir` and be available at [http://localhost:8080]().
### With Node
First, you need
- Nodejs
- [MuPDF](https://mupdf.com/docs/mutool.html) for PDF support (`brew install mupdf-tools` / `apt install mupdf-tools`)- Download/clone this repository on your server
- Symlink your comics to `images` in the app's directory
- Make the `images/cache` directory writable
- Run `yarn install`
- Run `yarn build`You can then start the server with `yarn start`.
This will index the books and start the server.
## Authentication
Authentication is an optional feature, you can either leverage the basic auth credentials from a server (Apache/Nginx)
Or use the built-in database.This option can be with the `COMICS_AUTH_TYPE` environment variable.
possible values are "basic" (default) or "db"When using the "db" authentication mode, you need to create users, for this we provide a command-line tool to create them.
Note that the container has to be stopped in order to use the CLI tool as the database is otherwise readonly.
### Creating users
```bash
sudo docker run --rm -it -v your_images_dir:/comics onigoetz/comicsreader node comics createUser
```### Changing password
```bash
sudo docker run --rm -it -v your_images_dir:/comics onigoetz/comicsreader node comics changePassword
```## Tweaking the configuration
### Basedir
Basedir has to be specified as an environment variable when starting the server.
```
COMICS_BASE="comics" yarn start
# OR
docker run -e "COMICS_BASE=comics" ...
```## Reverse proxy through nginx
```
location /BD/ {
proxy_pass http://comics:8080/BD/;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Forwarded-Proto $scheme;
}
```## Known issues
- Files with accents in zip (cbz) files don't work.
## Credits and technologies
- The web interface is made with [React](https://facebook.github.io/react/).
- The photo viewer is made with [PhotoSwipe](http://photoswipe.com/).
- [Next.js](https://nextjs.org/) powers the server side with a hint of [Express](http://expressjs.com/).
- [Sharp](http://sharp.pixelplumbing.com/en/stable/) is used to generate the thumbnails.
- Icon is from [GetDrawings](http://getdrawings.com/get-icon#comic-book-icon-68.jpg)