Deploy a GitHub Application to Cloudflare Workers

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • catsup

    This app will index your pr and issue data.

  • We'll be applying our solution to catsup-app GitHub application being developed in the Open Sauced org. For each repo that has the application installed, our Discord will be updated when an issue has the good first issue label applied.

  • probot

    🤖 A framework for building GitHub Apps to automate and improve your workflow

  • A GitHub App built with Probot that This app alerts you of good first issues.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • For more, check out the Contributing Guide.

  • ISC © 2022 Brian 'bdougie' Douglas [email protected]

  • octokit.js

    The all-batteries-included GitHub SDK for Browsers, Node.js, and Deno.

  • In order for the project to be shipped as a service function, the node environment can not be used in any of the production code. Reviewing Probot source, one might see a dead end in that it uses require("dotenv").config(). However, its underlying framework, OctoKit does not come with any opinionated code in this regard.

  • cloudflare-worker-github-app-example

    A Cloudflare Worker + GitHub App Example

  • View on GitHub

  • The worker.js file is a Cloudflare Worker which is continuously deployed using GitHub Actions (see .github/workflows/deploy.yml).

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • smee-client

    🔴 Receives payloads then sends them to your local server

  • Using the same probot/smee-client shipped by Probot we divert the webhook URL to one on localhost for the development application, and for the production application we will enter a custom route.

  • wrangler-legacy

    Discontinued 🤠 Home to Wrangler v1 (deprecated)

  • Thinking about these hypothetical objections, my inner dialogue goes on: Me: "Hold up, whaaaat?!" Other me: "Yes it's CloudFlare Workers!"

  • miniflare

    🔥 Fully-local simulator for Cloudflare Workers. For the latest version, see https://github.com/cloudflare/workers-sdk/tree/main/packages/miniflare.

  • The simple explanation is that I'm proposing use of the Service Worker API. Cloudflare offers a flat, free, 100k requests a day if you can keep it cutting edge, has local development and testing options with miniflare and a key/value (KV) store.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts