Edit

Dev Configs for Windows

Dev Configs are a curated, open-source collection of configuration files that take a fresh Windows machine to a ready-to-code state with a single command. Each config is a declarative file that is safe to re-run. It describes the packages, OS settings, and post-install steps for a specific scenario (a full developer workstation, a comfortable WSL shell, or a single language toolchain), so you can rebuild your environment on any machine without clicking through installers or maintaining custom scripts.

The configs are open source at github.com/microsoft/WindowsDeveloperConfig and tested automatically whenever a change is made. For the latest commands, options, and full list of supported toolchains, see the repo README. This page covers the basics.

Available configs

Dev Configs come in three flavors. Pick the one that matches what you want. See the repo README for the exact commands and options.

Windows Dev Config

A single config that turns a fresh Windows 11 install into a clean, distraction-free developer workstation in one command. It installs a baseline set of developer tools, applies opinionated Windows settings (dark theme, Developer Mode, File Explorer and Start/taskbar cleanup, and similar workstation hygiene), and bootstraps WSL with Ubuntu through the required reboot. Non-interactive and safe to re-run on an existing machine.

WSL Comfort

An interactive setup for a nicer Windows + WSL shell experience. The Windows side installs WSL, a distro, a Nerd Font, and a themed Windows Terminal profile; the Linux side configures the shell itself with your choice of options (shell, prompt, modern CLI tools, clipboard shims, and more). The Linux half is standalone and can be run directly on any Ubuntu host.

Workloads (single language toolchains)

If you just want one language stack (TypeScript, Python, .NET, Go, Java, Rust, PHP, WinForms, WinUI 3, and similar), each workload ships its own config plus a small shim that applies it and refreshes PATH in your current session. The current list and per-workload details live in the repo README.