{"adoption": {"forks": 55, "observed_at": "2026-08-28T04:05:00.150646+00:00", "stars": 1537}, "canonical_url": "https://ross.abutalabs.com/products/fast-average-color", "card": {"archived": false, "artifact_type": "library", "description": "🍏🍊🍅 Fast Average Color", "domain": ["image-processing", "web-development", "frontend"], "enriched": true, "function": ["image-processing", "graphics"], "health_score": 83, "homepage": "https://fast-average-color.github.io/examples/background.html", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["fast-average-color/fast-average-color"], "name": "fast-average-color/fast-average-color", "platform": ["browser"], "pushed_at": "2026-04-05T22:51:48+00:00", "repo": "fast-average-color/fast-average-color", "stars": 1537, "tags": ["average-color", "dominant-color", "canvas", "color-extraction", "typescript", "tree-shakeable", "nodejs", "web-server"], "topics": ["js", "average-color", "color", "fast", "canvas", "htmlimageelement", "htmlvideoelement", "gradient", "box-shadow", "video", "ts", "imagebitmap", "offscreencanvas"], "urls": [], "use_cases": ["get the average color of an image to tint a page background", "extract dominant color from a video frame", "compute average color from a canvas or OffscreenCanvas", "get average color from an image URL or base64 string", "ignore specific colors (like white backgrounds) when averaging", "calculate average color of a specific region of an image", "use in a web worker for non-blocking color extraction"], "what_it_is": "A small, fast TypeScript library that calculates the average or dominant color of images, videos, canvases, and raw pixel arrays in the browser. It supports multiple algorithms, transparency handling, web workers, and partial-region color extraction.", "when_to_avoid": ["you need full image processing or manipulation, not just color stats", "you need dominant color clustering like k-means with palette generation", "you need server-side processing without a browser environment (use the companion Node.js package instead)"], "when_to_choose": ["you need fast average or dominant color extraction in the browser", "you want a tiny, tree-shakeable dependency with no heavy image library", "you need to work with videos, canvases, ImageBitmaps, or raw pixel arrays", "you need transparency-aware color averaging"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/fast-average-color", "repo": "fast-average-color/fast-average-color", "role": "main", "score": 70}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "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:05:00.150646+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.150646+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:31:00.734178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "56e2694681c5d852bf6d722e3bde9588a8da9365f577d1d4f1fcb369e5ec796b", "fetched_at": "2026-08-28T04:05:00.150646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fast-average-color/fast-average-color"}, {"content_hash": "d75f7cd43d6ef8f443c979dc4c625fa4c30a197c34e5a98eb5c0d8d8130e572a", "fetched_at": "2026-08-29T11:32:57.067393+00:00", "kind": "homepage", "missing": false, "url": "https://fast-average-color.github.io/examples/background.html"}, {"content_hash": "497f422c6a2b5d78a30cad712d70640b845bdb34503c7d2d3ec239dbe82fdff8", "fetched_at": "2026-08-29T11:32:57.076998+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/fast-average-color"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 75, "longevity": 100, "rhythm": 46}, "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": 3132, "days_push": 150, "days_rel": 150, "gap_med": 190.5, "n_releases_24m": 3}, "score": 70, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}