{"adoption": {"forks": 236, "observed_at": "2026-08-28T04:07:18.733070+00:00", "stars": 2768}, "canonical_url": "https://ross.abutalabs.com/products/square-flow", "card": {"archived": true, "artifact_type": "library", "description": "Name UI states, navigate between them, remember where you've been.", "domain": ["mobile-development", "android-tools"], "enriched": true, "function": ["state-management", "routing"], "health_score": 10, "homepage": null, "language": "Java", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["square/flow"], "name": "square/flow", "platform": ["jvm"], "pushed_at": "2023-03-19T08:26:29+00:00", "repo": "square/flow", "stars": 2768, "tags": ["navigation", "android-activity", "back-stack", "deprecated", "square", "android"], "topics": [], "urls": [], "use_cases": ["manage android activity navigation with named ui states", "handle back button navigation without surprising users", "restore ui state and history after process death", "share and dispose resources per screen with setup and teardown hooks", "manage master-detail views and dialogs in android apps"], "what_it_is": "Flow is a Java library for Android that names UI states as immutable key objects, navigates between them, and preserves navigation history across configuration changes and process death. It is deprecated; Square recommends its successor, Square Workflow.", "when_to_avoid": ["starting any new Android project - it is deprecated", "you want an actively maintained navigation solution - use Square Workflow instead", "you need cross-platform or Compose-based navigation"], "when_to_choose": ["maintaining a legacy Android app already built on Flow", "you need simple key-based navigation history on Android and cannot adopt Workflow"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/square-flow", "repo": "square/flow", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "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:07:18.733070+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:18.733070+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T08:16:42.757616+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6e128addfec13150e3f387bdfef312c8aac82ae1d28671354207479bd06afa60", "fetched_at": "2026-08-28T04:07:18.733070+00:00", "kind": "readme", "missing": false, "url": "https://github.com/square/flow"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4738, "days_push": 1263, "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}}