{"adoption": {"forks": 74, "observed_at": "2026-08-28T04:03:13.565048+00:00", "stars": 1013}, "canonical_url": "https://ross.abutalabs.com/products/blender-wiggle-2", "card": {"archived": false, "artifact_type": "plugin", "description": "Rewrite of blender-wiggle with new features and physics", "domain": ["graphics", "media"], "enriched": true, "function": ["simulation", "animation"], "health_score": 22, "homepage": null, "language": "Python", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["shteeve3d/blender-wiggle-2"], "name": "shteeve3d/blender-wiggle-2", "platform": ["cross-platform", "python"], "pushed_at": "2024-04-18T22:49:26+00:00", "repo": "shteeve3d/blender-wiggle-2", "stars": 1013, "tags": ["blender-addon", "wiggle-bones", "secondary-animation", "physics-simulation", "3d-animation", "armature", "keyframe-baking", "physics", "game-development", "blender"], "topics": [], "urls": [], "use_cases": ["add jiggle physics to character bones in Blender", "simulate ropes and chains with bones", "make hair, tails, or accessories react to motion", "bake bone physics simulation into keyframes", "create seamless looping wiggle animation", "pin bones to targets while others react"], "what_it_is": "Wiggle 2 is a Blender add-on that adds physics-driven secondary motion to armature bones, a ground-up rewrite of the original wiggle bones add-on. It supports pinning, mesh collision, library overrides, and one-click baking of wiggle simulation into keyframes.", "when_to_avoid": ["you need rigid body or cloth simulation rather than bone wiggle", "you are not using Blender", "you need GPU-accelerated or real-time game engine physics"], "when_to_choose": ["you need lightweight secondary motion without a full physics engine", "you want bone collision with meshes and friction/bounce control", "you work with linked libraries and need overrides support", "you want quick baking of simulation to keyframes for rendering"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/blender-wiggle-2", "repo": "shteeve3d/blender-wiggle-2", "role": "main", "score": 21}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "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:13.565048+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:13.565048+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:11:41.717941+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "08934bcfb301dd5711bb7baf34fdc43484bd3a888ed5d05587054db3afc5a29e", "fetched_at": "2026-08-28T04:03:13.565048+00:00", "kind": "readme", "missing": false, "url": "https://github.com/shteeve3d/blender-wiggle-2"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 91, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1278, "days_push": 867, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 21, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}