{"adoption": {"forks": 509, "observed_at": "2026-08-28T04:05:06.695912+00:00", "stars": 1578}, "canonical_url": "https://ross.abutalabs.com/products/neat-python", "card": {"archived": false, "artifact_type": "library", "description": "Python implementation of the NEAT neuroevolution algorithm", "domain": ["machine-learning", "artificial-intelligence"], "enriched": true, "function": ["machine-learning"], "health_score": 88, "homepage": null, "language": "Python", "license": "BSD-3-Clause", "license_family": "permissive", "maturity": "active", "member_repos": ["CodeReclaimers/neat-python"], "name": "CodeReclaimers/neat-python", "platform": ["python"], "pushed_at": "2026-05-23T10:31:08+00:00", "repo": "CodeReclaimers/neat-python", "stars": 1578, "tags": ["neuroevolution", "neat", "genetic-algorithm", "evolutionary-algorithm", "neural-networks", "pure-python"], "topics": ["neuroevolution", "python"], "urls": [], "use_cases": ["evolve neural network topologies with neuroevolution", "train neural networks using a genetic algorithm instead of backpropagation", "run NEAT experiments for reinforcement learning or control tasks", "evolve recurrent neural networks with CTRNN", "learn how the NEAT algorithm works in Python", "benchmark evolutionary algorithms on custom fitness functions"], "what_it_is": "A pure-Python implementation of NEAT (NeuroEvolution of Augmenting Topologies), an algorithm for evolving neural network topologies and weights. It has no dependencies beyond the Python standard library and supports Python 3.8 through 3.14 plus pypy3.", "when_to_avoid": ["you need GPU-accelerated training for large-scale deep learning", "you want gradient-based optimization like backpropagation on fixed architectures", "you need a high-performance implementation for very large populations, since pure Python is slow", "you need a general-purpose deep learning framework"], "when_to_choose": ["you want to evolve neural network architectures rather than train fixed ones", "you need a dependency-free, pure-Python neuroevolution library", "you want a well-documented, actively maintained NEAT implementation with checkpointing and reporting", "your fitness function is non-differentiable, making gradient-based training unsuitable"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/neat-python", "repo": "CodeReclaimers/neat-python", "role": "main", "score": 79}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "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:06.695912+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.695912+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:56:53.497666+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "73c8477a60b9864210f4ef01805c7000f3606d4ddcdcebbeff5640d389e2988a", "fetched_at": "2026-08-28T04:05:06.695912+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CodeReclaimers/neat-python"}, {"content_hash": "fe56cfa1fb590cb5f30b5fd389ec911ee6444398564ab5e905c60a92cfb58483", "fetched_at": "2026-08-29T11:27:10.571090+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/neat-python/json"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 83, "longevity": 100, "rhythm": 62}, "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": 3994, "days_push": 102, "days_rel": 172, "gap_med": 49.0, "n_releases_24m": 3}, "score": 79, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}