Я занимаюсь разработкой аналогичного сервиса Imgix и использую Sharp.
Но сжатие Webg без потерь Imgix дает лучшие результаты, чем Sharp.Одно и то же изображение с такой же шириной и высотой в Imgix имеет 453 КБ и Sharp 1,3 МБ.
Некоторые рекомендации по увеличению сжатия без потери качества?
Код, который я использую:
https.get(url, function (response) {
let transform = sharp().toFormat('webp').resize(width, height);
return response.pipe(transform).webp({lossless:true}).pipe(res);
});