{"adoption": {"forks": 511, "observed_at": "2026-08-28T04:08:31.749230+00:00", "stars": 3986}, "canonical_url": "https://ross.abutalabs.com/products/imageproxy", "card": {"archived": false, "artifact_type": "service", "description": "A caching, resizing image proxy written in Go", "domain": ["web-development", "media", "self-hosted", "image-processing"], "enriched": true, "function": ["image-processing", "caching", "http-server", "proxy"], "health_score": 91, "homepage": null, "language": "Go", "license": "Apache-2.0", "license_family": "permissive", "maturity": "stable", "member_repos": ["willnorris/imageproxy"], "name": "willnorris/imageproxy", "platform": ["windows", "self-hosted", "go", "cross-platform"], "pushed_at": "2026-08-10T03:05:39+00:00", "repo": "willnorris/imageproxy", "stars": 3986, "tags": ["image-proxy", "image-resizing", "image-caching", "hmac-signing", "ssl-proxy", "go-server", "linux", "macos", "docker"], "topics": ["imageproxy"], "urls": [], "use_cases": ["dynamically resize images on my website", "self-hosted alternative to Jetpack Photon", "SSL proxy for remote images like camo", "cache and serve resized images from S3", "crop and rotate images via URL parameters", "serve webp or animated gifs through a proxy"], "what_it_is": "A caching image proxy server written in Go that resizes, crops, and rotates remote images on the fly via URL options. It supports request signing, host allowlists, and multiple cache backends including memory, disk, S3, GCS, Azure Storage, and Redis.", "when_to_avoid": ["you need advanced image editing beyond resize, crop, and rotate", "you need webp encoding (only decoding is supported)", "you want a full image processing pipeline or CDN", "you prefer a managed image transformation service"], "when_to_choose": ["you need on-the-fly image resizing with caching for a website", "you want a pure-Go, easily deployable image proxy", "you need signed image URLs to prevent abuse", "you want pluggable cache backends like Redis or cloud storage"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/imageproxy", "repo": "willnorris/imageproxy", "role": "main", "score": 73}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:31.749230+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:24:14.280149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "57e8f60a8b4b3d2d8f8b935bb2796a2a85da835c400876fb830d557a53e70065", "fetched_at": "2026-08-28T04:08:31.749230+00:00", "kind": "readme", "missing": false, "url": "https://github.com/willnorris/imageproxy"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 28}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4653, "days_push": 23, "days_rel": 430, "gap_med": 72, "n_releases_24m": 2}, "score": 73, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}