{"adoption": {"forks": 128, "observed_at": "2026-08-28T04:07:15.621040+00:00", "stars": 2724}, "canonical_url": "https://ross.abutalabs.com/products/agersant-polaris", "card": {"archived": false, "artifact_type": "service", "description": "Polaris is a music streaming application, designed to let you enjoy your music collection from any computer or mobile device.", "domain": ["self-hosted", "media", "web-development", "cross-platform"], "enriched": true, "function": ["http-server", "audio-processing", "self-hosted", "search-engine", "auth"], "health_score": 88, "homepage": null, "language": "Rust", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["agersant/polaris"], "name": "agersant/polaris", "platform": ["windows", "bsd", "self-hosted", "rust"], "pushed_at": "2026-05-08T02:20:14+00:00", "repo": "agersant/polaris", "stars": 2724, "tags": ["music-streaming", "music-server", "audio-player", "web-ui", "media-server", "subsonic-alternative", "audio", "linux", "docker", "web-server", "android", "ios"], "topics": [], "urls": [], "use_cases": ["stream my music collection from my own server", "self-host a music server for flac and mp3 files", "listen to my home music library on my phone", "host a music library with 100000+ songs", "browse music by album artist and genre in a web ui", "set up multi-user music streaming with playlists"], "what_it_is": "Polaris is a self-hosted music streaming server written in Rust that serves your personal music collection to web browsers and mobile apps. It supports large libraries, multiple users with playlists, metadata browsing, and powerful search.", "when_to_avoid": ["you want to stream podcasts or radio rather than a personal music library", "you need Subsonic API compatibility with existing third-party clients", "you want a hosted cloud music service without managing a server"], "when_to_choose": ["you want a free, open-source, self-hosted music server with no premium tier", "you have a very large music collection and need fast performance", "you want easy deployment on Windows, Linux, BSD, or Docker", "you want native mobile clients for Android and iOS"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/agersant-polaris", "repo": "agersant/polaris", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "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:07:15.621040+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:15.621040+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:14:50.821219+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "472d9e3b02d0131323825a5538bb8355134c5a3de2378edb6d8956b45b68c92a", "fetched_at": "2026-08-28T04:07:15.621040+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agersant/polaris"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 81, "longevity": 100, "rhythm": 59}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3671, "days_push": 118, "days_rel": 118, "gap_med": 128, "n_releases_24m": 4}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}