diff --git a/.github/workflows/ci-master.yml b/.github/workflows/ci-master.yml
deleted file mode 100644
index 4f970d4cfc4612b394cf40b8bd202020aea09783..0000000000000000000000000000000000000000
--- a/.github/workflows/ci-master.yml
+++ /dev/null
@@ -1,42 +0,0 @@
-on:
-  push:
-    branches:
-      - main
-
-name: main branch CI
-
-jobs:
-  jekyll-latest:
-    name: Build Jekyll site (latest)
-    runs-on: ubuntu-latest
-    steps:
-      - uses: actions/checkout@main
-
-      - name: Build the site in the jekyll/builder container
-        run: |
-          docker run --rm \
-          --volume="${{ github.workspace }}:/srv/jekyll" \
-          jekyll/builder:latest /bin/bash -c "gem install bundler && chmod -R 777 /srv/jekyll && bundle install && bundle exec jekyll build && bundle exec rake search:init"
-  jekyll-3-8-5:
-    name: Build Jekyll site (v3.8.5)
-    runs-on: ubuntu-latest
-    steps:
-      - uses: actions/checkout@main
-
-      - name: Build the site in the jekyll/builder container
-        run: |
-          docker run --rm \
-          --volume="${{ github.workspace }}:/srv/jekyll" \
-          jekyll/builder:3.8.5 /bin/bash -c "gem install bundler && chmod -R 777 /srv/jekyll && bundle install && bundle exec jekyll build && bundle exec rake search:init"
-  assets:
-    name: Format and test CSS and JS
-    runs-on: ubuntu-latest
-
-    steps:
-      - uses: actions/checkout@v2
-      - name: Use Node.js 12.x
-        uses: actions/setup-node@v1
-        with:
-          node-version: "12.x"
-      - run: npm install
-      - run: npm test
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 3fb78091b71d0f9648db41282a9ba1f54c19e269..4eaa17d92c4d40709e1cbc327d099dbd8de387a4 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -1,44 +1,42 @@
-on: [pull_request]
+on:
+  push:
+    branches:
+      - main
+  pull_request:
+    branches:
+      - main
+      - 'v**'
 
 name: CI
 
 jobs:
-
-  jekyll-latest:
-    name: Build Jekyll site (latest)
-    runs-on: ubuntu-latest
-    steps:
-
-    - uses: actions/checkout@v2
-
-    - name: Build the site in the jekyll/builder container
-      run: |
-        docker run --rm \
-        --volume="${{ github.workspace }}:/srv/jekyll" \
-        jekyll/builder:latest /bin/bash -c "gem install bundler && chmod -R 777 /srv/jekyll && bundle install && bundle exec jekyll build && bundle exec rake search:init"
-
-  jekyll-3-8-5:
-    name: Build Jekyll site (v3.8.5)
+  jekyll-build:
+    name: Build Jekyll site
     runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        jekyll-version: [3.8.5, latest]
     steps:
-
-    - uses: actions/checkout@v2
-
-    - name: Build the site in the jekyll/builder container
+    - uses: actions/checkout@v3
+    - name: Build the site in the jekyll/jekyll container
       run: |
         docker run --rm \
         --volume="${{ github.workspace }}:/srv/jekyll" \
-        jekyll/builder:3.8.5 /bin/bash -c "gem install bundler && chmod -R 777 /srv/jekyll && bundle install && bundle exec jekyll build && bundle exec rake search:init"
+        jekyll/jekyll:${{ matrix.jekyll-version }} /bin/bash -c "gem install bundler && chmod -R 777 /srv/jekyll && bundle install && bundle exec jekyll build && bundle exec rake search:init"
 
   assets:
     name: Test CSS and JS
     runs-on: ubuntu-latest
 
+    strategy:
+      matrix:
+        node-version: [16.x]
+
     steps:
-    - uses: actions/checkout@v2
-    - name: Use Node.js 12.x
+    - uses: actions/checkout@v3
+    - name: Use Node.js ${{ matrix.node-version }}
       uses: actions/setup-node@v1
       with:
-        node-version: '12.x'
+        node-version: ${{ matrix.node-version }}
     - run: npm install
     - run: npm test
diff --git a/Dockerfile b/Dockerfile
index 5f0ddaeb639e0ba85e3f3f87813a68fba4c0daec..a499513b222c1d040f6430f7ed6611cc21f23144 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM ruby:2.6
+FROM ruby:2.7
 
 ENV LC_ALL C.UTF-8
 ENV LANG en_US.UTF-8
@@ -10,4 +10,3 @@ COPY Gemfile just-the-docs.gemspec ./
 RUN gem install bundler && bundle install
 
 EXPOSE 4000
-
diff --git a/README.md b/README.md
index 30665abc6b6a2c1295c632dab51cdee0e375f721..43775d10508c3001900c209b7bc3d39ceb2b8364 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
 <p align="right">
-    <a href="https://badge.fury.io/rb/just-the-docs"><img src="https://badge.fury.io/rb/just-the-docs.svg" alt="Gem version"></a> <a href="https://github.com/just-the-docs/just-the-docs/actions?query=workflow%3A%22main+branch+CI%22"><img src="https://github.com/just-the-docs/just-the-docs/workflows/main%20branch%20CI/badge.svg" alt="Build status"></a> <a href="https://app.netlify.com/sites/just-the-docs/deploys"><img src="https://api.netlify.com/api/v1/badges/9dc0386d-c2a4-4077-ad83-f02c33a6c0ca/deploy-status" alt="Netlify Status"></a>
+    <a href="https://badge.fury.io/rb/just-the-docs"><img src="https://badge.fury.io/rb/just-the-docs.svg" alt="Gem version"></a> <a href="https://github.com/just-the-docs/just-the-docs/actions/workflows/ci.yml"><img src="https://github.com/just-the-docs/just-the-docs/actions/workflows/ci.yml/badge.svg" alt="CI Build status"></a> <a href="https://app.netlify.com/sites/just-the-docs/deploys"><img src="https://api.netlify.com/api/v1/badges/9dc0386d-c2a4-4077-ad83-f02c33a6c0ca/deploy-status" alt="Netlify Status"></a>
 </p>
 <br><br>
 <p align="center">