{"adoption": {"forks": 451, "observed_at": "2026-08-28T04:09:09.468880+00:00", "stars": 5082}, "canonical_url": "https://ross.abutalabs.com/products/sharpemu", "card": {"archived": false, "artifact_type": "application", "description": "An experimental PlayStation 5 emulator for Windows, Linux and macOS.", "domain": ["gaming-tools", "simulation", "cross-platform"], "enriched": true, "function": ["simulation", "graphics", "reverse-engineering"], "health_score": 100, "homepage": "https://sharpemu.app", "language": "C#", "license": "GPL-2.0", "license_family": "copyleft", "maturity": "experimental", "member_repos": ["sharpemu/sharpemu"], "name": "sharpemu/sharpemu", "platform": ["windows", "cli"], "pushed_at": "2026-08-25T20:32:58+00:00", "repo": "sharpemu/sharpemu", "stars": 5082, "tags": ["ps5-emulator", "console-emulation", "csharp", "vulkan", "game-compatibility", "linux", "macos", "desktop"], "topics": ["csharp", "emulation", "emulator", "playstation5", "ps5", "windows", "linux", "macos"], "urls": [], "use_cases": ["run PS5 games on PC", "emulate PlayStation 5 on Windows, Linux or macOS", "study PS5 system architecture and reverse engineering", "test how far PS5 game dumps boot in an open-source emulator", "research console emulation in C#"], "what_it_is": "SharpEmu is an experimental PlayStation 5 emulator written from scratch in C#, distributed as a single binary that works as both a desktop app with a game library and a command-line runner. It is in early development, focused on accuracy and infrastructure rather than game compatibility, with only a handful of titles reaching gameplay.", "when_to_avoid": ["you want to actually play your PS5 game library today - most titles don't run", "you need PS4 emulation - use ShadPS4 instead", "you need a stable, mature emulator with broad compatibility and audio support"], "when_to_choose": ["you want an open-source, research-oriented PS5 emulator to experiment with or contribute to", "you want to follow per-game compatibility progress with exact build reports", "you want a single binary that offers both a GUI library and CLI log capture"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/sharpemu", "repo": "sharpemu/sharpemu", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "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:09:09.468880+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.468880+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:02:34.116178+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0cdcde23a1e90b8c4e30e416ffe5040812e83381a73b507bcfdb0573f9c03140", "fetched_at": "2026-08-28T04:09:09.468880+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sharpemu/sharpemu"}, {"content_hash": "a9ae063e4f62943136ea57bb2ba51a67d9e7a7ae8677d754e1461b7dba74e073", "fetched_at": "2026-08-29T08:57:21.614833+00:00", "kind": "homepage", "missing": false, "url": "https://sharpemu.app"}, {"content_hash": "179e330eb001ddd0470b65c9b2d904ecea622a946f95f593cad3820b104baa23", "fetched_at": "2026-08-29T08:57:21.623727+00:00", "kind": "site_page", "missing": false, "url": "https://sharpemu.app/faq"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 12, "rhythm": 86}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": ["young"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 175, "days_push": 8, "days_rel": 16, "gap_med": 0, "n_releases_24m": 130}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}