Currently, Glitch supports Node.js versions 6.17.1 through 16.14.2, but will be deprecating (removing from containers) Node versions below 9 throughout December 2023.
These are the versions of Node you can use as of 2023-11-15:
16.14.2 14.19.1 12.0.0 11.15.0 10.24.1 9.11.2 8.17.0 - deprecating Dec. 15 2023 6.17.1 - deprecating Dec. 1 2023
You can change your version of Node by updating the engines field specified in your project's package.json file. You can specify the major version of Node you'd like to use as follows:
"engines": { "node": "16.x" }
Here's our timetable for Node version deprecation
You can read more about why this work is happening on our blog.
Date | What’s happening | What you need to do |
December 1 | Deprecating node <=6 | For projects still on node 6 or below, Edit the node version in your package.json file to 16.x |
December 15 | Deprecating node <=8 | For projects still on node 8 or below, Edit the node version in your package.json file to 16.x |
Early 2024 (before April) | Container updates bring supported node versions | Glitch will be updated with fully supported node versions, along with an updated node version support timetable giving users at least six weeks to plan upgrades going forward |
What happens to projects running deprecated versions of Node?
- Projects that have the Node engine set in package.json to a deprecated version (see list of supported versions above) will not run, but you can still go to the editor and update Node to a version we do support.
- Projects that do not have the Node engine set in package.json will default to using Node version 10.24.1.
Some things to note:
- Do not edit the version of Node within the terminal or add Node as a dependency in your package.json file. Users have reported inconsistent and mostly broken experiences from doing so.
- We're working on improving our response to new Node versions coming out and plan to have not only the latest version of Node, but a predictable, consistent schedule for keeping Node updated on containers by the end of Q1 of 2024 (before April). We will not be deprecating any more versions of Node until that work is complete.
How Glitch installs Node dependencies based on Node version:
Glitch typically uses whatever version of npm comes with the version of Node you're using. For Node versions older than Node 14, though, it uses pnpm.
-
If you have a project that uses Node 14 or Node 16, packages will be installed via npm.
-
If you have a project that uses Node 14 or Node 16 and it is currently getting stuck in an install loop, open the project terminal and run the command,
enable-npm
. -
If you have a project that uses a version of Node that is older than Node 14 (Node 12, 10, etc), packages will still be installed via pnpm, unless you have specifically opted into using npm in the past.