Faculty Development Summer Institute 2026
This page is the detailed setup walkthrough for the Build-it / Break-it / Fix-it Lab. Pick the first option that works for you. You only need one.
| Option | Best for | Admin rights needed |
|---|---|---|
| 1. Your own laptop (Mac or Windows) | A personal machine you can install software on | Mac: no (Homebrew user install) · Windows: yes |
| 2. Windows, no admin (lab machine or your own laptop) | Any Windows machine where you have a login but not admin | No |
| 3. VS Code thin client to a Codespace | No capable local machine, or you’d rather offload to the cloud | No |
Whatever you pick, by the end you should have: git, a Bash shell, Python and/or Node, and — if you’ll build a LaTeX target — a LaTeX install (MiKTeX). If your team will use Claude Code, you also need Claude Code access arranged in advance (a paid Claude plan or a configured API provider; the free Claude.ai plan does not include Claude Code).
The simplest path if you can install software on your own machine. Pick your OS.
Homebrew installs the whole toolchain from one place. Install Homebrew first if you don’t already have it:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
No admin on your Mac? Install Homebrew into a folder you own — no
sudorequired — then put it on yourPATH:mkdir -p ~/homebrew && curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip-components 1 -C ~/homebrew echo 'export PATH="$HOME/homebrew/bin:$PATH"' >> ~/.zprofile && exec zsh
Then install the tools:
brew install git node python gh # git, Node/npm, Python, GitHub CLI
brew install --cask claude-code # Claude Code
brew install --cask visual-studio-code # editor (skip if you already have it)
# LaTeX targets only — MiKTeX:
brew install --cask miktex
If you have administrator rights on your Windows laptop, install each tool with its normal installer:
No admin on your Windows laptop? Use Option 2 below — it installs everything per-user, no admin required.
Authenticate the GitHub CLI so cloning and pushing over HTTPS work: run gh auth login in a terminal and choose GitHub.com → HTTPS → Yes (authenticate Git) → Login with a web browser. Then set up your editor and open your team repository with the VS Code interface — see Set up VS Code below.
Use this on any Windows machine where you have a login but not administrator rights — a locked-down lab machine or your own personal laptop. Everything here installs per-user, no admin required. VS Code is assumed to be available already (if not, install it per-user with the User Installer).
Open Windows PowerShell (not as administrator) and run these in order.
# 1. Scoop — a per-user package manager (no admin)
irm get.scoop.sh | iex
# 2. Core dev tools: git (brings Git Bash + sh), Node/npm, Python, GitHub CLI, make, Perl
# (Perl is required by latexmk).
scoop install git nodejs python gh make perl
# 3. LaTeX via MiKTeX (TinyTeX is blocked on the lab workstations). Scoop installs
# MiKTeX per-user; it provides the real pdflatex, xelatex command set.
# Only needed for LaTeX targets.
scoop install latex
(Claude Code is installed separately, with npm in Git Bash — see step B below.)
If PowerShell blocks the install scripts, set the per-user execution policy (no admin needed) and re-run:
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
Open a fresh shell afterward so the new PATH is picked up.
LaTeX targets only: in that fresh terminal (so miktex is on PATH), install latexmk through MiKTeX’s package manager — it isn’t pulled in by default and relies on the Perl from step 2:
miktex packages install latexmk
From here on, run commands in a Git Bash terminal inside VS Code (not cmd/PowerShell) — there, git, npm, make, the MiKTeX commands (pdflatex, latexmk), and claude are all on PATH and behave Unix-style.
∨ next to the +), choose Git Bash.Ctrl+Shift+P) and run Terminal: Select Default Profile → Git Bash. New terminals will now be Git Bash.Node and npm came from Scoop in step 2, so install Claude Code with npm from your Git Bash terminal — a per-user global install, no admin:
npm install -g @anthropic-ai/claude-code
claude --version # confirm it's on your PATH
gh)Before you can clone, push, or file breaks, authenticate gh in your Git Bash terminal. This also wires git to use your GitHub credentials over HTTPS, so cloning and pushing just work:
gh auth login
When prompted, choose: GitHub.com → HTTPS as the protocol → Yes to authenticate Git with your GitHub credentials → Login with a web browser, then finish in the browser.
Set up your editor extensions and clone your team repository with the VS Code interface — see Set up VS Code below. No terminal required for cloning.
First, make Git Bash use the Scoop Python (the bare python otherwise opens the Windows Store stub, and pip/virtualenv live in Scoop’s Scripts folder). Add these lines to ~/.bashrc, then run source ~/.bashrc (or open a new terminal):
# Scoop Python first: python.exe is in .../current, pip & virtualenv in .../current/Scripts
export PATH="$HOME/scoop/apps/python/current:$HOME/scoop/apps/python/current/Scripts:$HOME/scoop/shims:$PATH"
# Make `python` use Scoop's python3 (the bare `python` may open the Windows Store stub)
alias python=python3
pip ships with the Scoop Python. Upgrade it, install virtualenv, then create and activate a per-project environment before installing your target’s dependencies:
python -m pip install --upgrade pip
pip install virtualenv
virtualenv .venv
source .venv/Scripts/activate # Git Bash on Windows (.venv/Scripts, not bin)
pip install -r requirements.txt
make is not bundled with Git Bash — that’s why step 2 installs it via Scoop. Run make from Git Bash (not cmd/PowerShell) so recipe lines run via sh.localhost port (e.g. 5173, 8000) — no admin needed. npm create vite@latest works out of the box.scoop install latex) — a full TeX distribution with the real pdflatex/xelatex/latexmk commands. On the first compile it offers to install missing packages: choose install on-the-fly for the current user (no admin).A Codespace gives you a cloud Linux container, but you work in your local VS Code, not in a browser tab. VS Code becomes a thin client: the editor and terminal are local, while your code, tools, and processes run in the cloud container. Working entirely in the cloud/browser isn’t the intended path here — connect from desktop VS Code instead.
Codespaces is enabled on the institute’s GitHub organization, and your team repository ships a dev-container, so the container comes up with Python, Node, the GitHub CLI, and Claude Code already installed — nothing to set up by hand.
+ (Create Codespace) at the top of that view — this opens the Command Palette, where you pick your team repository, then the branch and machine type.Ctrl+Shift+P / Cmd+Shift+P) and run one of:
Codespaces: Create New Codespace — to create a new Codespace, orCodespaces: Connect to Codespace… — to open an existing Codespace in VS Code.In the VS Code integrated terminal (now running inside the container):
python --version && node --version && gh --version && claude --version
Forwarded ports map to your localhost automatically, so a web target you run in the container opens in your local browser. Codespaces usage counts against your GitHub Codespaces quota, and Claude Code still needs the access your team arranged.
Do this once, whichever option you chose. Everything here is point-and-click — no terminal needed.
Open the Extensions view (the squares icon in the left sidebar, or Ctrl+Shift+X / Cmd+Shift+X on Mac), search each by name, and click Install:
Click the Accounts icon at the bottom-left of VS Code and sign in to GitHub. This lets VS Code clone your repository and, for Option 3, open Codespaces.
Options 1 and 2 (working locally): clone with the VS Code interface.
Ctrl+Shift+P / Cmd+Shift+P) and run Git: Clone.Option 3 (Codespace): your repository is already open in the Codespace — there is nothing to clone.
To run anything, open the integrated terminal with Terminal → New Terminal, and start Claude Code by typing claude or from the Claude Code extension.
Whatever option you chose, you should be able to run, in VS Code’s integrated terminal (Terminal → New Terminal):
git status # you're in the cloned team repo
python --version # and/or: node --version
claude --version # if your team is using Claude Code
Then head back to the activity page, pick a target from the build menu, and start the Build phase.