ReadyMage Help
  • ReadyMage
  • USER PORTAL
    • User Portal Access
    • Change Password
    • Two-Factor Authentication
  • Project Management
    • Project List
    • Project Settings
      • General Info
      • Git Management
      • Environments
      • Members and roles
      • Security
        • Deletion Protection
        • TFA Enforcement
      • Delete Project
  • Application Management
    • Magento Details
    • Domain Management
    • Logs & Monitoring
    • Backups
      • Backup process
      • Disaster recovery process
    • Deployments
      • Deploy without build cache
      • Queue Tab (Launching soon)
      • Settings Tab (Launching soon)
        • Automatic Deployments
        • ReadyMage Maintenance Page
          • Website Access During Maintenance
      • Notifications Tab (Launching soon)
        • Managing email notifications
        • Managing Slack notifications
      • Pipeline Deployments
      • Pipeline Configuration file
        • Migration guide from 0.x.x to 1.0.0
    • SSH Access
      • SSH Usage
      • Database Access using Graphical Interface
      • Troubleshooting
    • IP Whitelist
    • Password Authentication
    • Database & Media
    • Search Engine Bots Discovery
  • Service Management
    • Server-Side Rendering
    • SFTP
    • NewRelic
    • Packagist Modules
    • Cloudflare
  • Infrastructure Management
    • Autoscale
    • Sleep Mode
    • Manage Services
    • Historical Resource Usage
  • PROJECT DEVELOPMENT
    • Node.js version
    • Store access
    • Creating a Production Environment
    • Additional Environments
    • ScandiPWA, PWA Studio, Hyva, or Luma
    • Project Migration to ReadyMage
    • SSH Access for Magento CLI, database and media
    • Code customization and local setup
    • Extension installation
    • Add translations (switch locale)
    • Existing ScandiPWA Project Code Migration
    • Database and media migration
    • Redirect setup
    • Connect CDN and WebP optimization
    • Email setup
    • Changing the Domain & Multi-Store Set up
    • Internal service addresses
    • Kibana filters and useful CLI commands
    • Persistent directories
  • FAQ
    • General
    • Autoscaling
    • Billing
    • User Portal Options
    • Services connected to ReadyMage
    • Hosting, managing resources and autoscaling
    • Source Code Management
    • ScandiPWA and Magento Versions, Commerce Edition and Upgrades
    • Supported software versions
Powered by GitBook
On this page
  • package.json
  • .node-version
  • Priority

Was this helpful?

  1. PROJECT DEVELOPMENT

Node.js version

We are using Node 20 with NPM 10 as the default Node version. If you need a different Node and NPM version, update your code repository according to this documentation.

ReadyMage provides support for running all LTS releases of Node.js starting Node 14: Node 14 with NPM 6, Node 16 with NPM 8, Node 18 with NPM 10, Node 20 with NPM 10 and Node 22 with NPM 10.

Version mapping looks like this:

Node version
NPM version
Yarn version

14

6

1

16

8

1

18

10

1

20

10

1

22

10

1

You can select the Node and NPM versions according to your Magento theme installation and build requirements using one of the following methods:

package.json

By adjusting package.json file engines.node field you can specify the Node version that is required to be used for your theme dependency installation and command execution.

package.json
{
    "name": "theme-name",
    "version": "0.0.1",
    "dependencies": {
        // Insert your dependencies here
    },
    "scripts": {
        // Insert your scripts here
    },
    "engines": {
        "node": "^22.0.0"  // Supports any version of Node 22.x.x
        "node": ">=16.0.0 <=18.0.0"  // Supports Node versions from 16.x.x to 18.0.0
        // The range will prioritize the lowest available version within the specified range
    }
}

.node-version

We don't recommend using this method of selecting the Node.js version unless you know what you are doing.

example .node-version
v22.3.0

The .node-version file should be located in the same directory as package.json.

.node-version file syntax allows you to specify the exact version that you need.

v22.3.0  // Functional, but non-LTS releases are not recommended.
v22.3    // Functional.
22       // Functional.
20       // Recommended and fully functional.

The advantage of this approach is that you can install any version you want. Not just versions from a provided list. Using a non-LTS version is not recommended.

Priority

Node version defined in .node-version has a higher priority than the one defined in package.json file engines.node field.

PreviousHistorical Resource UsageNextStore access

Last updated 1 month ago

Was this helpful?

General documentation for engines field is available .

here