diff --git a/CHANGELOG.md b/CHANGELOG.md
index 80b877e5..fb80ecf0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed
- Bumped AI SDK and associated packages version. [#752](https://github.com/sourcebot-dev/sourcebot/pull/752)
+- Bumped Node.js version to v24. [#753](https://github.com/sourcebot-dev/sourcebot/pull/753)
## [4.10.12] - 2026-01-16
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index f5f58631..78181567 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -2,7 +2,7 @@
>[!NOTE]
> Building from source is only required if you'd like to contribute. The recommended way to use Sourcebot is to use the [pre-built docker image](https://github.com/sourcebot-dev/sourcebot/pkgs/container/sourcebot).
-1. Install go,
docker, and
NodeJS. Note that a NodeJS version of at least `21.1.0` is required.
+1. Install
go,
docker, and
NodeJS. Note that a NodeJS version of at least `24` is required.
2. Install [ctags](https://github.com/universal-ctags/ctags) (required by zoekt)
```sh
diff --git a/Dockerfile b/Dockerfile
index 5ea04e1b..c54576b8 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -15,7 +15,7 @@ ARG NEXT_PUBLIC_SENTRY_BACKEND_DSN
ARG NEXT_PUBLIC_LANGFUSE_PUBLIC_KEY
ARG NEXT_PUBLIC_LANGFUSE_BASE_URL
-FROM node:20-alpine3.19 AS node-alpine
+FROM node:24-alpine3.23 AS node-alpine
FROM golang:1.23.4-alpine3.19 AS go-alpine
# ----------------------------------
diff --git a/docs/docs/configuration/environment-variables.mdx b/docs/docs/configuration/environment-variables.mdx
index e29fb88f..a3b80873 100644
--- a/docs/docs/configuration/environment-variables.mdx
+++ b/docs/docs/configuration/environment-variables.mdx
@@ -36,6 +36,10 @@ The following environment variables allow you to configure your Sourcebot deploy
| `SOURCEBOT_TELEMETRY_DISABLED` | `false` |
Enables/disables telemetry collection in Sourcebot. See [this doc](/docs/overview.mdx#telemetry) for more info.
| | `DEFAULT_MAX_MATCH_COUNT` | `10000` |The default maximum number of search results to return when using search in the web app.
| | `ALWAYS_INDEX_FILE_PATTERNS` | - |A comma separated list of glob patterns matching file paths that should always be indexed, regardless of size or number of trigrams.
| +| `NODE_USE_ENV_PROXY` | `0` |Enables Node.js to automatically use `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables for network requests. Set to `1` to enable or `0` to disable. See [this doc](https://nodejs.org/en/learn/http/enterprise-network-configuration) for more info.
| +| `HTTP_PROXY` | - |HTTP proxy URL for routing non-SSL requests through a proxy server (e.g., `http://proxy.company.com:8080`). Requires `NODE_USE_ENV_PROXY=1`.
| +| `HTTPS_PROXY` | - |HTTPS proxy URL for routing SSL requests through a proxy server (e.g., `http://proxy.company.com:8080`). Requires `NODE_USE_ENV_PROXY=1`.
| +| `NO_PROXY` | - |Comma-separated list of hostnames or domains that should bypass the proxy (e.g., `localhost,127.0.0.1,.internal.domain`). Requires `NODE_USE_ENV_PROXY=1`.
| ### Enterprise Environment Variables | Variable | Default | Description |