Skip to main content

Step Function Workflow Orchestration Library

Project description

StepFunction

License Python Status

StepFunction is a Python library for orchestrating complex workflows through a step-by-step process. It allows for easy management of sequential and parallel tasks with robust error handling and branching. The library is inspired by AWS Step Functions but implemented as a Python-native solution to orchestrate workflows across any environment.

Features

  • Sequential and Parallel Execution: Run steps one after another or in parallel.
  • Error Handling: Define failure paths and handle exceptions gracefully.
  • Branching Logic: Direct workflows based on conditions.
  • Sub-Step Functions: Modularize workflows by embedding sub-step functions.
  • Visualization: Integrated support for visualizing the workflow graph.

Installation

You can install the StepFunction package using pip:

pip install stepfunction

Documentation and Further Reading

For more detailed usage examples and advanced use cases, please read the blog post that explains the design and usage of the library in-depth. This blog post covers advanced concepts like error handling, sub-step functions, and visualizing workflows in a real-world context.

Dependencies

The StepFunction package requires the following dependencies:

  • graphviz == 0.20.3

These will be automatically installed when you install the package via pip.

Contributing

If you'd like to contribute to StepFunction, feel free to submit issues or pull requests. Contributions are welcome!

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Created and maintained by Vineeth Penugonda.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stepfunction-0.0.6.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stepfunction-0.0.6-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file stepfunction-0.0.6.tar.gz.

File metadata

  • Download URL: stepfunction-0.0.6.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for stepfunction-0.0.6.tar.gz
Algorithm Hash digest
SHA256 383ccc430db9052c5730799fe5407cf7e2e5f53d17d9fdc261b498b6b48a8fc8
MD5 3296617f184c7a9904e9fffddd93e273
BLAKE2b-256 7a340ca54e3047522776fcfe34c9e07321c83066ece5ebf486a4792e50f9816a

See more details on using hashes here.

File details

Details for the file stepfunction-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: stepfunction-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for stepfunction-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 7c89554b8baa463976c5abe04a37870c919d5208f78cde10fffefa0a6198d47c
MD5 4e4ed3776a111a80fd1d2abce2e2a123
BLAKE2b-256 c81787d857f9b4a9e6d7d257eb61229e13e979b8a0e7a9d17b30dcff39d4cd6b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page