Villain
A free and open source web-based comic book reader.
Install / Use
/learn @btzr-io/VillainREADME
What?
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.
How?
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
Features
- 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
Formats
Supported archives formats by libarchive.js
ZIP7-ZipRAR v4RAR v5TAR
Development
This repository is now a mono-repo and is maintained with lerna
Setup
Before you jump in the code please follow the initial setup guide for development:
- Clone or fork this repository.
- Run
yarncommand to install the project dependencies. - Run
yarn bootstrapto 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. :tada:
Packages
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 |
Commands
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 | | docs:copy | Prepare documents for docsify-cli | | docsify:serve | Serve docsify generated document on localhost:3000 |
yarn command-name
Known issues
- Accessibility issues #23
- Some
.rarand.cbrfail to load #1 - Encrypted archived are not yet supported #26
Credits
-
:hammer_and_wrench: Created and maintained by @btzr-io with the help of some awesome contributors.
