Skip to content
SPECIFICTION
Get listed

picfit

github.com

LinuxAPISelf-hosted
Visit github.com
Spec score 7.2 #22 of 28 in Photo Resizing Software

Spec sheet

Purpose
picfit is a reusable Go server for manipulating images, including resizing and thumbnail generation.Read 10 Oct 2026 · github.com
Deployment
The README recommends running picfit behind a CDN for larger applications or Varnish for smaller ones.Read 10 Oct 2026 · github.com
Integrations
The README documents Varnish or a CDN for caching, Ansible for provisioning, Sentry with Raven for error reporting, and a Go client library.Read 4 Oct 2026 · github.com
Founded
2014Read 28 Sep 2026 · github.com
Access controls
The README describes restricting generated image sizes and maximum source dimensions, and restricting selected endpoints by IP address.Read 10 Oct 2026 · github.com
Client and production use
The README lists a Go client library and names Ulule, a European crowdfunding platform, as using picfit in production.Read 10 Oct 2026 · github.com
Deployment model
The server acts as a proxy to a storage engine and is intended to run behind an HTTP cache system.Read 4 Oct 2026 · github.com
HTTP methods
The service provides display, redirect, and get methods; display stores generated images asynchronously while redirect and get generate synchronously.Read 10 Oct 2026 · github.com
Image formats
The README lists JPEG, PNG, GIF, BMP, and WebP as supported formats.Read 10 Oct 2026 · github.com
Image operations
Supported operations include resize, thumbnail, flip, rotate, overlay with a flat image, and blur effect.Read 10 Oct 2026 · github.com
Installation
The README documents building a binary with Go and git and provides a Docker build integration; it says Debian packages will be provided when the project is stable.Read 10 Oct 2026 · github.com
Key-value integrations
Key-value options include in-memory cache, Redis, Redis Cluster, and Redis with replica round-robin reads.Read 10 Oct 2026 · github.com
Key-value stores
Generated image keys can use an in-memory cache, Redis, Redis Cluster, or Redis replicas with round-robin reads.Read 4 Oct 2026 · github.com
Observability
Logging to stderr and stdout is enabled by default, and Sentry error reporting can be configured.Read 10 Oct 2026 · github.com
Operational limits
The server can limit source image dimensions and the number of concurrent resize, thumbnail, and fit operations.Read 4 Oct 2026 · github.com
Proxy
It acts as a proxy to a storage engine and is intended to run behind an HTTP cache such as Varnish.Read 10 Oct 2026 · github.com
Request security
Optional request signing uses an HMAC-SHA1 digest of the client key and query string when a secret_key is configured.Read 10 Oct 2026 · github.com
Storage backends
Storage options include a filesystem, Amazon S3, DigitalOcean S3, Google Cloud Storage, and HTTP-loading variants.Read 4 Oct 2026 · github.com
Storage integrations
Storage backends listed include filesystem, Amazon S3, DigitalOcean S3, Google Cloud Storage, and HTTP-based filesystem or S3 sources.Read 10 Oct 2026 · github.com
Support and contributions
The README invites users to send patches or improvements and points to the project's GitHub issues for its roadmap.Read 4 Oct 2026 · github.com
Upload safety
Uploads are disabled by default, and the README warns that exposing the upload endpoint without a security mechanism is unsafe.Read 10 Oct 2026 · github.com
Upload security
Image upload is disabled by default, and the README warns that exposing the upload endpoint without a security mechanism is unsafe.Read 4 Oct 2026 · github.com
Use in production
The README lists Ulule, described there as a European crowdfunding platform, as using picfit in production.Read 4 Oct 2026 · github.com

Where Specifiction places it

Alternatives to picfitAll alternatives →