manga-rock-image-decoder
v1.0.1
Published
> Decode images from MangaRock's proprietary format
Downloads
3
Readme
MangaRock Image Decoder
Decode images from MangaRock's proprietary format
MangaRock has a nice API to work with, but obscures images by encoding them as bitwise xor'd .webp images. This codebase is a web microservice that decodes images into their native .webp format for easy consumption outside of MangaRock.
This microservice was built for the poketo library.
Usage
This package is available on npm, or as a microservice deployed to https://mri-image-decoder.now.sh
. To use the microservice, pass the image's URL to the ?url
query parameter like so:
https://mri-image-decoder.now.sh?url=https://f01.mrcdn.info/file/mrfiles/i/6/n/l/T3.3BZTN7p5.mri
This will return the image with the correct content type set, so you can simply load or use it like any other image URL:
<img src="https://mri-image-decoder.now.sh?url=https://f01.mrcdn.info/file/mrfiles/i/6/n/l/T3.3BZTN7p5.mri" />
JS API
To use this package from npm, install it:
npm install manga-rock-image-decoder
This package exports a single function, decode
which accepts a .mri image buffer and returns a converted .webp buffer
const decode = require('manga-rock-image-decoder');
const webpImageBuffer = decode(mriImageBuffer);
You can use an image conversion tool, such as sharp, to convert the .webp image to
Credits
Thanks to this reddit answer and the Tachiyomi codebase for their implementations, which helped me write this module.
License
MIT