[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-876":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":38,"readmeContent":39,"aiSummary":40,"trendingCount":16,"starSnapshotCount":16,"syncStatus":41,"lastSyncTime":42,"discoverSource":43},876,"nvm-windows","coreybutler\u002Fnvm-windows","coreybutler","A node.js version management utility for Windows. Ironically written in Go.","",null,"Go",46763,3839,461,65,0,16,99,489,82,45,"MIT License",false,"master",true,[27,28,29,30,31,32,33,34,35,36,37],"go","management","node","node-version-manager","nodejs","nvm","switch","version","version-manager","versioning","windows","2026-06-12 02:00:19","\u003Cdiv align=\"center\">\u003Ch2>We are working full time on Author, including \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fwiki\u002FRuntime\">Runtime\u003C\u002Fa>, the successor to NVM for Windows.\u003C\u002Fh2>Complete \u003Ca href=\"https:\u002F\u002Ft.co\u002FoGqQCM9FPx\">this form\u003C\u002Fa> to provide your thoughts and sign up for progress updates.\u003Cbr\u002F>\u003Cbr\u002F>Updates will also be posted on the \u003CA href=\"https:\u002F\u002Flinkedin.com\u002Fcompany\u002Fauthorsoftware\">Author Software LinkedIn Page\u003C\u002Fa>.\u003C\u002Fdiv>\n\u003Cbr\u002F>\u003Cbr\u002F>\n\u003Ch1 align=\"center\">NVM for Windows\u003C\u002Fh1>\n\n\u003Cdiv align=\"center\">\n  The \u003Ca href=\"https:\u002F\u002Fdocs.microsoft.com\u002Fen-us\u002Fwindows\u002Fnodejs\u002Fsetup-on-windows\">Microsoft\u003C\u002Fa>\u002F\u003Ca href=\"https:\u002F\u002Fdocs.npmjs.com\u002Fcli\u002Fv9\u002Fconfiguring-npm\u002Finstall#windows-node-version-managers\">npm\u003C\u002Fa>\u002F\u003Ca href=\"https:\u002F\u002Fcloud.google.com\u002Fnodejs\u002Fdocs\u002Fsetup#installing_nvm\">Google\u003C\u002Fa> recommended Node.js version manager for \u003Cem>Windows\u003C\u002Fem>.\u003Cbr\u002F>\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>This is not the same thing as nvm!\u003C\u002Fb> (expand for details)\u003C\u002Fsummary>\n\n_The original [nvm](https:\u002F\u002Fgithub.com\u002Fnvm-sh\u002Fnvm) is a completely separate project for Mac\u002FLinux only._ This project uses an entirely different philosophy and is not just a clone of nvm. Details are listed in [Why another version manager?](#bulb-why-another-version-manager) and [what&#39;s the big difference?](#bulb-whats-the-big-difference).\n\u003C\u002Fdetails>\n\n[![Download Latest Now](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F-Download%20Now!-%2322A6F2)](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Freleases) [![GitHub tag (latest SemVer)](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Ftag\u002Fcoreybutler\u002Fnvm-windows?label=Latest%20Release&style=social&x=1)]((https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Freleases)) ![GitHub Release Date](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Frelease-date\u002Fcoreybutler\u002Fnvm-windows?label=Released&style=social) ![GitHub all releases](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fdownloads\u002Fcoreybutler\u002Fnvm-windows\u002Ftotal?label=Downloads&style=social) [![Discuss](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F-Discuss-blue)](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fdiscussions) [![Twitter URL](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Furl?style=social&url=https%3A%2F%2Ftwitter.com%2Fintent%2Ftweet%3Fhashtags%3Dnodejs%26original_referer%3Dhttp%253A%252F%252F127.0.0.1%253A91%252F%26text%3DCheck%2520out%2520NVM%2520for%2520Windows%21%26tw_p%3Dtweetbutton%26url%3Dhttp%253A%252F%252Fgithub.com%252Fcoreybutler%252Fnvm-windows%26via%3Dgoldglovecb)](https:\u002F\u002Ftwitter.com\u002Fintent\u002Ftweet?hashtags=nodejs&original_referer=http%3A%2F%2F127.0.0.1%3A91%2F&text=Check%20out%20NVM%20for%20Windows!&tw_p=tweetbutton&url=http%3A%2F%2Fgithub.com%2Fcoreybutler%2Fnvm-windows&via=goldglovecb)\n\u003Cbr\u002F>\n[![Download Stable](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F-Download%20Stable-%2322A6F2)](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Freleases\u002Ftag\u002F1.1.12) [![GitHub tag (stable SemVer)](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FStable%20Version-v1.1.12-1?style=social)]((https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Freleases\u002Ftag\u002F1.1.12\u002F))\n\u003Cdetails>\n\u003Csummary>\u003Cb>Latest vs Stable?\u003C\u002Fb>\u003C\u002Fsummary>\n  \nThe latest version (v1.2.x) is a [transition version]([https:\u002F\u002F](https:\u002F\u002Fopensource.author.io\u002Fnvm-for-windows-v120)) as we complete work on [Runtime](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fwiki\u002FRuntime), the successor to NVM for Windows. However; there is a known bug that may impact some users when installing old (EOL) versions of Node.js. The last stable version supports most EOL versions.\n\nSome companies need very specific features of both versions, which is not possible with today's public releases. While we recommend waiting for Runtime (anticipated March release), if you need a private release, contact support@author.io to arrange a paid support contract.\n\u003C\u002Fdetails>\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F4201\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Ftrendshift.io\u002Fapi\u002Fbadge\u002Frepositories\u002F4201\" alt=\"coreybutler%2Fnvm-windows | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n\u003Ch5 align=\"center\">Sponsors\u003C\u002Fh5>\n\n\u003Cdiv align=\"center\">\n  \u003Ctable cellpadding=\"5\" cellspacing=\"0\" border=\"0\" align=\"center\">\n    \u003Ctr>\n      \u003Ctd>\u003Ca href=\"https:\u002F\u002Flinkedin.com\u002Fcompany\u002Fauthorsoftware\">\u003Cimg src=\"https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fstaticassets\u002Fblob\u002Fmaster\u002Fsponsors\u002Flogo_author_software_flat.png\" width=\"200px\"\u002F>\u003C\u002Fa>\u003C\u002Ftd>\n      \u003Ctd width=\"33%\" align=\"center\">\u003Ca href=\"https:\u002F\u002Fecorventures.com\">\u003Cimg src=\"https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F8259581?s=200&v=4\" height=\"30px\"\u002F>\u003C\u002Fa>\u003C\u002Ftd>\n      \u003Ctd width=\"33%\" align=\"center\">\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\">\u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F770982\u002F195955265-5c3dca78-7140-4ec6-b05a-f308518643ee.png\" height=\"30px\"\u002F>\u003C\u002Fa>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd colspan=\"4\" align=\"center\">\n        \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsponsors\u002Fcoreybutler\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fsponsors\u002Fcoreybutler?label=Individual%20Sponsors&logo=github&style=social\"\u002F>\u003C\u002Fa>\n        &nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsponsors\u002Fcoreybutler\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F-Become%20a%20Sponsor-yellow\"\u002F>\u003C\u002Fa>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd colspan=\"4\" align=\"center\">\n        \u003Cimg src=\"https:\u002F\u002Fgithub.blog\u002Fwp-content\u002Fuploads\u002F2020\u002F09\u002Fgithub-stars-logo_Color.png\" width=\"50\"\u002F>\u003Cbr\u002F>\n        \u003Cb>Can't sponsor?\u003C\u002Fb>\u003Cbr\u002F>Consider \u003Ca href=\"https:\u002F\u002Fstars.github.com\u002Fnominate\u002F\" target=\"_blank\">nominating @coreybutler for a Github star\u003C\u002Fa>.\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\u003Cbr\u002F>\n\n\u003Cdiv align=\"center\">\u003Cb>Running into issues?\u003C\u002Fb> See the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fwiki\u002FCommon-Issues\">common issues wiki\u003C\u002Fa>.\u003C\u002Fdiv>\n\n\u003Cbr\u002F>\n\u003Ctable style=\"background-color:red;padding:6px;border-radius:3px;\">\n  \u003Ctr>\u003Ctd>\n    \u003Ch3>Seeking Feedback:\u003C\u002Fh3>\n    We're working on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fwiki\u002FRuntime\">Runtime (rt)\u003C\u002Fa>, the successor to NVM For Windows. Please contribute by taking a minute to complete \u003Ca href=\"https:\u002F\u002Ft.co\u002FoGqQCM9FPx\">this form\u003C\u002Fa>. Thank you!\n    \u003Ch3>\u003C\u002Fh3>\n  \u003C\u002Ftd>\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## Overview\n\nManage multiple installations of node.js on a Windows computer.\n\n**tl;dr** Similar (not identical) to [nvm](https:\u002F\u002Fgithub.com\u002Fcreationix\u002Fnvm), but for Windows. Has an installer. [Download Now](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Freleases)!\n\nThis has always been a node version manager, not an io.js manager, so there is no back-support for io.js. Node 4+ is supported. Remember when running `nvm install` or `nvm use`, Windows usually requires administrative rights (to create symlinks). To install the latest version of Node.js, run `nvm install latest`. To install the latest stable version, run `nvm install lts`.\n\n![NVM for Windows](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fstaticassets\u002Fraw\u002Fmaster\u002Fimages\u002Fnvm-1.1.8-screenshot.jpg)\n\nThere are situations where the ability to switch between different versions of Node.js can be very useful. For example, if you want to test a module you're developing with the latest bleeding edge version without uninstalling the stable version of node, this utility can help.\n\n![Switch between stable and unstable versions.](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fstaticassets\u002Fraw\u002Fmaster\u002Fimages\u002Fnvm-usage-highlighted.jpg)\n\n### Installation & Upgrades\n\n#### :star: :star: Uninstall any pre-existing Node installations!! :star: :star:\n\nThe simplest (recommended) way to get NVM for Windows running properly is to uninstall any prior Node installation _before_ installing NVM for Windows. It avoids all of the pitfalls listed below. However; you may not wish to nuke your Node installation if you've highly customized it. NVM for Windows _can_ assume management of an existing installation, but there are nuances to this (dependent entirely on the permissions of the user running the installation). If you have an administrative account, it's relatively safe to install NVM for Windows before uninstalling the original Node version. If you are working in a closed environment, such as a corporate Active Directory environment where installations\u002Funinstallations are controlled by group policy, you should really consider removing the original version of Node before installing NVM4W.\n\n_Permission Problems_\nFor security reasons, Windows will not allow an application from one vendor to \"uninstall\" an application from a different vendor. The official NVM4W installer will attempt assume management of an existing installation of Node., but it cannot actually uninstall the original Node.js version. To work around this, NVM for Windows installer attempts to copy the original Node.js installation files to the NVM root. This includes global npm modules and configurations. Once this process is complete, the original Node.js installation can be uninstalled without losing data.\n\n_PATH Installation Problems_\nIf you attempt to configure the `NVM_SYMLINK` to use an existing directory (like `C:\\Program Files\\nodejs`), it will fail because a symlink cannot overwrite a physical directory. This is not a problem if you choose a different symlink path (such as `C:\\nvm\\node`).\n\n_PATH Conflicts_\nIf you do not uninstall the original version, running `nvm use` may appear to do nothing at all. Running `node -v` will always show the original installation version. This is due to a [`PATH` conflict](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fwiki\u002FCommon-Issues#why-do-i-need-to-uninstall-nodejs-before-installing-nvm-for-windows) that presents when the same application is installed multiple times. In NVM4W 1.1.11+, run `nvm debug` to determine if you have a `PATH` conflict.\n\nFor simpliciy, we recommend uninstalling any existing versions of Node.js before using NVM for Windows. Delete any existing Node.js installation directories (e.g., `%ProgramFiles%\\nodejs`) that might remain. NVM's generated symlink will not overwrite an existing (even empty) installation directory.\n\n:eyes: **Backup any global `npmrc` config** :eyes:\n(e.g. `%AppData%\\npm\\etc\\npmrc`)\n\nAlternatively, copy the settings to the user config `%UserProfile%\\.npmrc`. Delete the existing npm install location (e.g. `%AppData%\\npm`) to prevent global module conflicts.\n\n#### Install nvm-windows\n\nUse the [latest installer](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm\u002Freleases) (comes with an uninstaller). Alternatively, follow the  [manual installation](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fwiki#manual-installation) guide.\n\n_If NVM4W doesn't appear to work immediately after installation, restart the terminal\u002Fpowershell (not the whole computer)._\n\n![NVM for Windows Installer](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fstaticassets\u002Fraw\u002Fmaster\u002Fimages\u002Fnvm-installer.jpg)\n\n#### Reinstall any global utilities\n\nAfter install, reinstalling global utilities (e.g. yarn) will have to be done for each installed version of node:\n\n```\nnvm use 14.0.0\nnpm install -g yarn\nnvm use 12.0.1\nnpm install -g yarn\n```\n\n### Upgrading nvm-windows\n\n:bulb: _As of v1.1.8, there is an upgrade utility that will automate the upgrade process._\n\n**To upgrade nvm-windows**, run the new installer. It will safely overwrite the files it needs to update without touching your node.js installations. Make sure you use the same installation and symlink folder. If you originally installed to the default locations, you just need to click \"next\" on each window until it finishes.\n\n### Usage\n\n**nvm-windows runs in an Admin shell**. You'll need to start `powershell` or Command Prompt as Administrator to use nvm-windows\n\nNVM for Windows is a command line tool. Simply type `nvm` in the console for help. The basic commands are:\n\n- **`nvm arch [32|64]`**: Show if node is running in 32 or 64 bit mode. Specify 32 or 64 to override the default architecture.\n- **`nvm debug`**: Check the NVM4W process for known problems.\n- **`nvm current`**: Display active version.\n- **`nvm install \u003Cversion> [arch]`**:  The version can be a specific version, \"latest\" for the latest current version, or \"lts\" for the most recent LTS version. Optionally specify whether to install the 32 or 64 bit version (defaults to system arch). Set [arch] to \"all\" to install 32 AND 64 bit versions. Add `--insecure` to the end of this command to bypass SSL validation of the remote download server.\n- **`nvm list [available]`**: List the node.js installations. Type `available` at the end to show a list of versions available for download.\n- **`nvm on`**: Enable node.js version management.\n- **`nvm off`**: Disable node.js version management (does not uninstall anything).\n- **`nvm proxy [url]`**: Set a proxy to use for downloads. Leave `[url]` blank to see the current proxy. Set `[url]` to \"none\" to remove the proxy.\n- **`nvm uninstall \u003Cversion>`**: Uninstall a specific version.\n- **`nvm use \u003Cversion> [arch]`**: Switch to use the specified version. Optionally use `latest`, `lts`, or `newest`. `newest` is the latest _installed_ version. Optionally specify 32\u002F64bit architecture. `nvm use \u003Carch>` will continue using the selected version, but switch to 32\u002F64 bit mode. For information about using `use` in a specific directory (or using `.nvmrc`), please refer to [issue #16](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fissues\u002F16).\n- **`nvm root \u003Cpath>`**: Set the directory where nvm should store different versions of node.js. If `\u003Cpath>` is not set, the current root will be displayed.\n- **`nvm version`**: Displays the current running version of NVM for Windows.\n- **`nvm node_mirror \u003Cnode_mirror_url>`**: Set the node mirror.People in China can use *https:\u002F\u002Fnpmmirror.com\u002Fmirrors\u002Fnode\u002F*\n- **`nvm npm_mirror \u003Cnpm_mirror_url>`**: Set the npm mirror.People in China can use *https:\u002F\u002Fnpmmirror.com\u002Fmirrors\u002Fnpm\u002F*\n\n### :warning: Gotcha!\n\nPlease note that any global npm modules you may have installed are **not** shared between the various versions of node.js you have installed. Additionally, some npm modules may not be supported in the version of node you're using, so be aware of your environment as you work.\n\n### :name_badge: Antivirus\n\nUsers have reported some problems using antivirus, specifically McAfee. It appears the antivirus software is manipulating access to the VBScript engine. See [issue #133](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fissues\u002F133) for details and resolution.\n\n**v1.1.8 is not code signed**, but all other versions are signed by [Ecor Ventures LLC](https:\u002F\u002Fecorventures.com)\u002F[Author.io](https:\u002F\u002Fauthor.io). This should help prevent false positives with most antivirus software.\n\n> v1.1.8+ was not code signed due to an expired certificate (see the [release notes](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Freleases\u002Ftag\u002F1.1.8) for reasons). **v1.1.9 _is_ code signed** thanks to [ajyong](https:\u002F\u002Fgithub.com\u002Fajyong), who sponsored the new certificate.\n\n### Using Yarn\n\n**tldr;** `npm i -g yarn`\n\nSee the [wiki](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fwiki\u002FCommon-Issues#how-do-i-use-yarn-with-nvm-windows) for details.\n\n### Build from source\n\n- Install go from http:\u002F\u002Fgolang.org\n- Download source \u002F Git Clone the repo\n- Change GOARCH to amd64 in build.bat if you feel like building a 64-bit executable\n- Fire up a Windows command prompt and change directory to project dir\n- Execute `go get github.com\u002Fblang\u002Fsemver`\n- Execute `go get github.com\u002Folekukonko\u002Ftablewriter`\n- Execute `build.bat`\n- Check the `dist`directory for generated setup program.\n\n---\n\n## :bulb: Why another version manager?\n\nThere are several version managers for node.js. Tools like [nvm](https:\u002F\u002Fgithub.com\u002Fcreationix\u002Fnvm) and [n](https:\u002F\u002Fgithub.com\u002Ftj\u002Fn)\nonly run on Mac OSX and Linux. Windows users are left in the cold? No. [nvmw](https:\u002F\u002Fgithub.com\u002Fhakobera\u002Fnvmw) and [nodist](https:\u002F\u002Fgithub.com\u002Fmarcelklehr\u002Fnodist)\nare both designed for Windows. So, why another version manager for Windows?\n\nThe architecture of most node version managers for Windows rely on `.bat` files, which do some clever tricks to set or mimic environment variables. Some of them use node itself (once it's downloaded), which is admirable, but prone to problems. Right around node 0.10.30, the installation structure changed a little, causing some of these to just stop working with anything new.\n\nAdditionally, some users struggle to install these modules since it requires a little more knowledge of node's installation structure. I believe if it were easier for people to switch between versions, people might take the time to test their code on back and future versions... which is just good practice.\n\n## :bulb: What's the big difference?\n\nFirst and foremost, this version of nvm has no dependency on node. It's written in [Go](https:\u002F\u002Fgolang.org\u002F), which is a much more structured approach than hacking around a limited `.bat` file. It does not rely on having an existing node installation. Go offers the ability to create a Mac\u002FLinux version on the same code base. In fact, this is already underway.\n\nThe control mechanism is also quite different. There are two general ways to support multiple node installations with hot switching capabilities. The first is to modify the system `PATH` any time you switch versions, or bypass it by using a `.bat` file to mimic the node executable and redirect accordingly. This always seemed a little hackish to me, and there are some quirks as a result of this implementation.\n\nThe second option is to use a symlink. This concept requires putting the symlink in the system `PATH`, then updating its target to the node installation directory you want to use. This is a straightforward approach, and seems to be what people recommend.... until they realize just how much of a pain symlinks are on Windows. This is why it hasn't happened before.\n\nIn order to create\u002Fmodify a symlink, you must be running as an admin, and you must get around Windows UAC (that annoying prompt). Luckily, this is a challenge I already solved with some helper scripts in [node-windows](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnode-windows). As a result, NVM for Windows maintains a single symlink that is put in the system `PATH` during installation only. Switching to different versions of node is a matter of switching the symlink target. As a result, this utility does **not** require you to run `nvm use x.x.x` every time you open a console window. When you _do_ run `nvm use x.x.x`, the active version of node is automatically updated across all open console windows. It also persists between system reboots, so you only need to use nvm when you want to make a change.\n\nNVM for Windows comes with an installer, courtesy of a byproduct of my work on [Fenix Web Server](https:\u002F\u002Fpreview.fenixwebserver.com).\n\nOverall, this project brings together some ideas, a few battle-hardened pieces of other modules, and support for newer versions of node.\n\nNVM for Windows recognizes the \"latest\" versions using a [list](https:\u002F\u002Fnodejs.org\u002Fdownload\u002Frelease\u002Findex.json) provided by the Node project. Version 1.1.1+ use this list. Before this list existed, I was scraping releases and serving it as a standalone [data feed](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnodedistro). This list was used in versions 1.1.0 and prior, but is now deprecated.\n\n## Motivation\n\nI needed it, plain and simple. Additionally, it's apparent that [support for multiple versions](https:\u002F\u002Fgithub.com\u002Fnodejs\u002Fnode-v0.x-archive\u002Fissues\u002F8075) is not coming to node core. It was also an excuse to play with Go.\n\n## Why Go? Why not Node?\n\nI chose Go because it is cross-platform, felt like less overhead than Java, has been around longer than most people think. Plus, I wanted to experiment with it. I've been asked why I didn't write it with Node. Trying to write a tool with the tool you're trying to install doesn't make sense to me. As a result, my project requirements for this were simple... something that's not Node. Node will continue to evolve and change. If you need a reminder of that, remember io.js, Ayo, all the breaking changes between 4.x.x and 6.x.x, and the shift to ES Modules in 12+. Change is inevitable in the world of software. JavaScript is extremely dynamic.\n\n## :pray: Thanks\n\nThanks to everyone who has submitted issues on and off Github, made suggestions, and generally helped make this a better project. Special thanks to\n\n- [@vkbansal](https:\u002F\u002Fgithub.com\u002Fvkbansal), who provided significant early feedback throughout the early releases.\n- [@rainabba](https:\u002F\u002Fgithub.com\u002Frainabba) and [@sullivanpt](https:\u002F\u002Fgithub.com\u002Fsullivanpt) for getting Node v4 support integrated.\n- [@s-h-a-d-o-w](https:\u002F\u002Fgithub.com\u002Fs-h-a-d-o-w) who resolved the longstanding space escaping issue in path names ([#355](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Fpull\u002F355)).\n- [ajyong](https:\u002F\u002Fgithub.com\u002Fajyong) who sponsored the code signing certificate in late 2021.\n\n\u003Cbr\u002F>\n\n![Contributors](https:\u002F\u002Fcontrib.rocks\u002Fimage?repo=coreybutler\u002Fnvm-windows)\n","NVM for Windows 是一个用于 Windows 平台的 Node.js 版本管理工具，用 Go 语言编写。它允许用户在同一台机器上轻松安装、切换和管理多个 Node.js 版本，支持自动环境变量配置与版本切换。此项目获得了微软、npm 和谷歌等官方推荐，特别适合需要在不同项目中使用不同 Node.js 版本的开发者。相比原生 nvm（仅支持 Mac\u002FLinux），NVM for Windows 采用了一套全新的设计理念和技术实现，更加符合 Windows 用户的操作习惯。",2,"2026-06-11 02:39:58","top_all"]