Skip to content

kwojc/sharp-image-proxy

 
 

Repository files navigation

sharp-image-proxy

An on the fly image optimization microservice.

I'm using this to dynamically resize, compress and serve images on my blog.

It's hosted on Google Cloud Run behind Cloudflare with the following page rule settings:

Screenshot from 2020-09-09 19-18-19

Run using Docker

docker run \
  -it --rm \
  -p 8080:8080 \
  --name sharp-image-proxy \
  docker.pkg.github.com/adamlacombe/sharp-image-proxy/sharp-image-proxy:latest

Features

  • Resize images proportionally.
  • Support for webp, avif, png, jpeg and tiff.

Options

  • url
  • width
  • height
  • format = webp | avif | png | jpeg | tiff
  • quality = 1 - 100 (default 80)

Example requests

  • /?url=https://via.placeholder.com/500&width=300
  • /?url=https://via.placeholder.com/500&width=300&format=webp
  • /?url=https://via.placeholder.com/500&width=300&format=webp&quality=50
  • /?url=https://via.placeholder.com/500&width=300&format=avif&quality=30

Run on Google Cloud

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 96.8%
  • Dockerfile 3.2%