{"adoption": {"forks": 6019, "observed_at": "2026-08-28T04:11:58.569897+00:00", "stars": 33953}, "canonical_url": "https://ross.abutalabs.com/products/learngitbranching", "card": {"archived": false, "artifact_type": "learning-resource", "description": "An interactive git visualization and tutorial. Aspiring students of git can use this app to educate and challenge themselves towards mastery of git!", "domain": ["education", "version-control", "developer-tools", "tutorials"], "enriched": true, "function": ["data-visualization", "developer-tools", "version-control"], "health_score": 80, "homepage": "https://pcottle.github.io/learnGitBranching/", "language": "JavaScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["pcottle/learnGitBranching"], "name": "pcottle/learnGitBranching", "platform": ["browser"], "pushed_at": "2026-08-25T01:40:51+00:00", "repo": "pcottle/learnGitBranching", "stars": 33953, "tags": ["git", "interactive-tutorial", "visualization", "sandbox", "game-based-learning", "education", "web", "javascript"], "topics": [], "urls": [], "use_cases": ["learn git branching and rebasing interactively", "visualize how git commands affect the commit tree", "practice git challenges with gamified levels", "teach git concepts to beginners in workshops", "experiment with git commands in a safe sandbox", "demonstrate remote repository workflows like clone and push"], "what_it_is": "An interactive web application that visualizes git commit trees as you type commands, combined with tutorials and challenge levels. It serves as both a sandbox for experimenting with git and a gamified learning tool for mastering version control concepts.", "when_to_avoid": ["you need an actual git client to manage real repositories", "you are looking for advanced git internals beyond what the levels cover", "you need offline or CLI-based learning without a browser"], "when_to_choose": ["you are a beginner struggling to understand git branches, rebasing, or remotes", "you want a visual, hands-on alternative to reading git documentation", "you need a teaching tool for git workshops or courses", "you want to safely experiment with git commands without a real repository"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/learngitbranching", "repo": "pcottle/learnGitBranching", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "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:11:58.569897+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:11:58.569897+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:27:55.737836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5f91bd467fa70087ea9e6ffd41066a0b6beacd990fc2c90f64e92ba9d9dfc576", "fetched_at": "2026-08-28T04:11:58.569897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pcottle/learnGitBranching"}, {"content_hash": "225b93a890e43c293819634e4bb6aa8cb127ef3e4d3bfdcdbe4c75ab1b34da06", "fetched_at": "2026-08-29T07:48:45.448810+00:00", "kind": "homepage", "missing": false, "url": "https://pcottle.github.io/learnGitBranching/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "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": 5133, "days_push": 9, "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}}