Preparation
Complete these steps before 16 September, on the computer you will bring to the workshop. Time required: about 30 minutes.
The last step is a prompt: your coding agent checks the setup and lists anything that is missing.
Requirements
- A laptop with macOS, Windows or Linux on which you can install software. If you cannot install software, use a GitHub Codespace instead, as described at the end of this page.
- A paid Claude Pro or Max or ChatGPT Plus subscription. The free plans do not include the command-line agents.
- No programming experience is required.
What the workshop covers
A coding agent builds a page from the Figma design. A separate program, which the agent also writes, checks the page against the design and reports every difference. The agent fixes the reported problems and runs the program again until it passes. The page is then published on Netlify.
Accounts
01
GitHub
Free. Stores your project repository. Also used to sign up for Netlify and to run a Codespace.
2 min · confirm your email
02
Coding agent
Claude Pro or Max (for Claude Code) or ChatGPT Plus (for Codex). You need one. The prompts work with both.
paid · about €20 per month
03
Netlify
Free. Publishes your site. Choose Sign up with GitHub.
2 min · no card required
04
Figma
Optional. Lets you open the design in Figma while the agent works. The design file itself is downloaded from the workshop page.
optional · free plan
Operating system
Open a terminal
A terminal is a window for running programs by typing commands. Every command on this page has a Copy button: copy the command, paste it into the terminal, press Enter, and wait for the prompt to return before running the next one.
macOS
- Press Cmd + Space.
- Type
Terminal. - Press Enter.
Paste with Cmd + V.
Windows
- Press the Windows key.
- Type
PowerShell. - Click Windows PowerShell. Do not use Command Prompt.
Paste with Ctrl + V or a right-click.
Linux
- Press Ctrl + Alt + T.
- If no window opens, search for
Terminalin the applications menu.
Paste with Ctrl + Shift + V. In a terminal, Ctrl + V does not paste.
How the terminal behaves
$, % or >. The terminal is waiting for a command.Install the tools
| Tool | Purpose |
|---|---|
| Node | runs the website on your computer |
Git and GitHub CLI (gh) | store the project in a GitHub repository |
| Claude Code or Codex | the coding agent |
| Netlify CLI | publishes the site |
| Chromium for Playwright | lets the checker open the page in a real browser |
Node, Git and GitHub CLI on macOS
brew install node gh
Requires Homebrew. Without it, first run the install command from brew.sh; it asks for your Mac password, and typing shows nothing. Homebrew installs Git. Afterwards, close the terminal and open a new one.
Node, Git and GitHub CLI on Windows
winget install --id OpenJS.NodeJS.LTS
winget install --id Git.Git
winget install --id GitHub.cli
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
Run the commands one at a time. The last one allows PowerShell to run npm and the agent; without it they fail with running scripts is disabled on this system. If asked, type Y and press Enter. Afterwards, close PowerShell and open a new one.
Node, Git and GitHub CLI on Linux
sudo apt install -y curl git gh
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.7/install.sh | bash
nvm install --lts
The first command asks for your password; typing shows nothing. Before the third command, close the terminal and open a new one. Node is installed with nvm because distribution packages are often older than the required 22.15, and because global npm installs then need no sudo. Other distributions: install curl, git and gh with your package manager (gh instructions).
Coding agent (one of the two)
Install the agent that matches your subscription.
Claude Pro or Max
npm install -g @anthropic-ai/claude-code
ChatGPT Plus
npm install -g @openai/codex
Netlify CLI
Publishes the site at the end of the workshop.
npm install -g netlify-cli
A browser for the checker
The checker you build in the workshop opens the page in Chromium through Playwright. Downloading it now saves about 150 MB on the conference wifi. On Linux, if it reports missing libraries, run npx playwright install --with-deps chromium instead; it asks for your password.
npx playwright install chromium
If a command reports command not found right after installation, close the terminal and open a new one.
Sign in
Each sign-in command opens the browser. Approve access there, then return to the terminal. The status command confirms the result.
GitHub
gh auth login
Answer with the arrow keys and Enter: GitHub.com → HTTPS → Yes (authenticate Git) → Login with a web browser. Copy the one-time code, press Enter, paste the code in the browser and click Authorize.
Check:
gh auth statusLogged in to github.comCoding agent
Claude Pro or Max
claude auth login
Sign in on claude.ai in the browser and click Authorize. If the terminal asks for a code, copy it from the browser and paste it.
Check:
claude auth status"loggedIn": trueChatGPT Plus
codex login
Sign in to ChatGPT in the browser and allow access. The terminal confirms when sign-in is complete.
Check:
codex login statusLogged in using ChatGPTNetlify
netlify login
Click Authorize in the browser, then return to the terminal.
Check:
netlify statusyour email addressCreate the repository
This command creates a private repository named turbine on your GitHub account and clones it into a turbine folder in the current directory.
gh repo create turbine --private --clone
cd turbine
The workshop starts in this folder: cd turbine, then start the agent. Do not add files to it.
Check:
git remote -vgithub.com/your-username/turbineIf a repository named turbine already exists on your account, choose another name and use it wherever this page says turbine.
Check the setup
The agent checks every item from the previous steps and reports what is missing. It does not change anything.
- Go to the project folder:
cd turbine - Start the agent:
claudeorcodex. If it asks whether to trust the folder, answer yes. - Paste the prompt below and press Enter.
Check that this computer is ready for a workshop. Do not install, sign in to or change
anything: only inspect, and run whatever commands you need to do that.
Check each item and report the result as a table with three columns: what you checked,
what you found, OK or NOT OK.
1. Node is installed, version 22.15 or newer, and npm works.
2. Git is installed and has a user name and email configured.
3. The GitHub CLI (gh) is installed and signed in.
4. The Netlify CLI is installed and signed in.
5. You, the agent running this check, are installed and signed in. State which agent you are.
6. This folder is a git repository with a GitHub remote, and that repository exists on
GitHub under the account gh is signed in as.
7. This folder contains nothing except git's own files.
8. Playwright's Chromium browser is already downloaded (look in Playwright's browser cache;
do not download it yourself).
For every NOT OK item, give the fix in one or two plain sentences, with the exact command
if there is one. End with one line: READY, or NOT READY and the number of items left.The agent asks for permission before each command; allow it. Fix every NOT OK item and run the same prompt again until the result is READY. If the agent does not start, repeat Sign in.
Without installing: GitHub Codespaces
If you cannot install software, use a GitHub Codespace: a cloud computer in the browser with Node, Git and GitHub CLI preinstalled and already signed in to GitHub.
- On github.com, click + → New repository. Name:
turbine. Visibility: Private. Select Add a README file, because a Codespace cannot be created for an empty repository. Click Create repository. - On the repository page, click Code → Codespaces → Create codespace on main. The terminal is the panel at the bottom, already in the repository folder.
- Delete the README so the folder is empty:
rm README.md - Install the agent and the Netlify CLI with the commands from Install the tools. For the browser use
npx playwright install --with-deps chromium. Node, Git and GitHub CLI are already installed. - Sign in to the agent and to Netlify as described in Sign in. The terminal prints a link instead of opening the browser: hold Ctrl or Cmd and click it. For Codex, use the device sign-in:
codex login --device-authIf Codex reports that device code login is not enabled, turn it on in ChatGPT → Settings → Security and run the command again.
- Run Check the setup in the Codespace terminal. Skip
cd turbine: the terminal is already in the project folder.
The GitHub free plan includes 120 core-hours of Codespaces per month; the workshop uses about 3. On the day, reopen the same Codespace from github.com/codespaces.
FAQ
Do I need programming experience?
No. You describe problems in plain language; the agent writes the code.
Can I use a free AI plan?
No. The free plans of Claude and ChatGPT do not include Claude Code or Codex. The cheapest paid plan of either is enough.
Why do I need a GitHub repository?
The project is stored in it, and you keep the code after the workshop.
Do I need a Figma account?
No. The design file is downloaded from the workshop page. A free Figma account only lets you look at the design in Figma.
The check reports NOT OK and I do not know why.
Ask the agent to explain that item step by step. If the problem remains, come 15 minutes before the workshop starts.
Is internet access required during the workshop?
Yes. The room has Wi-Fi. The agent installs packages, decodes the Figma file and publishes the site.
I cannot install software on my laptop.
Use a Codespace, as described in the section on working without installing.
Does it work on Windows?
Yes. Use PowerShell, not Command Prompt.
What do I keep after the workshop?
The published site, the repository with its code, and the prompts.
On the day
- Bring your laptop and charger.
- If the setup check did not report READY, come 15 minutes before the start.