Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Sdk Laravel Package

durable-workflow/sdk

A PHP SDK for building durable, fault-tolerant workflows. Define long-running processes as code, persist state, and recover from failures with retries and resumable execution—ideal for Laravel and PHP apps needing reliable background orchestration.

View on GitHub
Deep Wiki
Context7

PHP client and worker SDK for Durable Workflow Cloud and self-hosted Server.

Frequently asked questions about Sdk
How do I install durable-workflow/sdk in a Laravel application?
Install the package with Composer using composer require durable-workflow/sdk. The SDK provides Laravel integration through a service provider and configuration, so publish the package config and point it at your Durable Workflow server. Then configure the worker and task-queue settings needed for your workflows before dispatching your first run.
Which Laravel and PHP versions does durable-workflow/sdk support?
PHP 8.1 through 8.4 is explicitly covered in the package's CI qualification. The release references supported Laravel and Symfony bridges, but a full Laravel framework version matrix is not published in the supplied overview. Check the composer.json constraints and bridge documentation for your exact Laravel version before adopting.
How do I define a workflow and its steps with the PHP SDK?
Workflows are defined as typed PHP code, with step-based workflows used to orchestrate jobs and activities. The SDK exposes a fluent API for defining steps, dispatching jobs, and tracking execution state. Keep step logic deterministic and place side effects in activities or jobs so retries and replay remain safe.
How does durable execution handle retries and persisted state?
The Durable Workflow service persists execution state so a workflow can survive failures, retries, and process restarts. Retries are handled by the durable execution model rather than relying only on Laravel queue retries. You can track run status and execution history through the SDK's observable runs.
How do I run the workflow worker in production?
The SDK includes a managed Worker option whose startup and registration are handled by the SDK. In production you still need a clear supervision policy: decide whether the SDK, Supervisor, or another process manager owns restarts, backoff, and health reporting. Wire the worker into your deployment tooling and monitor readiness before sending traffic.
Does the Laravel integration include a service provider, config, and facades?
Yes. The package ships Laravel integration with a service provider, configuration, and facades, and the release references supported Laravel and Symfony bridges. Confirm the bridge's exact scope, because a bridge that only registers the service provider is different from one that also ships an Artisan worker command with concurrency defaults.
Do I need RoadRunner, Swoole, or pcntl to run the worker?
The supplied overview does not state whether the worker requires RoadRunner, Swoole, or pcntl; this is an open evaluation question. A pure-PHP worker would be a genuine differentiator against Temporal, but confirm the runtime requirements in the worker and bridge documentation before choosing your process model.
How should I test durable workflows in a Laravel application?
Define workflows as typed PHP code so step logic can be unit tested without the orchestration server. For integration coverage, use the upstream replay corpus and acceptance tests against a published Durable Workflow server version rather than mocks. Add a registration test for your workflow and activity names so naming changes fail loudly.
Is durable-workflow/sdk a good alternative to Temporal's PHP SDK?
Temporal's PHP SDK is the mature, widely adopted alternative. durable-workflow/sdk is differentiated by Laravel integration, step-based workflows, and observable runs, but it has thinner external adoption and vendor/open-core server lock-in to evaluate. The release's CI and acceptance testing against Server 2.9.4 improve confidence, but confirm the self-hosted support and upgrade path.
Can I use numeric strings like order IDs as workflow or activity names?
Earlier releases could mangle numeric string array keys because PHP casts them to integers, so workflows or activities named 0, 17, or 017 could register under the wrong name and keyed metadata could serialize as JSON lists. That defect is fixed in this release. If you name handlers by ticket number, order ID, or step index, upgrade and add a registration test.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo