diff --git a/.github/workflows/js.yml b/.github/workflows/js.yml
index 005a44eda30cf1f5ff4b2a3ca084ffcc8625c2db..882a09331849b227d146b29fc85abdcf7aab049d 100644
--- a/.github/workflows/js.yml
+++ b/.github/workflows/js.yml
@@ -9,7 +9,7 @@ jobs:
 
     strategy:
       matrix:
-        node-version: [9.x, 13.x]
+        node-version: [10.x, 13.x]
 
     steps:
     - uses: actions/checkout@v2
diff --git a/README.md b/README.md
index 1a940801ca2b36d5a21137bd62d883cea9f91e6c..1f1f83eba6bb342f0c76277cd0f9e77a995793c8 100644
--- a/README.md
+++ b/README.md
@@ -88,7 +88,7 @@ The core of reveal.js is very easy to install. You'll simply need to download a
 
 Some reveal.js features, like external Markdown and speaker notes, require that presentations run from a local web server. The following instructions will set up such a server as well as all of the development tasks needed to make edits to the reveal.js source code.
 
-1. Install [Node.js](https://nodejs.org/) (9.0.0 or later)
+1. Install [Node.js](https://nodejs.org/) (10.0.0 or later)
 
 1. Clone the reveal.js repository
    ```sh
diff --git a/package.json b/package.json
index f39188dc765fad57a41487557a1f99a74ff7a463..38761cb12e44f5f1ec953b96dbee48a66d945924 100644
--- a/package.json
+++ b/package.json
@@ -21,7 +21,7 @@
     "url": "git://github.com/hakimel/reveal.js.git"
   },
   "engines": {
-    "node": ">=9.0.0"
+    "node": ">=10.0.0"
   },
   "devDependencies": {
     "@babel/core": "^7.8.7",