{"adoption": {"forks": 243, "observed_at": "2026-08-28T04:08:07.022709+00:00", "stars": 3487}, "canonical_url": "https://ross.abutalabs.com/products/emacs-application-framework", "card": {"archived": false, "artifact_type": "framework", "description": "EAF, an extensible framework that revolutionizes the graphical capabilities of Emacs", "domain": ["developer-tools", "text-editors", "cross-platform"], "enriched": true, "function": ["gui", "pdf-viewer", "browser-extension", "video-processing", "plugin-system"], "health_score": 79, "homepage": null, "language": "Python", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["emacs-eaf/emacs-application-framework"], "name": "emacs-eaf/emacs-application-framework", "platform": ["python"], "pushed_at": "2026-08-23T13:41:02+00:00", "repo": "emacs-eaf/emacs-application-framework", "stars": 3487, "tags": ["emacs", "qt6", "graphical-applications", "pdf-viewer", "browser", "multimedia", "extensibility", "linux", "macos", "desktop"], "topics": ["emacs", "emacs-application-framework", "multimedia", "browser", "pdf-viewer", "file-manager", "rss-reader", "video-player", "eaf"], "urls": [], "use_cases": ["browse the web inside emacs", "view pdf files without leaving emacs", "play videos in emacs", "manage files graphically in emacs", "read rss feeds in emacs", "extend emacs with modern gui applications"], "what_it_is": "Emacs Application Framework (EAF) is an extensible framework that brings modern graphical capabilities to Emacs by bridging Emacs Lisp with Python, Qt6, and JavaScript. It ships a suite of applications including a browser, PDF viewer, video player, file manager, and RSS reader that run inside Emacs.", "when_to_avoid": ["you use emacs only in the terminal without graphical display support", "you want a lightweight setup and don't need graphical applications", "you don't use emacs at all"], "when_to_choose": ["you live in emacs and want graphical apps like browsers or pdf viewers embedded in it", "you want to extend emacs with python and qt6 instead of only emacs lisp", "you need multimedia capabilities that emacs lisp cannot provide"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/emacs-application-framework", "repo": "emacs-eaf/emacs-application-framework", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "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:08:07.022709+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.022709+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:36:07.790300+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37e0e5c1309e8423f24fb78fb4b89529d50fe1961af3954509000b14d3ebfac7", "fetched_at": "2026-08-28T04:08:07.022709+00:00", "kind": "readme", "missing": false, "url": "https://github.com/emacs-eaf/emacs-application-framework"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2992, "days_push": 10, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}