This script automates the setup of a complete Windows development environment with Azure, .NET, Python, Node.js, and various development tools.
- Windows 11 with administrator privileges
- Internet connection
- Windows Package Manager (winget) - comes pre-installed on Windows 11
Run the commands below in an elevated PowerShell or Command Prompt (Run as Administrator).
# Enable Hyper-V & Windows Sandbox
DISM /Online /Enable-Feature /All /FeatureName:Microsoft-Hyper-V
DISM /Online /Enable-Feature /FeatureName:Containers-DisposableClientVM /Allwinget install Git.Git --accept-package-agreements --accept-source-agreements --silent
# Optional: GUI Git Clients
# winget install GitHub.GitHubDesktop --accept-package-agreements --accept-source-agreements --silent
# winget install Axosoft.GitKraken --accept-package-agreements --accept-source-agreements --silent# Configure your Git identity
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
# Useful Git aliases
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.unstage "reset HEAD --"
git config --global alias.last "log -1 HEAD"winget install Docker.DockerDesktop --accept-package-agreements --accept-source-agreements --silent
# Alternative: Podman Desktop
# winget install RedHat.Podman-Desktop --accept-package-agreements --accept-source-agreements --silent
# Rancher Desktop (Kubernetes + Container Management)
# winget install suse.RancherDesktop --accept-package-agreements --accept-source-agreements --silentwinget install Microsoft.Azure.AZCopy.10 --accept-package-agreements --accept-source-agreements --silent
winget install Microsoft.Azure.CosmosEmulator --accept-package-agreements --accept-source-agreements --silent
winget install Microsoft.Azure.StorageExplorer --accept-package-agreements --accept-source-agreements --silent
winget install Microsoft.AzureCLI --accept-package-agreements --accept-source-agreements --silent
winget install Microsoft.Azd --accept-package-agreements --accept-source-agreements --silent
winget install Microsoft.Bicep --accept-package-agreements --accept-source-agreements --silent
# Azure Data Studio (SQL Server, PostgreSQL, MySQL management)
winget install Microsoft.AzureDataStudio --accept-package-agreements --accept-source-agreements --silentaz login
az extension add -n azure-devops
az extension add -n ml# Terraform
winget install Hashicorp.Terraform --accept-package-agreements --accept-source-agreements --silent
# Pulumi (alternative to Terraform)
# winget install Pulumi.Pulumi --accept-package-agreements --accept-source-agreements --silent# Kubectl
winget install Kubernetes.kubectl --accept-package-agreements --accept-source-agreements --silent
# Helm (Kubernetes package manager)
winget install Helm.Helm --accept-package-agreements --accept-source-agreements --silent
# k9s (Kubernetes CLI UI)
winget install Derailed.k9s --accept-package-agreements --accept-source-agreements --silent
# Lens (Kubernetes IDE)
# winget install Mirantis.Lens --accept-package-agreements --accept-source-agreements --silent# .NET SDKs
winget install Microsoft.DotNet.SDK.8 --accept-package-agreements --accept-source-agreements --silent
winget install Microsoft.DotNet.SDK.9 --accept-package-agreements --accept-source-agreements --silent
winget install Microsoft.DotNet.SDK.Preview --accept-package-agreements --accept-source-agreements --silent
# Visual Studio 2022
winget install Microsoft.VisualStudio.2022.BuildTools --accept-package-agreements --accept-source-agreements --silent
winget install Microsoft.VisualStudio.2022.Enterprise --accept-package-agreements --accept-source-agreements --silent# Python 3.12 (recommended - latest stable)
winget install Python.Python.3.12 --accept-package-agreements --accept-source-agreements --silent
# Python 3.9 (if needed for legacy projects)
# winget install Python.Python.3.9 --accept-package-agreements --accept-source-agreements --silent
# Upgrade pip
python -m pip install --upgrade pip
# Install Python development tools
pip install poetry
pip install black
pip install pylint
pip install pytestwinget install OpenJS.NodeJS.LTS --accept-package-agreements --accept-source-agreements --silent
winget install Yarn.Yarn --accept-package-agreements --accept-source-agreements --silentnpm install -g typescript
npm install -g ts-node
npm install -g eslint
npm install -g prettier
npm install -g pnpm
npm install -g hardhat
npm install -g httpyac
npm install -g commitizen
# Framework CLIs (uncomment as needed)
# npm install -g @angular/cli
# npm install -g create-react-app
# npm install -g create-next-app
# npm install -g @vue/cli# Go programming language
winget install GoLang.Go --accept-package-agreements --accept-source-agreements --silentwinget install Microsoft.PowerShell --accept-package-agreements --accept-source-agreements --silent
# Windows Terminal (usually pre-installed on Windows 11)
winget install Microsoft.WindowsTerminal --accept-package-agreements --accept-source-agreements --silent
# Oh My Posh (PowerShell theme engine)
winget install JanDeDobbeleer.OhMyPosh --accept-package-agreements --accept-source-agreements --silentwinget install Microsoft.VisualStudioCode --accept-package-agreements --accept-source-agreements --silent# General Development
code --install-extension editorconfig.editorconfig
code --install-extension eamodio.gitlens
code --install-extension usernamehw.errorlens
code --install-extension aaron-bond.better-comments
code --install-extension esbenp.prettier-vscode
# AI Assistants
code --install-extension github.copilot
code --install-extension github.copilot-chat
code --install-extension saoudrizwan.claude-dev
# Markdown
code --install-extension davidanson.vscode-markdownlint
code --install-extension yzhang.markdown-all-in-one
# Data & CSV
code --install-extension mechatroner.rainbow-csv
# Languages
code --install-extension golang.go
# Azure Extensions
code --install-extension ms-azure-devops.azure-pipelines
code --install-extension ms-azuretools.azure-dev
code --install-extension ms-azuretools.vscode-azure-github-copilot
code --install-extension ms-azuretools.vscode-azure-mcp-server
code --install-extension ms-azuretools.vscode-azureappservice
code --install-extension ms-azuretools.vscode-azurecontainerapps
code --install-extension ms-azuretools.vscode-azurefunctions
code --install-extension ms-azuretools.vscode-azureresourcegroups
code --install-extension ms-azuretools.vscode-azurestaticwebapps
code --install-extension ms-azuretools.vscode-azurestorage
code --install-extension ms-azuretools.vscode-azurevirtualmachines
code --install-extension ms-azuretools.vscode-bicep
code --install-extension ms-azuretools.vscode-cosmosdb
# Container & Docker
code --install-extension ms-azuretools.vscode-containers
code --install-extension ms-azuretools.vscode-docker
# .NET Extensions
code --install-extension ms-dotnettools.csdevkit
code --install-extension ms-dotnettools.csharp
code --install-extension ms-dotnettools.dotnet-interactive-vscode
code --install-extension ms-dotnettools.vscode-dotnet-runtime
code --install-extension ms-dotnettools.vscodeintellicode-csharp
code --install-extension ms-vscode.csharp
# Python Extensions
code --install-extension ms-python.debugpy
code --install-extension ms-python.flake8
code --install-extension ms-python.isort
code --install-extension ms-python.python
code --install-extension ms-python.vscode-pylance
code --install-extension ms-python.vscode-python-envs
# Jupyter Notebooks
code --install-extension ms-toolsai.jupyter
# API Development
code --install-extension humao.rest-client
code --install-extension rangav.vscode-thunder-client
# Database
code --install-extension cweijan.vscode-database-client2
# Other Utilities
code --install-extension ms-vscode.azurecli
code --install-extension ms-vscode.notepadplusplus-keybindings
code --install-extension ms-vscode.powershell
code --install-extension ritwickdey.liveserver# Bruno (open-source API client)
winget install Bruno.Bruno --accept-package-agreements --accept-source-agreements --silent
# Postman
winget install Postman.Postman --accept-package-agreements --accept-source-agreements --silent
# Insomnia
# winget install Insomnia.Insomnia --accept-package-agreements --accept-source-agreements --silent# DBeaver (universal database tool)
winget install dbeaver.dbeaver --accept-package-agreements --accept-source-agreements --silent
# MongoDB Compass
# winget install MongoDB.Compass.Full --accept-package-agreements --accept-source-agreements --silent
# Redis Insight
# winget install Redis.RedisInsight --accept-package-agreements --accept-source-agreements --silent# KeePass (password manager)
winget install DominikReichl.KeePass --accept-package-agreements --accept-source-agreements --silent
# Windows Debugger
winget install Microsoft.WinDbg --accept-package-agreements --accept-source-agreements --silent
# Fiddler (web debugging proxy)
winget install Telerik.Fiddler.Everywhere --accept-package-agreements --accept-source-agreements --silent
# OWASP ZAP (security testing)
# winget install ZAP.ZAP --accept-package-agreements --accept-source-agreements --silent
# Trivy (container security scanner)
# winget install aquasecurity.trivy --accept-package-agreements --accept-source-agreements --silent# Notepad++
winget install Notepad++.Notepad++ --accept-package-agreements --accept-source-agreements --silent
# Sublime Text 4
winget install SublimeHQ.SublimeText.4 --accept-package-agreements --accept-source-agreements --silent
# Windows Notepad (from MS Store)
winget install 9MSMLRH6LZF3 --accept-package-agreements --accept-source-agreements --silent
# PowerToys (Windows utilities)
winget install Microsoft.PowerToys --accept-package-agreements --accept-source-agreements --silent
# 7-Zip (file compression)
winget install 7zip.7zip --accept-package-agreements --accept-source-agreements --silent
# Everything (fast file search)
winget install voidtools.Everything --accept-package-agreements --accept-source-agreements --silent
# ShareX (screenshot tool)
winget install ShareX.ShareX --accept-package-agreements --accept-source-agreements --silentwinget install Microsoft.WSL --accept-package-agreements --accept-source-agreements --silent
wsl --update
wsl --install -d Ubuntu-24.04# Install Miniconda in WSL
wsl -d Ubuntu-24.04 -e bash -c "wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh && bash ~/miniconda.sh -b -p ~/miniconda && echo 'export PATH=\"~/miniconda/bin:\$PATH\"' >> ~/.bashrc && ~/miniconda/bin/conda init bash"
# Update Ubuntu packages
wsl -d Ubuntu-24.04 -e bash -c "sudo apt update && sudo apt upgrade -y"
# Optional: Install useful Linux tools
wsl -d Ubuntu-24.04 -e bash -c "sudo apt install -y zsh tmux neovim fzf ripgrep bat exa git-lfs build-essential"
# Optional: Install Oh My Zsh
# wsl -d Ubuntu-24.04 -e bash -c "sh -c '$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)'"# mkcert (locally-trusted development certificates)
winget install FiloSottile.mkcert --accept-package-agreements --accept-source-agreements --silent
# Setup local CA
mkcert -install# Discord
winget install Discord.Discord --accept-package-agreements --accept-source-agreements --silent
# Signal
winget install OpenWhisperSystems.Signal --accept-package-agreements --accept-source-agreements --silent
# Microsoft Teams
# winget install Microsoft.Teams --accept-package-agreements --accept-source-agreements --silent
# Slack
# winget install SlackTechnologies.Slack --accept-package-agreements --accept-source-agreements --silent
# Zoom
winget install Zoom.Zoom --accept-package-agreements --accept-source-agreements --silent# VLC Media Player
winget install VideoLAN.VLC --accept-package-agreements --accept-source-agreements --silent
# FFmpeg (video/audio processing)
winget install Gyan.FFmpeg --accept-package-agreements --accept-source-agreements --silent# Upgrade all installed packages
winget upgrade --all
# Restart your computer to complete installation
shutdown /r /t 60 /c "Restarting to complete devbox setup. Save your work!"- Configure Git with your name and email
- Sign in to Azure CLI (
az login) - Sign in to Docker Desktop
- Configure VS Code settings and keybindings
- Set up PowerShell profile customizations
- Configure Windows Terminal themes
- Install additional VS Code extensions as needed
- Set up WSL development environment
- Configure mkcert for local HTTPS development
- Test Docker and Kubernetes functionality
- Set up database connections in Azure Data Studio/DBeaver
Edit this file to:
- Comment out tools you don't need
- Add project-specific tools
- Adjust Python/Node.js/Go versions
- Add additional VS Code extensions
- Configure additional package managers (chocolatey, scoop)
# Install from Microsoft Store
start ms-windows-store://pdp/?ProductId=9NBLGGH4NNS1- Run PowerShell/CMD as Administrator
- Check your internet connection
- Update winget:
winget upgrade winget - Check Windows Update for pending updates
# Close and reopen your terminal after installations
# Or refresh environment variables
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")