{"adoption": {"forks": 260, "observed_at": "2026-08-28T04:06:37.913265+00:00", "stars": 2333}, "canonical_url": "https://ross.abutalabs.com/products/richpath", "card": {"archived": true, "artifact_type": "library", "description": "💪 Rich Android Path. 🤡 Draw as you want. 🎉 Animate much as you can.", "domain": ["mobile-development", "graphics"], "enriched": true, "function": ["animation", "ui-components", "graphics"], "health_score": 10, "homepage": "https://twitter.com/a_tarek360", "language": "Kotlin", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["tarek360/RichPath"], "name": "tarek360/RichPath", "platform": ["jvm"], "pushed_at": "2021-10-08T09:59:51+00:00", "repo": "tarek360/RichPath", "stars": 2333, "tags": ["vector-drawable", "path-animation", "path-morphing", "svg", "android-ui", "android"], "topics": ["android", "vector-drawable", "animation", "path", "vector", "svg", "icons", "path-animation"], "urls": [], "use_cases": ["animate vector drawable paths on android", "morph one svg path shape into another", "animate trimPathStart and trimPathEnd of an icon", "animate fillColor and strokeColor of individual paths", "create animated icons and illustrations in android apps"], "what_it_is": "An Android library for drawing and animating vector drawable paths, supporting path morphing and animation of any path attribute via RichPathAnimator. Maintenance is paused until further notice.", "when_to_avoid": ["you need a actively maintained library with ongoing support", "you target platforms other than Android", "you need Compose-based or Jetpack Compose path animation"], "when_to_choose": ["you need fine-grained animation control over individual paths in a VectorDrawable", "you want simple path morphing animations with a fluent animator API", "your app supports older Android APIs (14+)"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/richpath", "repo": "tarek360/RichPath", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "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:06:37.913265+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.913265+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:37:55.891889+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fcdf20db91c9f527ed114649fbf2afeb580adfc8321efb8018138e5686fa274e", "fetched_at": "2026-08-28T04:06:37.913265+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tarek360/RichPath"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["archived", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3344, "days_push": 1790, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}