{"adoption": {"forks": 102, "observed_at": "2026-08-28T04:05:05.297881+00:00", "stars": 1569}, "canonical_url": "https://ross.abutalabs.com/products/edgeflow", "card": {"archived": false, "artifact_type": "plugin", "description": "Blender tools for working with edgeloops", "domain": ["graphics", "cross-platform"], "enriched": true, "function": ["graphics", "developer-tools"], "health_score": 37, "homepage": null, "language": "Python", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["BenjaminSauder/EdgeFlow"], "name": "BenjaminSauder/EdgeFlow", "platform": ["cross-platform", "python"], "pushed_at": "2025-05-11T11:30:59+00:00", "repo": "BenjaminSauder/EdgeFlow", "stars": 1569, "tags": ["blender-addon", "3d-modeling", "edgeloop", "mesh-editing", "hard-surface", "game-development"], "topics": [], "urls": [], "use_cases": ["smooth edgeloops on curved meshes in blender", "set edge flow like in other 3d applications", "fix bulging edge loops around corners", "blend edge loop smoothing with tension and iterations controls", "relax vertex loops to respect surrounding geometry flow", "hard surface modeling cleanup in blender"], "what_it_is": "A Blender add-on providing operators for editing edgeloops on curved meshes, most notably a Set Flow tool that smooths edge loops via spline interpolation. It integrates into Blender's Mesh Edge/Vertex menus and viewport context menus.", "when_to_avoid": ["you need general mesh editing beyond edgeloop operations", "you work in 3D software other than Blender", "you need guaranteed long-term maintenance, as the author notes limited availability"], "when_to_choose": ["you model curved or hard-surface meshes in Blender and need Maya-style edge flow tools", "you want spline-based edgeloop smoothing with fine control over tension, iterations, and blend ranges", "you use Blender 3.5 or newer and want a free GPL-licensed addon"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/edgeflow", "repo": "BenjaminSauder/EdgeFlow", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "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:05:05.297881+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:05.297881+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:58:34.720719+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d750eaabd9c21ef73c89666a5a40c8ceec72e147c3367a6fe1775db023f64f32", "fetched_at": "2026-08-28T04:05:05.297881+00:00", "kind": "readme", "missing": false, "url": "https://github.com/BenjaminSauder/EdgeFlow"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 21, "longevity": 100, "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": 2919, "days_push": 479, "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}}