Skip to content

Title

Date: 2024-08-13

Status: proposed

Scope

  • [x] backend
  • [x] playground
  • [x] navigation
  • [x] footer
  • [x] top-level-search
  • [x] contact-module
  • [x] global-components-tools

Context

For packages and apps, we want to treat node versions differently.

Apps should have a fixed node version, to have reproducible environments while packages should have a range of node versions, to support as many teams as possible.

Decision

We achieve this, by setting node as a dependency inside our apps:

{
  "dependencies": {
    "node": "20"
  }
}

For packages, we will use the engines field in the package.json to specify a range of node versions, that are supported:

{
  "engines": {
    "node": "20 || 22 || 24"
  }
}

Consequences

Users of our packages will be able to use them with different node versions.

For our applications, we keep full control over the node version we use.