career_conversation / setup /SETUP-node.md
FrederikMark's picture
Upload folder using huggingface_hub
648beef verified

A newer version of the Gradio SDK is available: 6.6.0

Upgrade

Extra setup details for NodeJS and Playwright

In Cursor, right click on this file in the Explorer and select "Open Preview" to see it with formatting, or look at the version online in Github.

In weeks 4 and 6, we will make use of NodeJS on your computer.

PC users take note: if you are using WSL (which you will need to in Week 6), then at that point you will need to install node again on your Ubuntu side.

Instructions for installing Node

Check if you have node installed - should be v22 or later:
!node --version

Here are super clear installation instructions, courtesy of our AI friend:

https://chatgpt.com/share/68103af2-e2dc-8012-b259-bc135a23273b

In most cases, this involves simply visiting https://nodejs.org and follow the instructions. PC users on WSL, remember to follow the Linux instructions.

When complete, check that this works in the notebook. You may need to quit and relaunch Cursor (also close any open terminals in Cursor).

!node --version
!npx --version

Installing Playwright

Playwright is the browser automation software from Microsoft that we use in weeks 4 and 6.

On Mac / PC:
uv run playwright install

On Linux / WSL:
uv run playwright install --with-deps chromium

Troubleshooting - if node-based MCP servers hang on Windows / WSL

For some WSL users, running npx based MCP servers seems to hang. Here is the fix!

First, quit and relaunch Cursor, to pick up any changes since you installed node. Also, exit any open Terminals in Cursor and open a new terminal.

In the terminal, run:
which node

This should give you a path to node running on your WSL subsystem. Suppose it's something like:
/home/user/.nvm/versions/node/v22.18.0/bin

Then run this command, carefully replacing the path here with your one:
!export PATH="/home/user/.nvm/versions/node/v22.18.0/bin:$PATH"

Also this, again carefully replacing the path with your one:
os.environ["PATH"] = "/home/user/.nvm/versions/node/v22.18.0/bin:" + os.environ["PATH"]

And then try the prior cell again.
And if even that doesn't work, try changing the MCP params with the full path of npx:

playwright_params = {"command": "/home/user/.nvm/versions/node/v22.18.0/bin/npx","args": [ "@playwright/mcp@latest"]}

And / or this approach:

env = {"PATH": "/home/user/.nvm/versions/node/v22.18.0/bin:" + os.environ["PATH"]}
playwright_params = {"command": "npx","args": [ "@playwright/mcp@latest"], "env": env}

If that doesn't work, let me know! A heartfelt thank you to Radoslav R. and André R. for battling with this, finding the fixes and sharing them!