Replies: 3 comments
-
|
yeah @eersnington has already built one! we should feature it in our docs if there's a repo for it and setup instructions and any e2e tests? |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for creating this thread @HusainMkd cause this is a great opportunity for me to hijack this thread for a Request for Comments :) My first version CF world was just “local world on CF primitives” (D1, R2, CF queues, polling updates). You can’t ship it with your app via wrangler. Right now, the CF world is its own worker (diagram below), and your app worker (svelte, nitro, nuxt), just proxies through a service binding + Vite plugin. Still WIP as the vite plugin is supposed to prevent local-world from running, but Worker keeps trying to serialize workflows with the core runtime (which uses eval) and CF blocks it. Link to repo workflow-cloudflare-world |
Beta Was this translation helpful? Give feedback.
-
|
There's a better problems log within the repo with complete context of steps I took to get where I am, but here's the current status of things. How it works (as of now)graph TD
AppWorker[Svelte App Worker with Workflows] -->|service binding| WorldWorker[workflow-cloudflare-world Worker]
WorldWorker --> Containers[Cloudflare Containers / VM]
WorldWorker --> D1[(D1)]
WorldWorker --> R2[(R2 + StreamCoordinator DO)]
WorldWorker --> Queues[WORKFLOW_QUEUE / STEP_QUEUE]
Reasons why having CF world exist with you worker isn't "ideal":
Here is the main blocker: |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hiya, love the new syntax for this WDK!
For those already on Cloudflare, are there any plans to create a 'world' for Cloudflare?
They already have durable workflows, but it's not as elegant or easy to use as this!
Many thanks :)
Beta Was this translation helpful? Give feedback.
All reactions