{"repo":"upstash/workflow-js","free":true,"listed":false,"github":"https://github.com/upstash/workflow-js","clone":"git clone https://github.com/upstash/workflow-js.git","description":"Durable, Reliable and Performant Serverless Functions","language":"TypeScript","stars":150,"topics":["qstash","upstash-sdk","workflow"],"license":"MIT","category":"workflow-automation","readme_excerpt":"Upstash Workflow SDK [!NOTE] This project is in GA Stage. The Upstash Professional Support fully covers this project. It receives regular updates, and bug fixes. The Upstash team is committed to maintaining and improving its functionality. Upstash Workflow lets you write durable, reliable and performant serverless functions. Get delivery guarantees, automatic retries on failure, scheduling and more without managing any infrastructure. See the documentation for more details Quick Start Here, we will briefly showcase how you can get started with Upstash Workflow. Alternatively, you can check our quickstarts for different frameworks, including Next.js and Cloudflare. Install First, install the package with: Get QStash token Go to Upstash Console and copy the QSTASH TOKEN. Define a Workflow Endpoint To declare workflow endpoints, use the serve method: In the example, you can see that steps are declared through the context object. The kinds of steps which are available are: - context.run : execute a function - context.sleep : sleep for some time - context.sleepUntil : sleep until some timestamp - context.call : make a third party call without consuming any runtime - context.waitForEvent : wait for an event - context.notify : notify an event to make workflows waiting for the event continue You can learn more about these methods from our documentation. Workflow Client You can use the Upstash Workflow client to cancel workflows, notify workflows waiting for an event or get the workfl","default_branch":null,"files":null,"tree":[],"storefront":"/r/upstash","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/upstash/workflow-js/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}