Managing Updates

After creating your project with LaunchFast, the code is entirely yours. You do not need to track upstream changes — only adopt updates that solve a problem you actually have. This page covers updating Node.js and npm dependencies.

Updating Node.js

LaunchFast defaults to the current active LTS version of Node.js. To change the version, update two places:

  1. The engines.node field in package.json (must be an exact version, not a range)
  2. The base image in Dockerfile

Example for Node.js 20.3.1:

// package.json
{
  "engines": {
    "node": "20.3.1"
  }
}

// Dockerfile
FROM node:20.3.1-bookworm-slim as base

Use an exact version (not a range) in package.json because the build server compilation depends on it.

Updating npm dependencies

Use npm-check-updates to review and apply dependency updates safely. Start by checking what is available:

npx npm-check-updates

Updates are color-coded: green for patches, cyan for minor, red for major or zero-version changes.

Step 1: Patch versions (green)

Patch updates are backward-compatible bug fixes. Update them all at once:

npx npm-check-updates -u --target patch
npm i

Run tests after updating to confirm nothing broke:

npm run test -- run
npm run test:e2e:run

Step 2: Minor versions (cyan)

Minor updates add new features in a backward-compatible way. Update these one package at a time and review release notes for each:

npx npm-check-updates -u --filter <package-name>
npm i

Run tests after each update, then commit individually.

Step 3: Major versions (red)

Major updates may contain breaking changes. Read the release notes carefully, update one package at a time, make any required code changes, and run the full test suite before committing.

npx npm-check-updates -u -f <package-name>
npm i
npm run test -- run
npm run test:e2e:run