{"adoption": {"forks": 51, "observed_at": "2026-08-28T04:04:54.740914+00:00", "stars": 1504}, "canonical_url": "https://ross.abutalabs.com/products/cuelume", "card": {"archived": false, "artifact_type": "library", "description": "Cuelume is a curated sound palette, not an audio engine. It gives buttons, links, toggles, and completed actions clear feedback without asking developers to design sounds themselves. Add an attribute, call bind(), done.", "domain": ["web-development", "frontend", "web-design"], "enriched": true, "function": ["audio-processing", "ui-components", "developer-tools"], "health_score": 78, "homepage": "https://cuelume.dev/", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["Danilaa1/cuelume"], "name": "Danilaa1/cuelume", "platform": ["browser"], "pushed_at": "2026-08-04T11:55:06+00:00", "repo": "Danilaa1/cuelume", "stars": 1504, "tags": ["web-audio", "sound-effects", "interaction-feedback", "ui-sounds", "synthesized-audio", "esm-only", "zero-dependencies", "micro-interactions", "ux-feedback", "audio", "nodejs", "web-server"], "topics": [], "urls": [], "use_cases": ["add click and hover sounds to buttons and links", "play a success sound after a clipboard copy or form submission", "give toggles and switches audible feedback", "add UI sound effects without designing or downloading audio files", "enable sound preferences like volume and mute in my app", "add micro-interaction audio feedback to a web app"], "what_it_is": "Cuelume is a tiny TypeScript library providing seventeen curated, synthesized interaction sounds for web interfaces via the Web Audio API, with no audio files and zero runtime dependencies. Developers add data attributes to markup and call bind(), or play sounds imperatively for non-DOM moments like success and error states.", "when_to_avoid": ["you need a full audio engine, custom sound design, or music/speech playback", "you need CommonJS require() support or legacy browser compatibility", "you need server-side sound generation - playback only runs in the browser", "you want the library to persist user sound preferences for you"], "when_to_choose": ["you want polished, pre-designed interaction sounds without audio assets or an audio engine", "you need a tiny (~2kb), zero-dependency, ESM-only browser library", "you want declarative data-attribute binding plus imperative playback for async events", "your app manages its own sound settings and just needs setEnabled/setVolume hooks"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/cuelume", "repo": "Danilaa1/cuelume", "role": "main", "score": 56}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "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:04:54.740914+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:54.740914+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:32:43.969249+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c380fb5b74945c2e8c388a7a01d3bf1313ec25fba9c46a66db29c541fa02c560", "fetched_at": "2026-08-28T04:04:54.740914+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Danilaa1/cuelume"}, {"content_hash": "ee14f57bbf3fce1b45e0cb164e59bcae612620a8a36d3d3ff3fe78381cad0f36", "fetched_at": "2026-08-29T11:37:29.056727+00:00", "kind": "homepage", "missing": false, "url": "https://cuelume.dev/"}, {"content_hash": "b2f257e7c69a4e0e17811caa9ff0efe3e46550d3a361080e6fa70c28de10468b", "fetched_at": "2026-08-29T11:37:29.066022+00:00", "kind": "site_page", "missing": false, "url": "https://cuelume.dev/docs"}, {"content_hash": "fc6de18958443266689e26a269f2a961c3acf12d237f98e4bce5a31de27bdeec", "fetched_at": "2026-08-29T11:37:29.068006+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/cuelume"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 96, "longevity": 4, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "young"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 62, "days_push": 29, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 56, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}