Hey! Some time ago, I started a new dev environment on a new temporary computer, so I needed to re-install all the dev things.I took this opportunity to document the tech setup I use.
This is a temporary computer, therefore This isn’t an exhaustive list, only the bare minimum required for a Windows and PowerShell Web setup.
Basics 🔩
Node.js with nvm
The most convenient way to install Node is through its official website, download Node and install, but since I am working on multiple projects, I am required to switch between different versions of Node, Therefore I need a Version Manager for Node.js. It is good practice to be able to change node versions even when you will only ever use just one.
I choose a Node version manager called – nvm.
Download nvm-setup.exe from here and install.
Note: nvm is installed per-user and invoked per-shell.
It is not recommended, when there are more than one builder agent.
If you already installed Node.js, The nvm installer will prompt you to add the installed node version in nvm.
If you just want to install and use the latest version of Node.
Just run nvm use latest
It will Install and switch to latest version of Node.
After installations, There are 3 commands in PowerShell to install a version of Node.js
- Run nvm install latest to install the Latest Node.js.
- Run nvm install lts to install the Latest Node.js(LTS) version.
- Run nvm install <version> to install a specific version of node.
To see all the installed node versions, run nvm ls
To switch to a specific version of node, run nvm use <version>
pnpm – package manager
pnpm is a drop-in replacement for npm, the default package manager installed with Node.js.
pnpm is 3 times faster than npm and is more memory efficient, as package versions are never saved more than once on a disk.
Run iwr https://get.pnpm.io/install.ps1 -useb | iex to install pnpm.
Also enable corepack using corepack enable pnpm which is used to manage package managers.
Settings (JSON): settings.json gist
Theme: Head in the Clouds
File Icon Theme: Monokai Pro
Other Extensions:
Source: hashnode.com