Glossary

Plain explanations of the terms used on this site, such as GitHub, Cloudflare, Workers, D1, and passkeys, for readers who are new to them.

This page is for readers who do not often meet terms such as GitHub or Cloudflare. Each entry says what the term means and how goodnight-web uses it.

Where the site runs

Cloudflare

A company that provides services for delivering websites quickly around the world and for protecting them. It also offers services for running programs and storing data. goodnight-web runs on your own Cloudflare account, so you manage the account and its settings yourself.

Workers

Cloudflare's service for running programs. goodnight-web runs one Worker per website. It runs the contact form API and the admin screen, and it serves the built pages.

Static Assets

A feature of Workers that serves ready-made files, such as the built pages, images, and styles. Cloudflare serves these files without running any program code.

D1

Cloudflare's database service, based on SQLite. goodnight-web stores inquiries, form settings, and sign-in data in one D1 database in your own account.

Binding

A Workers setting that gives a Worker access to a Cloudflare resource, such as a D1 database. It is declared in the Worker's settings, and the Worker uses it through env, for example env.DB. The Worker does not need a password or key for the resource. See Why the database is not reachable from the network.

Turnstile

Cloudflare's bot check. It is used on the contact form to tell people from automated programs. See Set up Turnstile.

Cloudflare WAF

WAF stands for Web Application Firewall. It checks requests to your domain against rules before they reach the Worker. It is an optional Cloudflare feature, not part of goodnight-web. See Cloudflare WAF.

Cloudflare Access

An optional Cloudflare feature that adds a second sign-in in front of the admin screen. See Cloudflare Access.

How the site is made

Astro

A tool that builds a website from files. The starter's pages are written with Astro, and their content is in Markdown files.

Markdown

A simple text format for writing headings, lists, and links. News and blog posts in the starter are Markdown files.

SSG

Short for static site generation. The pages are built once, ahead of time, into ready-made files. The server does not assemble a page for each visit. The starter's Astro site is built this way.

Hono

A small web framework that runs on Workers. The contact form API and the admin API are built with it. You do not edit this part.

CMS

Short for content management system, a service for editing a website's pages in a browser. goodnight-web does not use one. You edit files, or ask an AI tool to edit them for you.

How the site is managed

GitHub

A service that stores your site's files and keeps the history of every change, using a tool called Git. The files of your website live in a repository (a project folder) in your own GitHub account. Keep it private. See Distribution and updates.

Deploy

To publish a new version of the site. The Deploy to Cloudflare button copies the starter into a new repository in your GitHub account and sets up the site in your Cloudflare account. See Getting started.

Workers Builds

Cloudflare's build service. It builds your site when you push to GitHub and deploys the result.

Pull request (PR)

A proposed change on GitHub. You review it, then merge it to apply the change. Updates to goodnight-web arrive as pull requests. See Maintenance.

Dependabot

A GitHub tool that opens pull requests when a package your site uses has a new version.

Signing in

Passkey

A way to sign in without a password, using a fingerprint, a face scan, or a device PIN. The admin screen accepts passkeys only. See Passkey sign-in.

HKDF

A standard method, defined in RFC 5869, for making several separate keys from one secret value. goodnight-web uses it to make the key that signs admin sessions and the key that hashes IP addresses from APP_SECRET. Each key uses its own fixed label, so one key cannot be used to work out APP_SECRET or the other key.

On this page