Show HN: I Built ImgFiber-Better Image Optimizer. Free No Limits
38 comments
·April 6, 2025bertman
This is a CompressorJS wrapper.
iambavith
I built the image compression for imgfiber using CompressorJS as the base. It’s a reliable library by Feng Yuanchen (https://fengyuanchen.github.io/compressorjs/), originally designed for lossy compression. I wrapped and modified it to meet our specific needs, tweaking the code so the results differ from the default - you won’t get the same file size or optimization when using it out of the box. Full credit for the core library goes to the original author; my work was to modify it for our usecase. to solve our own personal pain point.
bertman
Using CompressorJS means lossy image compression. You really shouldn't be calling this "Instant, Lossless File Compression" on your page.
Also, because you're using CompressorJS's default settings, you should know that PNG files > 5 MB are converted to JPG (https://github.com/fengyuanchen/compressorjs?tab=readme-ov-f...). Your site, however, keeps the .png file name ending for the converted image, again falsely suggesting lossless compression.
mootothemax
> I wrapped and modified it to meet our specific needs, tweaking the code so the results differ from the default - you won’t get the same file size or optimization when using it out of the box.
I presume this is an oversight; changing CompressorJS's quality setting from its default of 0.8 to 0.75 results in the exact same output as ImgFiber.
Full settings dump:
{
"strict": true,
"checkOrientation": true,
"retainExif": false,
"maxWidth": null,
"maxHeight": null,
"minWidth": 0,
"minHeight": 0,
"resize": "none",
"quality": 0.75,
"mimeType": "auto",
"convertTypes": [
"image/png"
],
"convertSize": 5000000,
"beforeDraw": null,
"drew": null
}
iambavith
the settings dump you dropped will not deliver on same outputs :)
RamblingCTO
Isn't everything a wrapper for something in the end? Weird comment ...
yjftsjthsd-h
Is CompressorJS a wrapper?
RamblingCTO
I mean software product. Everything commodities something in the end imho
Daiz
Lossless compression means the pixels of the output image are 100% identical to that of the output image.
This site is clearly not doing that, and should thus not be called "lossless compression". The industry term for lossy compression that appears to be basically the same as the source is "visually transparent" or just "transparent". Though this doesn't seem like that either, especially when you're compressing large PNGs into JPGs while naming the output as PNGs. That's just outright deceitful, and not a good look.
iambavith
judging by the response we got , we will update site to reflect on “nearly lossless” approach than calling it “lossless” then We don’t mean to be deceitful.
pornel
In image compression "lossless" is a term of the art. What you're doing is a practically useful quality degradation, but it's not lossless.
umtksa
I just tested with a folder full of jpegs and I didn't even have to compare to see the artifacts kind of "looseless"
mootothemax
What am I missing about the 2.8mb example image not reducing to 698kb as it says on the homepage?
I downloaded https://www.imgfiber.com/compare/original.jpg and dragged it into the try-it-now section - says it's now 1.3mb.
That's worse than Squoosh's default 897kb (https://squoosh.app/editor), though better than CompressorJS's default 2.21mb (https://fengyuanchen.github.io/compressorjs/), (edit ii) tho changing CompressorJS's quality setting to 0.75 results in the exact same output as ImgFiber.
Edit: this is on latest Chrome + macos.
Doohickey-d
As an alternative to this, I quite like https://squoosh.app/ - Also works on-device, but additionally it's open source, supports multiple output formats, and exposes all the speed / quality / transparency options.
iambavith
Squoosh is great but for average user dealing with so many peremeters feels overwhelming and provides odd results.When you're handling a large number of files - like a Midjourney archive or a collection of images,it’s more convenient to use an app with preset settings that can process them in bulk, rather than one with detailed options that require fine-tuning.
starwatch
Sidenote, but I enjoyed seeing the squoosh maintainers talk through [1] how they diagnosed and resolved a memory leak they had a while back.
todotask2
I would suggest avoid using in Firefox, the images can appear to be brighter than converting in other browsers.
WoodenChair
Are you using a known tool or library? If not, what’s the algorithmic technique?
iambavith
we're using highly modified CompressorJS library to get this results. hope that helps.
bflesch
Can you explain a bit how working with JPG format was different than working on PNG format? How did you achieve significant savings for both formats, given that many clever people have worked on this before?
iambavith
We focused on lossless techniques like metadata cleanup, optimal encoding settings, and structural compression—for both JPG and PNG.
CyberDildonics
Does this mean that some of your 'compression' is just deleting meta data?
structural compression
What does this mean?
iambavith
Yes, some gains come from stripping metadata, but structural compression means optimizing how image data is encoded, like better Huffman tables for JPGs or smarter filtering for PNGs.
james-bcn
I'm a big fan of Clop. https://lowtechguys.com/clop/
iambavith
love the drag and drop to optimize approach. so cool.
miyuru
Is the tool working? I uploaded a couple images and it gave out 0 compression.
Also I am not sure if you thought the product through, when I want to compress images I want to control the output and also control the quality setting. This does not seem to do anything.
iambavith
yes tool works. its weird your images didn’t show any reduction in size. would love to try fixing it.
we did thought it through based on our use case :) that is working on bulk image processing where a slight loss in quality for Higher reduction in size is appreciated :) mostly for wallpaper apps or any image related sites. but yeah we will improvise to offer even cleaner approach
team_groovy
I really like the kewltools image file size reducer
https://kewltools.com/image-resizer
Just enter in the desired file size and it will compress down to it
iambavith
wow. really love this. thank you for mentioning it. its super useful for uploading on government websites they really love limiting uploads
todotask2
[dead]
iambavith
Ohh, Optimage and ImageOptim are different. thanks for pointing that out! We just came acrross imageoptim thanks to your comment. interesting to see how it offers subscriptions.
JPEG-XL definitely way to go. we’re exploring ways to integrate support for formats like JXL and AVIF soon.
ghosttaboo
[dead]
No file size/upload limits. Processed locally right inside your browser. No Server Uploads.
NOT A FFmpeg Wrapper.
It's not like any other Alternatives, Try for yourself!
Are you someone who deals with lots of images and always find yourself with your storage full? or Someone Who deals with websites optimization and would love to get that fast loading speed? No matter who you are, as long as you deal with Images, Imgfiber got your back!
⬇ Reduce image file sizes by up to 95% without losing quality! Supports all major formats: JPG, PNG, JPEG, GIF, SVG, and WebP. Works entirely in your browser—no uploads, no servers, just the power of your own device! Blazing fast compression—processes images as quickly as you drag and drop. Delivers results 2x better than competitors like OptImage, CompressX, TinyPNG, and Squoosh. Totally FREE with no file size or count limits - compress as many images as you want!
Social Proof? - I am gonna be honest with you! I don't have social proof! I've been too busy building cool tools like IMGFiber, Codeaway, QuickWrap entire year that i forgot they need Lovely users to have significant value to its existent. I've spent an year building great range of SaaS and had zero exposure to provide your with trusted by 40,000+ users around the world! Nah! I don't have that! that's why i am here!
I would geneuinly love for you to give ImgFiber a shot!
Check it out ImgFiber.com and let me know your thoughts!