{"data":{"slug":"prefecthq-prefect","name":"prefect","tagline":"Workflow orchestration framework for resilient data pipelines","github_url":"https://github.com/PrefectHQ/prefect","owner":"PrefectHQ","repo":"prefect","owner_avatar_url":"https://avatars.githubusercontent.com/u/39270919?v=4","primary_language":"Python","stars":23947,"forks":2546,"topics":["automation","data","data-engineering","data-ops","data-science","infrastructure","ml-ops","observability","orchestration","pipeline","prefect","python","workflow","workflow-engine"],"archived":false,"github_pushed_at":"2026-09-28T23:51:18+00:00","maintenance_label":"Very active","stars_delta_30d":406,"url":"https://www.graphcanon.com/tools/prefecthq-prefect","markdown_url":"https://www.graphcanon.com/tools/prefecthq-prefect.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/prefecthq-prefect","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=prefecthq-prefect","description":"Prefect is a workflow orchestration framework for building resilient data pipelines in Python.","homepage_url":"https://prefect.io","license":"Apache-2.0","open_issues":853,"watchers":200,"ai_summary":"Prefect is a workflow orchestration tool in Python, facilitating the creation and management of data pipelines and automations.","readme_excerpt":"## Getting started\n\nPrefect requires Python 3.10+. To [install the latest version of Prefect](https://docs.prefect.io/v3/get-started/install), run one of the following commands:\n\n```bash\npip install -U prefect\n```\n\n```bash\nuv add prefect\n```\n\nThen create and run a Python file that uses Prefect `flow` and `task` decorators to orchestrate and observe your workflow - in this case, a simple script that fetches the number of GitHub stars from a repository:\n\n```python\nfrom prefect import flow, task\nimport httpx\n\n\n@task(log_prints=True)\ndef get_stars(repo: str):\n    url = f\"https://api.github.com/repos/{repo}\"\n    count = httpx.get(url).json()[\"stargazers_count\"]\n    print(f\"{repo} has {count} stars!\")\n\n\n@flow(name=\"GitHub Stars\")\ndef github_stars(repos: list[str]):\n    for repo in repos:\n        get_stars(repo)","github_created_at":"2018-06-29T21:59:26+00:00","created_at":"2026-07-11T23:30:36.944639+00:00","updated_at":"2026-09-29T06:00:39.367031+00:00","categories":[{"slug":"developer-tools","name":"Developer Tools","url":"https://www.graphcanon.com/categories/developer-tools","markdown_url":"https://www.graphcanon.com/categories/developer-tools.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/developer-tools"}],"tags":[{"slug":"data-engineering","name":"data-engineering"},{"slug":"ml-ops","name":"ml-ops"},{"slug":"observability","name":"observability"},{"slug":"workflow-engine","name":"workflow-engine"}],"trust":{"provenance":{"is_fork":false,"github_id":139199684,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-29T06:00:38.156Z","maintenance":{"label":"Very active","score":96,"methodology":"github_public_v1","releases_90d":30,"days_since_push":0,"last_release_at":"2026-09-26T23:41:44Z","stars_delta_30d":406,"open_issues_delta_30d":32},"security_summary":{"status":"no_lockfile","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-11T23:30:46.722Z","medium_count":0,"scan_profile":"none","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-09-29T06:00:38.899Z"},"deploy":{"source":"dockerfile:Dockerfile","self_host":true,"observed_at":"2026-09-29T06:00:38.899Z","managed_saas":false},"has_cli":{"value":true,"source":"pyproject.toml:[project.scripts]","observed_at":"2026-09-29T06:00:38.899Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-09-29T06:00:38.899Z"},"has_docker":{"value":true,"source":"dockerfile:Dockerfile","observed_at":"2026-09-29T06:00:38.899Z"},"license_spdx":{"value":"Apache-2.0","source":"github.license","observed_at":"2026-09-29T06:00:38.899Z"}},"decision_facts":{"hosting":null,"pricing":{"model":"freemium","summary":"Prefect is initially available under an open-source license (Apache-2.0), but commercial support options are also provided for users who require additional services or features."},"requirements":{"notes":["Requires Python 3.10+"],"min_ram_gb":null,"requires_docker":false},"constraints":{"min_ram_gb":null,"pricing_model":"freemium","requires_docker":false},"when_to_use":["- When your project relies on the latest features in Python, as Prefect supports Python 3.10+","- For projects that require fine-grained control over tasks and flows, thanks to its use of `flow` and `task` decorators which allows easy separation of concerns within workflows"],"when_not_to_use":["- If your team is already deeply invested in another language for scripting or orchestrating data pipelines (for example, if you prefer a non-Python solution), Prefect might not be the right fit","- For projects where minimal overhead and quick setup are critical, as Prefect's setup requires installing specific dependencies and adhering to its Python-based framework"],"source":"enrich:decision_facts","observed_at":"2026-07-12T13:07:43.441Z"},"constraint_facets":{"min_ram_gb":null,"pricing_model":"freemium","requires_docker":false},"decision_summary":[{"label":"Pricing","value":"freemium - Prefect is initially available under an open-source license (Apache-2.0), but commercial support options are also provided for users who require additional services or features."},{"label":"Requirements","value":"Requires Python 3.10+"},{"label":"Adopt for","value":"Prefect is a Python-based workflow orchestration framework designed to create resilient data pipelines. It offers a straightforward approach to building and managing workflows using Python syntax."}]}}