Description
I'm sorry for the span, but some time ago I was plying and contributing on https://github.com/KnicKnic/WASM-ImageMagick that's an ImageMagick port to JavaScript using emscripten. It has almost all IM capabilities and support a lot of image formats. As you might know IM implements lots of transformations which implementations were optimized and refined over the years.. The total bundle size of https://github.com/KnicKnic/WASM-ImageMagick is no greater than 5mb, what it could be a limitation, perhaps is speed and memory consumption when applying complex transformations on big images. (although I didn't tried jimp yet to compare).
Nevertheless, I just wanted to bring this up to you in case you didn't knew the project, perhaps you can reuse or integrate something from there. Think about transformations that will be very expensive to re-implement (and optimize) from scratch and image format support (see big list of supported formats below).
There are some toy-apps I made some time ago, unfortunately I didn't had the time to resume the research, cheers! and keep it up!
-
a big list of supported formats classified on read/write and read only (making the transformation to verify) https://cancerberosgx.github.io/demos/WASM-ImageMagick/supported-formats/
-
Several transformation types on different image formats (use the examples dropdown): https://cancerberosgx.github.io/autumn-leaves/#/convertDemo
-
An attempt to interactive application to add image effects. Has lots of transformations with controls to edit their parameters: https://cancerberosgx.github.io/autumn-leaves/#/imageFrame
Perhaps it could be used as a separate library/project with an easy to use API just to read/write files ? or for particular operations ?.. should be fun to research! :) thanks