heroku/heroku-buildpack-nodejs

Heroku's classic buildpack for Node.js apps

1,346

stars

1,871

commits

Shell

primary language

Sep 9, 2026

updated

devcenter.heroku.com/categories/nodejs-support
buildpack
heroku
heroku-languages
nodejs

README

Heroku Buildpack for Node.js

nodejs

CI

This is the official Heroku buildpack for Node.js apps.

Getting Started

See the Getting Started with Node.js on Heroku tutorial.

Application Requirements

A package.json file must be present in the root (top-level) directory of your app's source code.

The buildpack supports the npm, Yarn, and pnpm package managers, selected by the lockfile present in your app:

  • package-lock.json (npm)
  • yarn.lock (Yarn)
  • pnpm-lock.yaml (pnpm)

If no lockfile is found, npm is used. A lockfile is strongly recommended for reproducible builds.

Configuration

Node.js Version

Specify the Node.js version for your app with the engines.node field in package.json:

{
  "engines": {
    "node": "24.x"
  }
}

We recommend using a major version range (like 24.x) rather than pinning an exact version, so your app automatically receives Node.js security and bug-fix updates.

If you don't specify a version, the buildpack uses the current recommended LTS release.

For the list of supported Node.js versions, see Heroku Node.js Support.

Documentation

For more information about using Node.js on Heroku, see Dev Center.

Contributors

(top 30 of 60)

hunterloftis

308 commits

colincasey

199 commits

jmorrell

170 commits

heroku/heroku-buildpack-nodejs

Heroku's classic buildpack for Node.js apps

1,346

stars

1,871

commits

Shell

primary language

Sep 9, 2026

updated

devcenter.heroku.com/categories/nodejs-support
buildpack
heroku
heroku-languages
nodejs

README

Heroku Buildpack for Node.js

nodejs

CI

This is the official Heroku buildpack for Node.js apps.

Getting Started

See the Getting Started with Node.js on Heroku tutorial.

Application Requirements

A package.json file must be present in the root (top-level) directory of your app's source code.

The buildpack supports the npm, Yarn, and pnpm package managers, selected by the lockfile present in your app:

  • package-lock.json (npm)
  • yarn.lock (Yarn)
  • pnpm-lock.yaml (pnpm)

If no lockfile is found, npm is used. A lockfile is strongly recommended for reproducible builds.

Configuration

Node.js Version

Specify the Node.js version for your app with the engines.node field in package.json:

{
  "engines": {
    "node": "24.x"
  }
}

We recommend using a major version range (like 24.x) rather than pinning an exact version, so your app automatically receives Node.js security and bug-fix updates.

If you don't specify a version, the buildpack uses the current recommended LTS release.

For the list of supported Node.js versions, see Heroku Node.js Support.

Documentation

For more information about using Node.js on Heroku, see Dev Center.

Contributors

(top 30 of 60)

hunterloftis

308 commits

colincasey

199 commits

jmorrell

170 commits

Languages

Shell

79.1%

Ruby

10.2%

Rust

4.4%

JavaScript

4.1%

TypeScript

1.6%