Skip to content
An open source web-based comic book reader.
JavaScript CSS Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

The open source web-based comic book reader that you need, but don't deserve.

npm GitHub contributors GitHub license Lerna

Screen preview


A simple open source web-based reader for:

  • Manga
  • Comic books
  • Graphic novels
  • Illustrated books

Works on the client side and is easy to integrate on any modern website or react application.


It relays on cutting-edge web apis and frameworks like react, webworkers and webAssembly:

  • Dont expect it to work on a hot potato
  • Usage with modern browsers is recommended


  • Dark / light theme
  • Manga mode ( Read right to left or default left to right )
  • Full screen mode ( Browser fullscreen API integration )
  • Easy page navigation : prev / next page buttons, slider component as well and a text input for accessibility
  • Keyboard shortcuts ( I need to document this )
  • Localization of strings ( Multi language support for the UI )
  • Layout mode : Single page / Book ( two pages )

A killer feature is missing ? Open a feature request


Supported archives formats by libarchive.js

  • ZIP
  • 7-Zip
  • RAR v4
  • RAR v5
  • TAR


This repository is now a mono-repo and is maintained with lerna


Before you jump in the code please follow the initial setup guide for development:

  1. Clone or fork this repository.
  2. Run yarn command to install the project dependencies.
  3. Run yarn bootstrap to install all dependencies from internal packages and link any cross-dependencies.

Thats it! Now you are ready to start fixing bugs and implementing new features. 🎉


Available packages living inside this repository:

Name version Description
villain-web 0.0.1 (beta) web app + embed api
villain-react 1.0.7 react component


Available package scripts for development:

Name Description
deploy Deploy villain-web to github pages
bootstrap Bootstrap the packages in the current mono repo
start:web Start development webpack-dev-server (includes hot-reloading) of villain-web
build:web Build production version of villain-web
start:react Start development webpack-dev-server (includes hot-reloading) of villain-react
build:react Build production version of villain-react
yarn command-name

Known issues

  • Accessibility issues #23
  • Some .rar and .cbr fail to load #1
  • Encrypted archived are not yet supported #26


You can’t perform that action at this time.