Express framework

The Express extension streamlines the process of building Express application rocks.

It facilitates the installation of Express application dependencies, including Node.js and npm, inside the rock. Additionally, it transfers your project files to /app within the rock.

By default, the system foundation, or base, is set as bare to generate a lightweight image. The Express extension is compatible with the bare and ubuntu@24.04 bases.

Project requirements

There are 3 requirements to be able to use the expressjs-framework extension:

  1. The application should reside in the app directory.

  2. The application should have a package.json file.

  3. The package.json file should define the start script. For more information, see the npm documentation.

Node.js version

The npm-include-node and npm-node-version keys specify the version of Node.js to be installed. For example:

rockcraft.yaml
parts:
  expressjs-framework/install-app:
    npm-include-node: true
    npm-node-version: 20.12.2

For more examples of the npm-node-version key, see NPM Plugin.

If you don’t customize the version of node, it will be installed from the Ubuntu package repository.

Additional runtime packages

Installing additional runtime packages is currently unsupported.