{"adoption": {"forks": 85, "observed_at": "2026-08-28T04:03:24.924933+00:00", "stars": 1057}, "canonical_url": "https://ross.abutalabs.com/products/perspective-el", "card": {"archived": false, "artifact_type": "plugin", "description": "Perspectives for Emacs.", "domain": ["developer-tools", "text-editors"], "enriched": true, "function": ["developer-tools", "workflow-automation"], "health_score": 76, "homepage": null, "language": "Emacs Lisp", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["nex3/perspective-el"], "name": "nex3/perspective-el", "platform": ["cross-platform"], "pushed_at": "2026-07-17T18:54:25+00:00", "repo": "nex3/perspective-el", "stars": 1057, "tags": ["emacs-lisp", "workspaces", "window-management", "buffer-management", "session-persistence", "emacs"], "topics": [], "urls": [], "use_cases": ["manage multiple projects in emacs without mixing buffers", "keep separate buffer lists per project in emacs", "save and restore emacs window layouts", "organize emacs workspaces like virtual desktops", "isolate shells and repls per project in emacs", "switch between named emacs workspaces"], "what_it_is": "Perspective is an Emacs package that provides multiple named workspaces (perspectives), each with its own buffer list and window layout, similar to virtual desktops in window managers. It supports saving session state to disk and integrates well with project management packages like Projectile.", "when_to_avoid": ["you use a different emacs workspace package like perspective from perspective-el forks, eyebrowse, or tab-bar", "you only ever work on one project at a time", "you prefer emacs built-in tab-bar/tab-line workspaces"], "when_to_choose": ["you work on many projects in a single long-running emacs session", "you want per-project buffer isolation and window layouts", "you use projectile and want complementary workspace management"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/perspective-el", "repo": "nex3/perspective-el", "role": "main", "score": 74}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "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:24.924933+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.924933+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:57:59.477866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6dd34604eba1e24c9283e5dee1c9c362b4711cb40b306ffd9d6cc146508d11e0", "fetched_at": "2026-08-28T04:03:24.924933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3/perspective-el"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 93, "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": 6752, "days_push": 47, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 74, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}