Set Up Your Machine
Three installs, one account, three commands that prove them. Do it tonight, not in the room while fifty laptops fight over one router.
install Node, git and an editor, prove each one works with a command, and open a project folder you own
Nothing in this lab is clever. It is the twenty minutes that decides whether the next three hours are about building software or about why nothing works.
Every step below ends with a command that prints something. If it prints, that install is real. If it does not print, you have a specific problem with a specific fix, and this page has it.
Three installs, one account, and your agent is not on the list
You are installing Node, git and VS Code, and creating a GitHub account. That is the whole bench. The agent comes in Lab 01, and it is deliberately not here.
Claude Code’s own setup docs are blunt about why: the native installer works on Windows 10 1809 or newer with 4 GB of RAM, and needs no admin rights, no WSL and no Node.js at all (setup). There is even a desktop app whose Code tab needs no terminal (desktop quickstart).
So none of this is for the agent. It is for your project. The QAIRU Event Sign-up app you build across this course needs Node to run, git to remember what changed, and an editor so you can read what the agent wrote.
Where the terminal lives, and which one you have
A terminal is a window that runs commands. You need one open before anything else.
- Windows — press Start, type
terminal, open Windows Terminal. Do not have it? Typepowershellinstead, or install it withwinget install Microsoft.WindowsTerminal. It is free and open source (microsoft/terminal), and later you will want its split panes:Alt+Shift+Dputs the agent on the left and the logs on the right. - macOS —
Cmd+Space, typeterminal, Enter. - Linux —
Ctrl+Alt+Ton most desktops.
Now read the line where your cursor sits. On Windows it tells you which shell you are in, and pasting a command into the wrong one is a standard first-hour failure — Anthropic’s own docs list the two error messages it produces (setup).
| The line looks like | You are in | So |
|---|---|---|
PS C:\Users\you> |
PowerShell | commands written “for PowerShell” belong here |
C:\Users\you> |
CMD | commands written “for CMD” belong here |
you@laptop:~$ |
Git Bash, WSL, macOS or Linux | the macOS/Linux line in any tutorial works as written |
Install it, then prove it
Install Node — and npm arrives with it
Go to the official Node.js download page and take the LTS build for your operating system: the
.msiinstaller on Windows, the.pkginstaller on macOS, or the instructions that page gives for your distribution on Linux. Accept the defaults.LTS means long-term support: the boring version, which is the one you want. Anything from version 20 up works here. Take the newest LTS anyway — if you ever install Claude Code through npm instead of its native installer, that route wants Node.js 22 or newer (setup).
Then close the terminal you had open and open a new one. Not superstition: it is the single most common reason a fresh install looks broken. A running terminal keeps the environment it started with and never notices an installer changing it.
> node -v v22.20.0 > npm -v 10.9.3Your numbers will be different and probably higher. What matters is the shape:
node -vanswers with avand digits, andnpm -vanswers with digits. npm is the package manager that comes bundled with Node — you do not install it separately.Install git
Windows: download and run Git for Windows. Take the defaults. Anthropic’s docs call this optional for Claude Code and then recommend it anyway: with Git for Windows present, Claude Code uses Git Bash for its Bash tool; without it, it falls back to a PowerShell tool (setup). You need git from Lab 02 regardless, so install it now.
macOS: run
git --version. If git is missing, macOS offers to install the developer command line tools — accept, wait, run the command again.Linux (Debian/Ubuntu):
sudo apt install git.> git --version git version 2.51.0Again: the exact number is not the point. The words
git versionfollowed by digits are.Install VS Code and open a folder with it
VS Code is a free editor, open source at its core (microsoft/vscode). Download the build for your operating system from Microsoft and install it, or on Windows run
winget install Microsoft.VisualStudioCode.Then do the one thing that actually matters: File → Open Folder, and pick a folder. Not a file — a folder. Everything in this course, and everything an agent does, is scoped to a folder. If you open loose files instead, nothing else in the course will line up.
Make the folder you will live in for the rest of the course
One project, one folder. Not the Desktop, not your home directory — a folder with a name.
cd $HOME\Documents mkdir qairu-event cd qairu-eventcd ~/Documents mkdir qairu-event cd qairu-eventIf you chain those onto one line, PowerShell separates commands with
;and Bash with&&— the same split behind two of the error messages in the next section.This matters more than it looks. Launching an agent in your home folder or on the Desktop hands it every file you own to read and index.
cdinto the project first, every time.Prove all of it in one fresh terminal
In a terminal you opened after every install, standing inside
qairu-event:node -v git --versionTwo version numbers, no errors. Then open this folder in VS Code — File → Open Folder, or type
code .if your installer added that shortcut — and confirm you can see the (empty) file tree on the left.That is the whole definition of done. Two numbers and a folder.
When Windows argues back
Most of this room is on Windows; most tutorials are written by people who are not. Read the message instead of retrying the command. Every row below comes from Anthropic’s setup and install troubleshooting pages, and every one generalises past Claude Code to almost anything you install this year.
| The message | What actually happened | Fix |
|---|---|---|
'x' is not recognized |
that folder is not on your PATH — or your terminal predates the install | open a new terminal first; if it still fails, the folder really is missing from PATH |
The token '&&' is not a valid statement separator |
a CMD command was pasted into PowerShell | use ; between commands, or switch shells |
'irm' is not recognized |
a PowerShell command was pasted into CMD | open PowerShell and run it there |
running scripts is disabled on this system |
PowerShell’s execution policy is blocking a script shim; the docs list this exact error for npm’s shims | run the same command in CMD or Git Bash, where no PowerShell policy applies |
Claude Code does not support 32-bit Windows |
you opened “PowerShell (x86)” | close it, open plain PowerShell or Windows Terminal |
syntax error near unexpected token '<', or curl returns 403 |
an install script returned an HTML page — a network or region block | try another network; Kazakhstan itself is supported, see below |
The accounts to make tonight
All four of these cost zero and none of them asks for a card.
| Account | Where | Why you want it |
|---|---|---|
| GitHub | github.com | your code’s home and your public portfolio from Lab 02 onward |
| GitHub Education | education.github.com/pack | if you have a university email: Copilot Student, Codespaces at the Pro level (180 hours of compute a month), and a free domain from Namecheap, .TECH or Name.com |
| Claude | claude.ai | a free account is enough to follow this course in a browser; Claude Code itself needs a paid plan, see below |
| A spare Google account and a free ChatGPT account | — | free agents live behind them: Antigravity’s Individual plan at $0 (pricing, 18+ only per its FAQ) and Codex, included on the free ChatGPT tier with a small allowance (plans) |
Two honest notes before you budget anything.
Kazakhstan is on Anthropic’s supported-countries list for both Claude.ai and the API (supported countries), so no VPN is needed. But the free Claude plan does not include Claude Code — that needs Pro, Max, Team, Enterprise or Console billing (setup). Pro is $20 a month, or $17 a month billed annually (pricing). One month covers this masterclass.
And “student plan” does not mean “the same product, free”. GitHub’s pack gives Copilot Student, not Copilot Pro. Students can no longer pick GPT-5.3-Codex, GPT-5.4, Claude Opus or Claude Sonnet by hand — those models are reachable only through Auto mode — and the plan’s allowance is 200 AI credits a month, where one credit is one cent of usage. The announcement collected 6,796 thumbs-down reactions (GitHub community discussion, Copilot plans). Free is still free; it is just smaller than the marketing implies.
Go deeperFree hosting tiers: which ones to open now, which ones to avoid
You deploy in Module 12. Open the right account now rather than reading pricing pages at midnight.
- Cloudflare Pages — the safe default here. Free tier: 500 builds a month, 100 projects, and no bandwidth cap listed for static assets (limits).
- Vercel Hobby — generous, but non-commercial, personal use only, and exceeding a limit usually means waiting 30 days (Hobby plan).
- Netlify Free — credit-based: 300 credits a month, a hard limit with no rollover, and one production deploy costs 15 credits. Twenty deploys exhaust the month, after which your projects are paused until the next cycle (credit pricing). A course where you deploy often is the wrong fit for it.
- Databases, later: Render’s free Postgres expires 30 days after creation with no backups (free tier), and a free Supabase project is paused after one week of inactivity (pricing). Read those two sentences again before you put anything you care about in either.
The zero-cost stack that holds up for a student in Kazakhstan: GitHub for the repo, Cloudflare Pages for the site, a managed database only when you actually need one.
Hand your setup to an AI and make it check your work
You do not have an agent yet — that is Lab 01 — but you have a chat window. Run the commands, copy the real output, and paste it with this.
I am setting up a laptop for a web development course that needs Node, npm and git.
My operating system is: [Windows 11 / macOS / Ubuntu].
Here is exactly what my terminal printed, pasted unedited:
[paste the output of: node -v]
[paste the output of: npm -v]
[paste the output of: git --version]
Do three things, in this order:
1. Tell me which of Node, npm and git are correctly installed, and which are not.
2. For anything missing or too old (I need Node 20 or higher), give me the single next
action for my operating system. One action, not a list of options.
3. If an output is an error message rather than a version, explain in one sentence what
that specific message means and what causes it.
Do not tell me to reinstall everything. Do not give me commands for an operating system
I did not name.That prompt is small on purpose. Naming your OS, pasting real output instead of describing it, and closing off the “just reinstall everything” answer are three habits you will reuse on every prompt in this course.
The three commands, the output each one should print, and the Windows error table with a fix for every message — one page to keep open while you install.
You can run node -v and git --version in a freshly opened terminal, get a version number from each, and open your own project folder in your editor.