Prefect
Prefect is a workflow orchestration framework for building data pipelines in Python. It’s the simplest way to elevate a script into an interactive workflow application. With Prefect, you can build resilient, dynamic workflows that react to the world around them and recover from unexpected changes.
With just a few decorators, Prefect supercharges your code with features like automatic retries, distributed execution, scheduling, caching, and much more.
Workflow activity is tracked and can be monitored with a self-hosted Prefect server instance or managed Prefect Cloud dashboard.
run the flow!
if name==”main”:
github_stars(["PrefectHQ/Prefect"])
Fire up the Prefect UI to see what happened:
```bash
prefect server start
To run your workflow on a schedule, turn it into a deployment and schedule it to run every minute by changing the last line of your script to the following:
if __name__ == "__main__":
github_stars.serve(name="first-deployment", cron="* * * * *")
You now have a server running locally that is looking for scheduled deployments! Additionally you can run your workflow manually from the UI or CLI - and if you’re using Prefect Cloud, you can even run deployments in response to events.
prefect-client
If your use case is geared towards communicating with Prefect Cloud or a remote Prefect server, check out our prefect-client. It is a lighter-weight option for accessing client-side functionality in the Prefect SDK and is ideal for use in ephemeral execution environments.