Bootstrap a fresh Windows 11 machine with PowerShell, winget, Node via nvm, and a PowerShell profile tuned for development.
Use built-in PowerShell to download and run the bootstrap script directly from GitHub. This avoids needing Git or GitHub CLI before the machine is set up.
Set-ExecutionPolicy -Scope Process Bypass -Force
$bootstrapPath = Join-Path $env:TEMP 'setup-bootstrap.ps1'
Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/bbobrian/setup/main/bootstrap.ps1' -OutFile $bootstrapPath
& $bootstrapPathTo skip the recommended developer tools and install only the required package set:
Set-ExecutionPolicy -Scope Process Bypass -Force
$bootstrapPath = Join-Path $env:TEMP 'setup-bootstrap.ps1'
Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/bbobrian/setup/main/bootstrap.ps1' -OutFile $bootstrapPath
& $bootstrapPath -SkipRecommendedPackagesbootstrap.ps1downloadssetup.ps1andsetup-profile.ps1from this repository into a temporary folder and launchessetup.ps1.setup.ps1installs the requiredwingetpackages, installs the recommended developer tools unless skipped, installs the latest Node.js withnvm, installs Claude Code unless skipped, and then runssetup-profile.ps1.setup-profile.ps1installs PowerShell modules and writes a persistent profile with development-oriented aliases and helper functions.
If you already have the repo locally:
.\setup.ps1To skip the recommended developer packages:
.\setup.ps1 -SkipRecommendedPackages-SkipRecommendedPackagesskips the recommended developer tool set.-SkipClaudeCodeskips the Claude Code install step.-SkipProfileBootstrapskips the PowerShell profile bootstrap step.
- The GitHub raw URLs assume the repository is public and the default branch is
main. - Some installers may still prompt for elevation depending on package requirements and local machine policy.