{"adoption": {"forks": 184, "observed_at": "2026-08-28T04:03:18.862780+00:00", "stars": 1034}, "canonical_url": "https://ross.abutalabs.com/products/cherrymusic", "card": {"archived": false, "artifact_type": "service", "description": "Stream your own music collection to all your devices! The easy to use free and open-source music streaming server.", "domain": ["media", "self-hosted", "web-development"], "enriched": true, "function": ["http-server", "search-engine", "auth", "streaming"], "health_score": 20, "homepage": "http://www.fomori.org/cherrymusic", "language": "Python", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["devsnd/cherrymusic"], "name": "devsnd/cherrymusic", "platform": ["python", "self-hosted", "cross-platform"], "pushed_at": "2024-06-26T10:13:23+00:00", "repo": "devsnd/cherrymusic", "stars": 1034, "tags": ["music-streaming", "audio", "cherrypy", "jplayer", "media-server", "playlist-sharing", "web-server"], "topics": [], "urls": [], "use_cases": ["stream my own music collection to my phone and laptop", "self-host a music server for my family", "share playlists with friends over the web", "play my home music library from a browser remotely", "set up a multi-user music streaming server with HTTPS"], "what_it_is": "CherryMusic is a self-hosted music streaming server built on CherryPy and jPlayer that lets users stream their personal music collection to any device with an HTML5 browser. It provides a web interface for browsing, searching, and playing music, with playlist sharing and multi-user support.", "when_to_avoid": ["you want a modern actively developed project with frequent updates", "you need transcoding or native mobile apps", "you require support for the latest Python versions and modern web frameworks", "you want advanced features like gapless playback or smart recommendations"], "when_to_choose": ["you want to stream your own local music files without third-party services", "you need a lightweight Python-based server with a simple setup", "you want browser-based playback on any HTML5 device", "you need multiple user accounts and playlist sharing"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/cherrymusic", "repo": "devsnd/cherrymusic", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "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:03:18.862780+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.862780+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:06:32.661651+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "069210ceb9682440150aee7b387df71f44740bd777194fd8c2957afc17874220", "fetched_at": "2026-08-28T04:03:18.862780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/devsnd/cherrymusic"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5162, "days_push": 798, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}