1.0.1 • Published 6 years ago

manga-rock-image-decoder v1.0.1

Weekly downloads
1
License
MIT
Repository
-
Last release
6 years ago

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

1.0.1

6 years ago

1.0.0

6 years ago