[Dev] Update devcontainer image, settings and docs (#6822)

* Updated devcontainer image to a version that supports the node >= 24.9.0 prerequisite.
Also updated the prerequisite mentioned in CONTRIBUTING.md to match that newer prerequisite.

* Update CONTRIBUTING.md with devcontainer instructions

Added important note about using pnpm with devcontainers and updated Podman instructions.

---------

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
This commit is contained in:
Juan Roman 2025-12-03 20:06:22 -05:00 committed by GitHub
parent 2253289c76
commit 507ac17f95
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 13 additions and 3 deletions

View File

@ -9,7 +9,7 @@
{
"name": "Node.js & TypeScript",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/typescript-node:1-22-bookworm",
"image": "mcr.microsoft.com/devcontainers/typescript-node:4-24-bookworm",
"features": {
"ghcr.io/devcontainers/features/github-cli:1": {
"installDirectlyFromGitHubRelease": true,
@ -19,6 +19,9 @@
"version": "latest"
}
},
"containerEnv": {
"PORT": "8000"
},
"customizations": {
"vscode": {
"settings": {

View File

@ -25,6 +25,7 @@ ls:
<<: *cfg
test: *src
ignore:
- .pnpm-store
- node_modules
- .vscode
- .github

View File

@ -47,11 +47,18 @@ This Linux environment comes with all required dependencies needed to start work
[codespaces-link]: <https://github.com/codespaces/new?hide_repo_select=true&repo=620476224&ref=beta>
[devcontainer-ext]: <https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers>
> [!IMPORTANT]
> Due to quirks of devcontainer port forwarding, you must use **`pnpm start:podman`** to start a local dev server from within a devcontainer.
> All other instructions remain the same as local development.
### Podman
For those who prefer Docker containers, see [this instructions page](./docs/podman.md) for information on how to setup a development environment with Podman.
### Local Development
#### Prerequisites
- node: >=22.14.0 - [manage with pnpm](https://pnpm.io/cli/env) | [manage with fnm](https://github.com/Schniz/fnm) | [manage with nvm](https://github.com/nvm-sh/nvm) | [manage with volta.sh](https://volta.sh/)
- node: >=24.9.0 - [manage with pnpm](https://pnpm.io/cli/env) | [manage with fnm](https://github.com/Schniz/fnm) | [manage with nvm](https://github.com/nvm-sh/nvm) | [manage with volta.sh](https://volta.sh/)
- pnpm: 10.x - [how to install](https://pnpm.io/installation) (not recommended to install via `npm` on Windows native) | [alternate method - volta.sh](https://volta.sh/)
- The repository [forked](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo) and [cloned](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) locally on your device
@ -91,7 +98,6 @@ Notable topics include:
- [Linting & Formatting](./docs/linting.md)
- [Localization](./docs/localization.md)
- [Enemy AI move selection](./docs/enemy-ai.md)
- [Running with Podman](./docs/podman.md)
Again, if you have unanswered questions please feel free to ask!