Skip to content
@worker-tools

Worker Tools

Utilities for working with worker runtimes such as Cloudflare Workers and Deno Deploy

Worker Tools

Worker Tools are a collection of TypeScript libraries for writing web servers in Worker Runtimes such as Cloudflare Workers and Deno Deploy.

Tools

  • 🧭 Worker Router — Complete routing solution that works across CF Workers, Deno and Service Workers
  • 🔋 Worker Middleware — A suite of standalone HTTP server-side middleware with TypeScript support
  • 📄 Worker HTML — HTML templating and streaming response library
  • 📦 Storage Area — Key-value store abstraction across Cloudflare KV, Deno and browsers.
  • 🆗 Response Creators — Factory functions for responses with pre-filled status and status text
  • 🎏 Stream Response — Use async generators to build streaming responses for SSE, etc...
  • 🥏 JSON Fetch — Drop-in replacements for Fetch API classes with first class support for JSON.
  • 🦑 JSON Stream — Streaming JSON parser/stingifier with 1st class support for WHATWG/web streams.
  • 🧱 Structured JSON — Stringify and parse JavaScript values according to Structured Clone Algorithm
  • 🍪 Request Cookie Store — An implementation of the Cookie Store API for use in request handlers.
  • Extendable Promise — A promise that can be delayed/extended via repeated calls to waitUntil.

Worker Tools also includes a number of polyfills that help bridge the gap between different Worker Runtimes:

Worker Tools also maintains a number of (web-) services:

  • ⚙️ workers.js.org — Educational site about the state of Worker Runtimes.
  • 🦕 ghuc.cc — Import modules directly from GitHub into Deno with a familiar API.

*[SSE]: Server Sent Events


Worker Tools can be used independently or as a web framework via Shed.

How to Use

Deno users can import Worker Tools directly from GitHub as they are written in TypeScript with fully qualified import specifiers:

import * as shed from 'https://ghuc.cc/worker-tools/shed/index.ts'

For other runtimes such as module bundlers, webpack or esbuild, Worker Tools are distributed as node-ified modules that can be installed via npm and behave like regular npm modules

npm install @worker-tools/shed

Pinned

  1. html html Public

    HTML templating and streaming response library for Service Worker-like environments such as Cloudflare Workers.

    TypeScript 60 4

  2. router router Public

    A router for Worker Runtimes such and Cloudflare Workers or Service Workers.

    TypeScript 27 4

  3. json-stream json-stream Public

    Utilities for working with streaming JSON in Worker Environments.

    TypeScript 10 1

  4. cloudflare-kv-storage cloudflare-kv-storage Public

    An implementation of the StorageArea interface using Cloudflare Worker's KV storage as a backing store

    TypeScript 23 2

  5. html-rewriter html-rewriter Public

    WASM-based implementation of Cloudflare's HTML Rewriter for use in Deno, browsers, etc.

    TypeScript 74 6

  6. deno-fetch-event-adapter deno-fetch-event-adapter Public

    Dispatches global fetch events using Deno's native http server.

    TypeScript 21 2

Repositories

Showing 10 of 33 repositories

Top languages

Loading…

Most used topics

Loading…