Skip to content

Generation of JS documentation with AI - #3915

Open
SC-Samir wants to merge 1 commit into
masterfrom
ai-nodejs
Open

Generation of JS documentation with AI#3915
SC-Samir wants to merge 1 commit into
masterfrom
ai-nodejs

Conversation

@SC-Samir

@SC-Samir SC-Samir commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

This PR permit to show what Chatgpt have generated, for the JS documentation

@SC-Samir
SC-Samir requested a review from EtienneM August 6, 2026 09:48
@SC-Samir SC-Samir self-assigned this Aug 6, 2026
@SC-Samir SC-Samir added the T: Investigation Looking specifically into something not clearly defined label Aug 6, 2026

@EtienneM EtienneM left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just quickly went through this. Overall it's kind of ok. But the content still need a lot of human review. We can't merge it as is. There is a lot of duplicated content. I find there are some pages with useless content. The content is often too long, for nothing, hiding the real useful content behind lots of useless words.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

question: I don't understand the removal of this page. We used to have lots of questions about Puppeteer. There is a lot of information lost here

Comment on lines +13 to +43
## Scalingo stack context

## Node.js Versions
A Scalingo stack is the Ubuntu-based operating-system image used by the application's build and runtime containers. The stack is separate from the Node.js release selected through `engines.node`.

### Availability
Each listed stack uses an Ubuntu long-term support (LTS) release.

The following Node.js versions are available:
| Stack | Base operating system | Status | Lifecycle |
| --- | --- | --- | --- |
| `scalingo-22` | Ubuntu 22.04 LTS | Deprecated | Discontinued on 1 June 2027 |
| `scalingo-24` | Ubuntu 24.04 LTS | Supported | Supported through May 2029 |
| `scalingo-26` | Ubuntu 26.04 LTS | Supported and latest | Supported through May 2031 |

| Node.js version | `scalingo-22` ([EOL]) | `scalingo-24` | `scalingo-26` |
| --------------: | --------------------: | --------------: | --------------: |
| `v26` | up to `26.5.1` | up to `26.5.1` | up to `26.5.1` |
| `v24` (LTS) | up to `24.18.1` | up to `24.18.1` | up to `24.18.1` |
| `v22` (LTS) | up to `22.23.2` | up to `22.23.2` | up to `22.23.2` |
New applications currently use `scalingo-26` by default. Existing applications keep their selected stack until it is changed and the application is redeployed.

{% include scalingo_22_deprecation_note.md %}

### Select a Version

The default Node.js version on all stacks is the latest `v24` version. If you
need to install another version, specify it in the `engines.node` key of your
`package.json` file.\\
For example, to install the latest Node.js version of the `v24` branch:

```json
{
"name": "my-app",
"engines": {
"node": "24"
}
}
```

### Dependencies Installation

The dependencies of your project are installed either with the [npm package
manager](https://www.npmjs.com/) or the [Yarn package
manager](https://yarnpkg.com/).

If a `yarn.lock` file is present at the root of your project, yarn will be used
to install the dependencies and run scripts, otherwise npm will build the
dependencies during the deployment.

If a `package-lock.json` file is present at the root of your project and you
are using npm version 6 or higher, Scalingo will use `npm ci` (for
`clean-install`) to install your dependencies. Otherwise Scalingo will fallback
to `npm install`.

{% note %}
You can specify the version of yarn you want to use by defining it in the
`package.json` file, with the key `engines.yarn`.
{% endnote %}

### Private Dependency

{% note %}
Yarn does not handle private modules, if you use them, keep using npm
{% endnote %}

#### NPM Private Modules

First you need to create a read-only token with the NPM account you want to authenticate:

```
npm token create --read-only
```

Then set this token as environment variable (replace the 0-value by the token obtained in the previous command):
Check an application's stack:

```bash
scalingo env-set NPM_TOKEN=00000000-0000-0000-0000-00000000
```

Add the following NPM configuration file `.npmrc` to the root directory of your project:

```
//registry.npmjs.org/:_authToken=${NPM_TOKEN}
scalingo --app my-app apps-info
```

Add this file and commit it in your Git repository, the environment variable will be automatically used during the build.

### Configuring NPM

Sometimes a project needs custom npm behavior to set up proxies, use a different registry, etc. For such behavior, simply include an .npmrc file in the root of your project.
List the stacks available to your account:

```
# .npmrc
registry = 'https://custom-registry.com/'
```bash
scalingo stacks
```

npm will also read the configuration from any environment variable starting with NPM_CONFIG.

{% note %}
If NPM_CONFIG_PRODUCTION is true, npm will automatically run all scripts in a subshell where NODE_ENV is 'production'.
The number in a stack name identifies the Ubuntu release, not the Node.js release. An application using `scalingo-24` can run Node.js 22, 24, or 26 when that Node.js line is available in the buildpack inventory.
{% endnote %}

#### Private Modules from SCM (GitHub/GitLab/etc.)

Your private module should be fetched from the SCM service through SSH. You can specify it this way:
The stack matters most for native Node.js modules and packages that use operating-system libraries. A stack migration rebuilds the application against a different Ubuntu base and should be tested before production. See [Scalingo Stacks]({% post_url platform/internals/stacks/2000-01-01-stacks %}).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we want to duplicate that kind of information. We have the stack page for this

Comment on lines +164 to +166
- **Explicit buildpack support:** behavior implemented specifically in the buildpack.
- **Documented compatibility:** a Scalingo-tested deployment recipe.
- **Generic compatibility:** a framework can run because it produces a normal Node.js application.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is weird


The buildpack itself does not search nested directories. For monorepos, configure the deployed application root through Scalingo platform features before the Node.js buildpack runs.

## Stack used for build and runtime

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This shouldn't be duplicated here


Do not store credentials directly in committed configuration. Reference an environment variable instead.

## Choose or migrate the Scalingo stack

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duplication, once again

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I find this page too detailed. And I think it belongs to the "start" page

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we really need a dedicated page for this? It seems too detailed for nothing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T: Investigation Looking specifically into something not clearly defined

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants