diff --git a/.github/main.workflow b/.github/main.workflow
deleted file mode 100644
index 009259749e3d2ffbadd2f3d2955606e7c892e4ec..0000000000000000000000000000000000000000
--- a/.github/main.workflow
+++ /dev/null
@@ -1,26 +0,0 @@
-workflow "Publish to RubyGems" {
-  on = "release"
-  resolves = [
-    "Publish to GPR",
-    "Publish to Ruby Gems",
-  ]
-}
-
-action "Build from Gemspec" {
-  uses = "scarhand/actions-ruby@master"
-  runs = "gem build just-the-docs.gemspec"
-}
-
-action "Publish to Ruby Gems" {
-  uses = "scarhand/actions-ruby@master"
-  needs = ["Build from Gemspec"]
-  runs = "gem push *.gem"
-  secrets = ["RUBYGEMS_AUTH_TOKEN"]
-}
-
-action "Publish to GPR" {
-  uses = "scarhand/actions-ruby@master"
-  needs = ["Build from Gemspec"]
-  secrets = ["GPR_AUTH_TOKEN"]
-  runs = " gem push --key [\"GPR_AUTH_TOKEN\"] --host https://rubygems.pkg.github.com/pmarsceill *.gem"
-}
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..340f60b1d401fc11278dcc2ae6a5098d27a4baf4
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,35 @@
+on: [push]
+
+name: CI
+
+jobs:
+
+  jekyll:
+    name: Build Jekyll site
+    runs-on: ubuntu-latest
+    steps:
+
+    - uses: actions/checkout@master
+
+    - 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 "chmod 777 /srv/jekyll && jekyll build"
+        
+  css:
+    name: Stylelint
+    runs-on: ubuntu-latest
+    steps:
+    
+    - uses: actions/checkout@master
+
+    - name: Use Node.js 10.x
+      uses: actions/setup-node@v1
+      with:
+        version: 10.x
+
+    - name: npm install, build, and test
+      run: |
+        npm install
+        npm test
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
new file mode 100644
index 0000000000000000000000000000000000000000..bba33db1b4be52ebf99ac2e90524458adc5211d2
--- /dev/null
+++ b/.github/workflows/publish.yml
@@ -0,0 +1,39 @@
+name: Publish Gem
+
+on: [release]
+
+jobs:
+  build:
+    name: Build + Publish
+    runs-on: ubuntu-latest
+
+    steps:
+    - uses: actions/checkout@master
+    - name: Set up Ruby 2.6
+      uses: actions/setup-ruby@v1
+      with:
+        version: 2.6.x
+
+    - name: Publish to GPR
+      run: |
+        mkdir -p $HOME/.gem
+        touch $HOME/.gem/credentials
+        chmod 0600 $HOME/.gem/credentials
+        printf -- "---\n:github: Bearer ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
+        gem build just-the-docs.gemspec
+        gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
+      env:
+        GEM_HOST_API_KEY: ${{secrets.GPR_AUTH_TOKEN}}
+        OWNER: pmarsceill
+
+    - name: Publish to RubyGems
+      run: |
+        mkdir -p $HOME/.gem
+        touch $HOME/.gem/credentials
+        chmod 0600 $HOME/.gem/credentials
+        printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
+        gem build just-the-docs.gemspec
+        gem push *.gem
+      env:
+        GEM_HOST_API_KEY: ${{secrets.RUBYGEMS_AUTH_TOKEN}}
+
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index f9fa81d0278cdca47fc5339540aeb8f3c6c493b7..0000000000000000000000000000000000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-language: ruby
-rvm:
-  - 2.3.0
-env:
-  - TRAVIS_NODE_VERSION="9.3.0"
-
-install:
-  - npm install
-  - gem install bundler --version '>=1.17.1'
-  - bundle install
-
-script:
-  - npm run test
-  - bundle exec jekyll build