Product
Introducing SSO
Streamline your login process and enhance security by enabling Single Sign-On (SSO) on the Socket platform, now available for all customers on the Enterprise plan, supporting 20+ identity providers.
@dollarshaveclub/cloudworker
Advanced tools
Readme
Cloudworker allows you to run Cloudflare Worker scripts locally.
Install via NPM:
npm install -g @dollarshaveclub/cloudworker
const Cloudworker = require('@dollarshaveclub/cloudworker')
const simpleScript = `addEventListener('fetch', event => {
event.respondWith(new Response('hello', {status: 200}))
})`
const req = new Cloudworker.Request('https://myfancywebsite.com/someurl')
const cw = new Cloudworker(simpleScript)
cw.dispatch(req).then((res) => {
console.log("Response Status: ", res.status)
res.text().then((body) =>{
console.log("Response Body: ", body)
})
})
Usage: cloudworker [options] <file>
Options:
-p, --port <port> Port (default: 3000)
-d, --debug Debug
-s, --kv-set [variable.key=value] Binds variable to a local implementation of Workers KV and sets key to value (default: [])
-f, --kv-file [variable=path] Set the filepath for value peristence for the local implementation of Workers KV (default: [])
-w, --wasm [variable=path] Binds variable to wasm located at path (default: [])
-c, --enable-cache Enables cache <BETA>
-r, --watch Watch the worker script and restart the worker when changes are detected
-h, --help output usage information
cloudworker example/example.js
curl localhost:3000/
cloudworker --debug example/example.js
curl localhost:3000/
cloudworker --debug --kv-set KeyValueStore.key=value --kv-set KeyValueStore.hello=world example/example-kv.js
curl localhost:3000/
cloudworker --debug --kv-file KeyValueStore=kv.json --kv-set KeyValueStore.key=value --kv-set KeyValueStore.hello=world example/example-kv.js
curl localhost:3000/
cloudworker --debug --wasm Wasm=example/simple.wasm example/example-wasm-simple.js
curl localhost:3000/
cloudworker --debug --wasm isqrt=example/isqrt.wasm example/example-wasm-isqrt.js
curl localhost:3000/?num=9
cloudworker --debug --wasm RESIZER_WASM=example/resizer.wasm example/example-wasm-resizer.js
curl localhost:3000/wasm-demo/dogdrone.png?width=210 # or open in browser
Cloudworker strives to be as similar to the Cloudflare Worker runtime as possible. A script should behave the same when executed by Cloudworker and when run within Cloudflare Workers. Please file an issue for scenarios in which Cloudworker behaves differently. As behavior differences are found, this package will be updated to match the Cloudflare Worker runtime. This may result in breakage if scripts depended on those behavior differences.
For beta releases:
v[version]-beta
. e.g. v0.0.10-beta
npm version [version]-beta.[beta number]
. e.g npm version 0.0.10-beta.1
npm publish --tag beta
.npm version
, write relevant release notes, and ensure "This is a pre-release" is checked.For production releases:
npm version [version]
. e.g. npm version 0.0.10
npm publish
.npm version
and copy release notes from beta.MIT
FAQs
node.js runner for Cloudflare Workers
The npm package @dollarshaveclub/cloudworker receives a total of 176 weekly downloads. As such, @dollarshaveclub/cloudworker popularity was classified as not popular.
We found that @dollarshaveclub/cloudworker demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 28 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Streamline your login process and enhance security by enabling Single Sign-On (SSO) on the Socket platform, now available for all customers on the Enterprise plan, supporting 20+ identity providers.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.