{"id":13404750,"url":"https://github.com/lukeed/awesome-cloudflare-workers","last_synced_at":"2025-03-14T09:31:45.697Z","repository":{"id":45305136,"uuid":"188031181","full_name":"lukeed/awesome-cloudflare-workers","owner":"lukeed","description":"😎 Awesome Cloudflare Workers","archived":false,"fork":true,"pushed_at":"2021-12-22T20:23:19.000Z","size":764,"stargazers_count":530,"open_issues_count":1,"forks_count":18,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-02-15T00:02:50.642Z","etag":null,"topics":["awesome-list","cloudflare-workers"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"sindresorhus/awesome","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lukeed.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":"contributing.md","funding":null,"license":null,"code_of_conduct":"code-of-conduct.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-05-22T12:10:31.000Z","updated_at":"2025-02-13T01:54:59.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/lukeed/awesome-cloudflare-workers","commit_stats":null,"previous_names":["tombyrer/awesome-cloudflare-workers"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukeed%2Fawesome-cloudflare-workers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukeed%2Fawesome-cloudflare-workers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukeed%2Fawesome-cloudflare-workers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukeed%2Fawesome-cloudflare-workers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lukeed","download_url":"https://codeload.github.com/lukeed/awesome-cloudflare-workers/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242967502,"owners_count":20214282,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["awesome-list","cloudflare-workers"],"created_at":"2024-07-30T19:01:50.666Z","updated_at":"2025-03-14T09:31:45.429Z","avatar_url":"https://github.com/lukeed.png","language":null,"funding_links":[],"categories":["Others","Technical"],"sub_categories":["awesome-*"],"readme":"# Awesome Cloudflare Workers\n\n[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)\n\nA curated list of awesome articles \u0026 code for **[Cloudflare Workers](https://workers.cloudflare.com/)**.  They are similar to* [browsers' Service Workers](https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API), running in a modified Chromium 'tab', but in the cloud--flare.\n\nInspired by the [awesome](https://github.com/sindresorhus/awesome) list.  (A bit different, since the [CSV bookmark dump](https://github.com/tomByrer/awesome-cloudflare-workers/blob/master/cloudflare-workers-bookmarks.csv#L1) contains *many* other links that didn't make the 'awesome' list.)\n\nThe \"Emergency-management\" links are for projects that help out with COVID-19 and other emgerinces.  \"Boss\" links are top examples to help convince others (namely your boss or CTO).\n\nPlease use the [Link Suggestion Form](https://airtable.com/shryEZ28iLgjBbTCE) to add an URL to this list.  To fix something, suggest a new catgory, tag, etc, reach me on Twitter.\n\n\n## Contents\n\n - [Official](#official)\n - [Emergency-management](#emergency-management)\n - [Boss](#boss)\n - [Article](#article)\n - [GraphQL](#GraphQL)\n - [Local-dev](#local-dev)\n - [Localization](#localization)\n - [Security](#security)\n - [Tool](#tool)\n - [Msc](#msc)\n - [Related](#related)\n\n## Official\n\n- [Wrangler GitHub Action](https://github.com/cloudflare/wrangler-action) [GitHub, deploy, Docker] - Zero-config Cloudflare Workers deployment .\n- [Official Gatsby deployment docs](https://www.gatsbyjs.org/docs/deploying-to-cloudflare-workers/) [GatsbyJS, deploy, article] - .\n- [Wrangler: offiical CLI tool](https://github.com/cloudflare/wrangler) [WASM, CLI, tool, Rust] ([brief tutorial](https://dev.to/cloudflareworkers/a-brief-guide-to-what-s-new-with-cloudflare-workers-di8)) - Available via `npm` \u0026 `cargo`, can build \u0026 deploy JS, Rust, \u0026 C/C++ projects via templates.\n- [Cloudflare's Worker Forum / BBS](https://community.cloudflare.com/c/developers/workers) - Offical community forum.\n- [Official Documentation](https://developers.cloudflare.com/workers/about/) - General docs, includes configurations, Cf KeyValue data store, and recipes.\n- [Official Blog](https://blog.cloudflare.com/tag/workers/) - Cloudflare's blog posts tagged 'worker'.\n\n## Emergency-management\n\n- [US COVID-19 APIs](https://github.com/COVID19Tracking/website/) [REST, GraphQL, CORVID19, JS] ([GraphQL Playground](https://covidtracking.com/api/playground)) - Scraped \u0026 hand-verifed Coronavirus data by county \u0026 states in USA.\n- [API for COVID-19 stats in India](https://github.com/amodm/api-covid19-in) [REST, health, CORVID19, JS] - Scrapes Ministry of Health and Family Welfare \u0026 unofficial sources.\n\n## Boss\n\n- [Edgesearch](https://github.com/wilsonzlin/edgesearch) [search, WASM, Rust] - Full-text search using, WebAssembly \u0026 Roaring Bitmaps.\n- [placeholders.dev](https://placeholders.dev/) [service, REST, JS] ([source](https://github.com/Cherry/placeholders.dev)) - Generate custom SVG placeholder images.\n- [ wilsonzlin/edgesearch](https://github.com/wilsonzlin/edgesearch) [REST, service, Rust] - Full text search API using WebAssembly.\n- [Axios uses CfWorkers](https://www.axios.com/new-axios-website-google-amp-563e62ba-8708-4965-8f5e-3216bd268383.html) [article] - \"gradual rollout, perform A/B testing, and perform ESI-style page-stitching\".\n- [Built with Workers Showcase](https://workers.cloudflare.com/built-with/) [GraphQL, GatsbyJS, ReactJS, JS] ([source](https://github.com/cloudflare/built-with-workers)) - Websites \u0026 projects built with Cloudflare Workers.\n- [Hosting Static Wordpress Sites](https://developers.cloudflare.com/workers/tutorials/hosting-static-wordpress-sites/) [WordPress, article, static, JS] ([YouTube](https://youtu.be/LR7YF1z4VzM)) - WP2Static, then setup Workers project.\n\n## Article\n\n- [Kristian Freeman's interview at Sanity.io](https://www.sanity.io/blog/how-cloudflares-built-with-workers-was-built) [interview, video] ([YouTube](https://www.youtube.com/watch?time_continue=1007\u0026v=udI-pnsWzpc\u0026feature=emb_title)) - How Cloudflare built their showcase site for Workers on Sanity.io and Gatsby… and Workers.\n- [Use Cloudflare JS Workers to Deploy Your SSG](https://levelup.gitconnected.com/use-cloudflare-javascript-workers-to-deploy-you-static-generated-site-ssg-1c518e078646) [setup, static, NextJS, JS] - Complete tutorial: config at Cloudflare's admin dashboard to using KV to store versions..\n- [Testing Cloudflare workers](https://findwork.dev/blog/testing-cloudflare-workers/) [test, tool, JS] - There is no extensive tutorial on how to test Cloudflare workers, so I wrote one.\n- [Deploy a React App](https://developers.cloudflare.com/workers/tutorials/deploy-a-react-app/) [ReactJS, video, JS] ([source](https://github.com/cloudflare/react-workers-template)) - .\n- [Elm CfWorkers example](https://github.com/choonkeat/elm-serverless-edge) [example, Elm] - Elm on Cloudflare Workers with KV.\n- [Official Serverless Quickstart](https://serverless.com/framework/docs/providers/cloudflare/guide/quick-start/) [Serverless] - Guide to use the Serverless Plugin to deploy CfWorkers.\n- [URL shortener with LavaRand](https://github.com/obezuk/cf-workers-link-shortener) [route, app, JS] ([short blog post](levi.lol/url-shortener-built-on-cloudflare/)) - Url shortener built with Cloudflare Workers and LavaRand.\n- [Diving into Technical SEO](https://blog.cloudflare.com/diving-into-technical-seo-cloudflare-workers/) [optmimize, SEO, TypeScript] - Modifying incomming \u0026 outgoing requests, inject Hreflang tags,, redirects, etc.\n- [FSharp tutorial](https://github.com/jbeeko/cfworker-web-api) [app, F#] - FSharp example: CRUD contact manager.\n- [Serverless PWA using React](https://github.com/cloudflare/workers-react-pwa-example) [ReactJS, JS] ([Cloudflare article builds up example script](https://blog.cloudflare.com/serverless-pwa-react-cloudflare-workers/)) - Terraform deploy srcipt included.\n- [Supercharge Google Fonts](https://medium.com/@pierluc/supercharge-google-fonts-with-cloudflare-and-service-workers-25c37462fb6a) [optmimize, CDN, JS] ([author's live site](https://www.jirafe.io/)) - Inlines font requests with CfWorker, then caches in browser.\n- [Cryptocurrency API Gateway](https://github.com/stevenpack/cryptoserviceworker) [gatekeeper, route, TypeScript] ([blog.CloudFlare](https://blog.cloudflare.com/cryptocurrency-api-gateway-typescript-workers/)) - Mini http request routing, then gateway to multiple crypto API providers in 1 file.\n\n## GraphQL\n\n- [globally distributed Apollo GraphQL server](https://github.com/signalnerve/workers-graphql-server) [JS] ([Playground demo](https://graphql-on-workers.signalnerve.com/___graphql)) - Debugging, CORS, REST caching.\n- [example Gatsby.js project ](https://github.com/signalnerve/gatsby-cloudflare-workers) [ReactJS, JS] - Blog served via GatsbyJS/React.\n- [Hasura GraphQL Cloudflare Worker](https://github.com/nathanwaters/hasura-cloudflare-worker) [auth, JS] - Example for Facebook-based authorization and GraphQL proxy queries with Hasura.\n- [GraphQL on Edge Workers](https://github.com/cloudflare/workers-graphql-gateway-example) [video, JS] ([video demo](https://youtu.be/E9sDH6ylQc4)) - Workers GraphQL Gateway Example.\n\n## Local-dev\n\n- [Run Cloudflare Worker scripts locally](https://github.com/dollarshaveclub/cloudworker) [tool, JS] - Uses Docker, nice API, includes WASM build support.\n- [TypeScript Types and mocks](https://github.com/udacity/cloudflare-typescript-workers) [tool, template, TypeScript] - Simple example and/or starting point for a CfWorker script using TypeScript, WebPack, \u0026 Jest.\n- [cloudflare-workers-sandbox](https://github.com/bitquant/cloudflare-workers-sandbox) [tool, test, JS] - Sandbox environment suitable for running and testing your worker code locally.\n- [Serverless framework Blueprint](https://github.com/signalnerve/serverless-cloudflare-workers-blueprint) [Serverless, tool, deploy, JS] - Configure your `.env`, \u0026 `serverless deploy` away.\n- [Codeship to automatically update your Cloudflare Workers](https://github.com/karllhughes/workers-codeship-example) [deploy, example, JS] - Automated Deployment.\n\n## Localization\n\n- [Serve cookie consent banner to EU visitors](https://github.com/pioug/cookie-choice) [inject, app, JS] ([live demo](https://github.com/stevenpack/cryptoserviceworker)) - Banner only shows if cllient is in EU.\n\n## Security\n\n- [Generate JWTs using the WebCrypto API ](https://github.com/sagi/workers-jwt) [JS] - .\n- [Abused CfWorker Used to Inject Korean SEO Spam](https://blog.sucuri.net/2020/02/abused-cloudflare-workers-service-used-to-inject-korean-seo-spam.html) [article, SEO, inject] - SEO spam showed only in Google search results.\n- [score users' new passwords with zxcvbn](https://github.com/detroitenglish/pw-pwnage-cfworker) [app, REST, JS] - RESTful endpoint for sanely scoring users' new passwords  \u0026 querys Troy Hunt's haveibeenpwned collection of +5.1 billion breached accounts.\n- [Set Google Analytics Client ID Cookie](https://gist.github.com/dustinrecko/9f34969250f2e0668d4c4fe4808520a7#file-worker-snippet-js) [article, analytics, JS] ([article: Google Analytics ITP 2.1 Prevention ](https://omr.ruhr/google-analytics-itp-2-1-prevention-http-set-cookie-snippet-182092779d40)) - Fool Webkit's Intelligent Tracking Prevention,  HTTP Set-Cookie /snippet/.\n- [Workaround Cloudflare's Anti-DDoS Protection](https://github.com/hrbrmstr/cfhttr) [tool, Rust] - Workaround Cloudflare Anti-DDoS Protection.\n\n## Tool\n\n- [Cloudflare Workers Time Tests](https://github.com/EverlastingBugstopper/cf-workers-benchmark) [test, JS] - Example development environment with three patterns for benchmarking Cloudflare edge workers.\n- [Cloudflare Workers \u003c3 Create React App](https://github.com/juiceo/cloudflare-worker-cra) [ReactJS, template, JS] - .\n- [CLI KV store tool](https://github.com/saibotsivad/cloudflare-worker-key-value) [CLI, KV, JS] - .\n- [Cf-Worker-Kit](https://github.com/lucacasonato/workerkit) [template, TypeScript] - Library to make writing Cloudflare Workers way nicer .\n- [Lazy Invoice PDF generator](http://lazy.invoice.workers.dev/) [pdf, JS] ([source](https://github.com/adamschwartz/lazy.invoice.workers.dev)) - Simple online invoice tool.\n- [GitCF](https://github.com/maple3142/gitcf) [route, JS] ([demo](https://gh.maple3142.net/)) - RawGit clone on CfWorkers..\n- [cloudflare-worker-local](https://github.com/gja/cloudflare-worker-local) [test, JS] - Test a Cloudflare Worker Locally.\n- [Template: TypeScript  \u0026 Jest by udacity](https://github.com/udacity/cloudflare-typescript-worker-template) [template, TypeScript] - Preconfigured starter template for building a Tslint strictly linted/formatted, Jest tested, Webpack built, TypeScript.\n- [Local cloudflare-workers-kv](https://github.com/bitquant/cloudflare-workers-kv) [KV, local-dev, JS] - Workers KV in your local environment or within a CF Workers env.  Chunks large values above 64kB.\n- [KV interactive viewer](https://github.com/jroyal/cloudflare-workers-kv-viewer) [CLI, JS] - Nice CLI tool to explore keys \u0026 values of a Cloudflare account.\n- [CF KV Client for .NET](https://github.com/aozd4v/cloudflare-workers-kv-dotnet-client) [KV, .NET] - .NET Standard 1.4-2.0.\n- [Kv Web Explorer](https://github.com/bcnzer/kv-explorer-ui) [VueJS, KV, JS] - Vue.js SPA for viewing Cloudflare KV data.\n- [echo](https://github.com/lebinh/cloudflare-workers#workers-zoo) [test, TypeScript] - Echo back the request/response from worker point of view.\n\n## Msc\n\n- [various @ nchlswhttkr/workers](https://github.com/nchlswhttkr/workers) [route, Slack, tool, JS] - Rush/pnpm mono repo: GoLang interpreter, newsletter, WebHooks, +.\n- [worker-haskell-template](https://github.com/ento/worker-haskell-template) [template, Haskell] - Wrangler template for a Cloudflare Workers + Haskell (Asterius) project.\n- [Assorted demos ](https://github.com/mikaelvesavuori/cloudflare-workers-demos) [route, JS] - Checks: if bot, moble, user-country, A/B testing, etc.\n- [Google Analytics shield ](https://github.com/boynet/cf-GoogleAnalytics-shield-worker) [SEO, analytics, JS] - Protect google analytics from being blocked by ad blockers.\n- [app to flip images](https://github.com/Kellel/image_flipper) [app, image, WASM, Rust] - Uses Rust's wasm-pack-template.\n- [go/WASM AMP-transformer](https://github.com/gabbifish/amp-transform-wasm) [AMP, WASM, GoLang] - Go/WASM port of the AMP packager transform library.\n- [Streaming Optimizations](https://github.com/pmeenan/cf-workers/tree/master/streaming-optimizations) [optmimize, cache, JS] - Caches 3rd party scripts \u0026 dynamic HTML, inlines Google Fonts CSS.  Non-streaming blocking [version is avaiable](https://github.com/pmeenan/cf-workers/tree/master/optimization-pack).\n- [simple integration to Cloudflare Workers APIs](https://github.com/jspies/cloudflare-workers-toolkit) [tool, deploy, JS] - Deploy workers, get \u0026 remove routs, KV storage, etc.\n- [Airtable Proxy Cloudflare Worker](https://github.com/portable-cto/airtable-proxy-worker) [AirTable, REST, security, JS] - Hides Airtable Base ID and API Key, Limit requests to specific methods and table, push updates via Travis-CL.\n- [hashing service](https://github.com/windbirds/workers_examples/blob/master/hash/index.js) [service, JS] - JSON responce with SHA1, SHA286, SHA384, \u0026 SHA512 hash responce.\n- [Preact Progressive Web App](https://github.com/DigitalOptimizationGroup/cloudflare-worker-preact-pwa) [frontend, optmimize, Preact, JS] ([Preact worker demo](https://growthcloud.io/)) - Example PWA created by preact-cli.\n- [Thin wrapper for Cloudflare Workers KV](https://github.com/Zertz/cloudflare-kv) [KV, JS] - Get, put, \u0026 delete for Cloudflare KV.\n- [CI/CD pipeline for CfWorkers using Serverless in Azure](https://medium.com/gettimely/how-to-set-up-ci-cd-pipeline-for-cloudflare-workers-using-serverless-framework-in-azure-devops-aka-1e904e91e130) [article, CI/CD, Serverless] - Walkthough for a code pipeline with Serverless Framework.\n- [CI/CD with Azure](https://github.com/daniel-simpson/Cloudflare-Enterprise-Workers) [deploy, JS] - .\n- [DNS lookup and dig app](https://github.com/matthewgall/beta.dnsjson.com) [app, frontend, JS] ([dnsjson.com - live app](https://beta.dnsjson.com/)) - .\n\n## Related\n\n- [Awesome Service Workers](https://github.com/TalAter/awesome-service-workers#awesome-service-workers-) [JS] - Cf Service Workers are based on browser SW.\n\n\n## Also by Author\n\n- [tomByrer/awesome-awesome-covid19](https://github.com/tomByrer/awesome-awesome-covid19#awesome-awesome-covid19) - meta-lists around the not-awesome 2019 novel Coronavirus\n\n## License\n\n[![CC0](https://mirrors.creativecommons.org/presskit/buttons/88x31/svg/by-sa.svg)](https://creativecommons.org/licenses/by-sa/4.0/)\n\n#### [Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/)\n\nYou are free to share \u0026 alter this, as long as you give credit \u0026 keep same license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukeed%2Fawesome-cloudflare-workers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flukeed%2Fawesome-cloudflare-workers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukeed%2Fawesome-cloudflare-workers/lists"}