Images
How image hosting works at pico
There are two ways to upload images to pico: through prose.sh or pgs.sh. They both share similar features to each other, they just serve different purposes and have different storage limits.
Read our Code of Content section to understand what is and isn't allowed on our platform
Features #
- Images can be web optimized
- API to modify images on-the-fly (e.g. dimensions, quality, orientation)
What it is #
- A place to host public images
- A place to host your blog images
- We moderate all images
What it isn't #
- Not a general cloud photo storage solution
- Not a place to backup or store your photos
- Not a place illegal content, nudity, or adult sexual content
Publish your images with one command #
When your image is ready to be published, copy the file to our server with a familiar command:
1rsync *.jpg prose.sh:/
We'll either create or update the images for you.
Or if you are using pgs.sh:
1rsync *.jpg pgs.sh:/imgs
Web optimized #
We do our best to web optimize the images being delivered from pico to users. We use imageproxy to serve images from our object store.
By default, images served from prose.sh are web optimized, meaning we strip exif data, convert images to webp, and reduce the quality.
We do not automatically optimize images from pgs.sh because we try to subscribe to the principle of least surprise.
What file types are supported? #
jpg
png
gif
webp
svg
Image manipulation #
Our services support an API to manipulate images on-the-fly! Listed below are all the supported options:
1[!profile](/profile.jpg/s:500) # downscale width, preserve aspect ratio
2
3[!profile](/profile.jpg/s::500) # downscale height, preserve aspect ratio
4
5[!profile](/profile.jpg/s:500:500) # downscale width and height
6
7[!profile](/profile.jpg/q:50) # set quality to 50 (scale is 1-100)
8
9[!profile](/profile.jpg/rt:90) # rotate image (choices: 90, 180, 270)
10
11[!profile](/profile.jpg/ext:webp) # convert image to webp