{"adoption": {"forks": 162, "observed_at": "2026-08-28T04:07:00.220911+00:00", "stars": 2545}, "canonical_url": "https://ross.abutalabs.com/products/pyvim", "card": {"archived": false, "artifact_type": "application", "description": "Pure Python Vim clone.", "domain": ["text-editors", "developer-tools"], "enriched": true, "function": ["editor", "cli"], "health_score": 20, "homepage": null, "language": "Python", "license": "BSD-3-Clause", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["prompt-toolkit/pyvim"], "name": "prompt-toolkit/pyvim", "platform": ["python", "cli", "cross-platform"], "pushed_at": "2024-07-24T03:04:09+00:00", "repo": "prompt-toolkit/pyvim", "stars": 2545, "tags": ["vim-clone", "terminal-editor", "prompt-toolkit", "syntax-highlighting", "pure-python", "command-line"], "topics": [], "urls": [], "use_cases": ["edit files in a terminal with vim keybindings", "try a vim clone written entirely in python", "use an editor with syntax highlighting and splits without installing vim", "get python autocompletion and linting while editing", "customize an editor using python instead of vimscript"], "what_it_is": "pyvim is a pure Python implementation of the Vim editor built on prompt_toolkit, with no C extensions. It offers Vi key bindings, syntax highlighting via Pygments, splits and tab pages, and Python autocompletion with Jedi.", "when_to_avoid": ["you need full Vim/Neovim compatibility or plugin ecosystem", "you need maximum editing performance for very large files", "you rely on advanced vimscript configurations"], "when_to_choose": ["you want a vim-like editor that is pure Python and easy to hack on", "you need a lightweight terminal editor with Pygments syntax highlighting", "you want to prototype editor features or script the editor in Python"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/pyvim", "repo": "prompt-toolkit/pyvim", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "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:00.220911+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:00.220911+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:24:37.017538+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3a7ea6d306462d3834d2a75ff9dd6d552ec193b8ca1f0cdb1f4955028d8ac1c2", "fetched_at": "2026-08-28T04:07:00.220911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/prompt-toolkit/pyvim"}], "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": 4239, "days_push": 770, "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}}