cfworker
A collection of packages optimized for Cloudflare Workers and service workers.
@cfworker/base64url
base64 URL encoding for Cloudflare Workers and service workers
@cfworker/cosmos
Azure Cosmos DB client for Cloudflare Workers and service workers
@cfworker/csv
Streaming CSV encoding for Cloudflare Workers and service workers
@cfworker/dev
Run, test and deploy Cloudflare workers
@cfworker/json-schema
A JSON schema validator that will run on Cloudflare workers. Supports drafts 4, 7, 2019-09, and 2020-12.
@cfworker/jwt
Tiny lib for decoding JWTs and verifying signatures, using native crypto APIs
@cfworker/sentry
Minimalist Sentry client for Cloudflare workers and service workers
@cfworker/uuid
Serialize/deserialize V4 UUIDs from a Uint8Array
@cfworker/web
Web framework for Cloudflare Workers and service workers, inspired by Koa and fastify
contributing
Install dependencies using npm. Npm workspaces will ensure cfworker packages that depend on other cfworker packages are linked properly.
npm install
Run all tests
npm test
Run a specific package's tests
npm run test --workspace=@cfworker/base64url
Watch files for changes and re-run tests
npm run test --watch --workspace=@cfworker/base64url
Use chrome devtools to debug tests
npm run test --watch --inspect --workspace=@cfworker/base64url
Refer to each package's README for more specific instructions and examples. Some packages require a .env file (gitignored) containing cloudflare or cosmos db keys for integration testing.