DX-2595: recommend automatic dev server, fix local-development links#721
Merged
Conversation
CahidArda
commented
Jun 9, 2026
Contributor
- Switch JS/Node quickstarts and agents guide to QSTASH_DEV=true automatic dev server
- Keep manual CLI for Cloudflare Workers/Hono (edge runtime) and Python (fastapi/flask) quickstarts
- Fix broken /workflow/howto/local-development group links to development-server/local-tunnel pages
… links - Switch JS/Node quickstarts and agents guide to QSTASH_DEV=true automatic dev server - Keep manual CLI for Cloudflare Workers/Hono (edge runtime) and Python (fastapi/flask) quickstarts - Fix broken /workflow/howto/local-development group links to development-server/local-tunnel pages
Contributor
There was a problem hiding this comment.
Pull request overview
Updates Upstash Workflow documentation to favor the QSTASH_DEV=true automatic local QStash development server (where applicable) and fixes several local-development doc links to point at the new development-server / local-tunnel pages.
Changes:
- Switches multiple JS/Node-oriented guides and quickstarts to recommend
QSTASH_DEV=trueautomatic dev server setup. - Replaces legacy
/workflow/howto/local-development(and#local-tunnel-with-ngrokanchors) with direct links to/workflow/howto/local-development/development-serverand/workflow/howto/local-development/local-tunnel. - Regenerates/updates
llms-full.txtto reflect the documentation changes.
Reviewed changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 15 comments.
Show a summary per file
| File | Description |
|---|---|
| workflow/quickstarts/vercel-nextjs.mdx | Reworks local dev server instructions to use QSTASH_DEV=true and updates production credential guidance. |
| workflow/quickstarts/tanstack-start.mdx | Updates local dev server setup to the QSTASH_DEV=true flow and renumbers subsequent steps. |
| workflow/quickstarts/svelte.mdx | Switches local dev guidance to QSTASH_DEV=true and updates local-development links. |
| workflow/quickstarts/solidjs.mdx | Switches local dev guidance to QSTASH_DEV=true and updates local-development links. |
| workflow/quickstarts/nuxt.mdx | Switches local dev guidance to QSTASH_DEV=true and updates local-development links. |
| workflow/quickstarts/nextjs-flask.mdx | Updates local-development links to point at the new development-server page. |
| workflow/quickstarts/nextjs-fastapi.mdx | Updates local-development links to point at the new development-server page. |
| workflow/quickstarts/hono.mdx | Updates local-development links (including local-tunnel) to new pages. |
| workflow/quickstarts/flask.mdx | Updates local-development links to point at the new development-server page. |
| workflow/quickstarts/fastapi.mdx | Updates local-development links to point at the new development-server page. |
| workflow/quickstarts/express.mdx | Switches local dev guidance to QSTASH_DEV=true and updates local-development links. |
| workflow/quickstarts/cloudflare-workers.mdx | Updates local-development links (including local-tunnel) to new pages. |
| workflow/quickstarts/astro.mdx | Switches local dev guidance to QSTASH_DEV=true and updates local-development links. |
| workflow/integrations/aisdk.mdx | Updates the “run locally” link to point at the development-server page. |
| workflow/basics/context/call.mdx | Fixes localhost/local-tunnel guidance link to point at the local-tunnel page. |
| workflow/agents/getting-started.mdx | Switches local dev setup to QSTASH_DEV=true and updates local-tunnel link. |
| llms-full.txt | Updates the LLM export content to match the new documentation links and wording. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+25
to
31
| Since you are using `@upstash/workflow`, set `QSTASH_DEV=true` in your `.env.local` file and the SDK will download, start, and connect to a local QStash development server automatically — no tokens or signing keys to copy over. Add your `OPENAI_API_KEY` alongside it: | ||
|
|
||
| ```txt .env.local | ||
| QSTASH_URL="http://127.0.0.1:8080" | ||
| QSTASH_TOKEN="<QSTASH_TOKEN>" | ||
| QSTASH_DEV=true | ||
|
|
||
| OPENAI_API_KEY=<OPENAI_API_KEY> | ||
| ``` |
|
|
||
| For local development, you don't need to depend on the managed QStash servers. Instead, you can run a local QStash server directly on your machine. | ||
| This local server behaves just like the production version but does not require external network calls. | ||
| For local development, you don't need to depend on the managed QStash servers. Since you are using `@upstash/workflow`, you can just set `QSTASH_DEV=true`, and the SDK will download, start, and connect to a local QStash development server automatically — no tokens or signing keys to copy over. |
| @@ -143,4 +143,4 @@ You can observe the logs at [Upstash console under the Worfklow tab](https://con | |||
|
|
|||
| 2. Explore [the source code](https://github.com/upstash/workflow-js/tree/main/examples/nextjs-fastapi for a detailed, end-to-end example and best practices. | |||
| </Tab> | ||
| </Tabs> | ||
| ```txt .env.local | ||
| QSTASH_DEV=true |
| ``` | ||
|
|
||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development). | ||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development/development-server). |
| ``` | ||
|
|
||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development). | ||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development/development-server). |
| ``` | ||
|
|
||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development). | ||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development/development-server). |
| ``` | ||
|
|
||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development). | ||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development/development-server). |
| ``` | ||
|
|
||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development). | ||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development/development-server). |
| ``` | ||
|
|
||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development). | ||
| Upstash Workflow is powered by [QStash](/qstash/overall/getstarted), which requires access to your endpoint to execute workflows. When your app is deployed, QStash will use the app's URL. However, for local development, you have two main options: [use a local QStash server or set up a local tunnel](/workflow/howto/local-development/development-server). |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.