{"adoption": {"forks": 288, "observed_at": "2026-08-28T04:06:50.586133+00:00", "stars": 2421}, "canonical_url": "https://ross.abutalabs.com/products/nex3z-flowlayout", "card": {"archived": false, "artifact_type": "library", "description": "A flow layout for Android with auto-spacing.", "domain": ["mobile-development", "android-tools", "frontend"], "enriched": true, "function": ["ui-components", "mobile-framework"], "health_score": 34, "homepage": null, "language": "Java", "license": "Apache-2.0", "license_family": "permissive", "maturity": "stable", "member_repos": ["nex3z/FlowLayout"], "name": "nex3z/FlowLayout", "platform": [], "pushed_at": "2025-05-29T08:21:35+00:00", "repo": "nex3z/FlowLayout", "stars": 2421, "tags": ["flow-layout", "android-view", "layout", "java", "tag-layout", "android"], "topics": ["android-library", "flowlayout"], "urls": [], "use_cases": ["display tag chips that wrap to multiple rows", "evenly space views in a wrapping layout", "build a chip group with auto spacing on Android", "limit a wrapping layout to a maximum number of rows", "support right-to-left flow layouts", "align the last row of a wrapping layout"], "what_it_is": "A FlowLayout library for Android that lets child views wrap to the next row when space runs out, with automatic even spacing between children and rows. It is distributed via Gradle and configured through XML attributes.", "when_to_avoid": ["you are not building for Android", "you need a constraint-based or flexbox-style layout with alignment options beyond spacing", "you need Jetpack Compose layouts rather than XML views"], "when_to_choose": ["you need a wrap-around layout on Android with automatic or fixed child and row spacing", "you want RTL support and max-row limits in a flow layout", "you prefer a simple XML-configurable AndroidX or AppCompat view"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/nex3z-flowlayout", "repo": "nex3z/FlowLayout", "role": "main", "score": 34}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "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:50.586133+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:50.586133+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:33:03.817752+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b3b9f8d09a513d5f99b4037db5eb0e671bdc492c5d94fbd304c5ba325e7e0644", "fetched_at": "2026-08-28T04:06:50.586133+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nex3z/FlowLayout"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 24, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3529, "days_push": 461, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 34, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}