Skip to main content

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 as a Mermaid flowchart.

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 has no required runtime dependencies. Workflow visualization renders directly to Mermaid flowchart syntax (.mmd), which can be previewed in VS Code, GitHub/Bitbucket markdown, or https://mermaid.live without any additional tooling.

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.

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

stepfunction-0.1.0-py3-none-any.whl (21.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for stepfunction-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c439a25e3980d2b43fb65dea43d5c24621668791fceb1e53c2e91ab7de62c6d4
MD5 99037da64299ecb5aef3a2e3bca3e946
BLAKE2b-256 1f970b9288b0e3944ea5e44a4514be66c03c7bd6be2a79b609ac2d9839d3d9fe

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 file

0.0.7

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.2

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page