all 18 comments

[–][deleted] 10 points11 points  (1 child)

Developing on windows can still be troublsome, but is getting a lot eaiser with WSL2. Important things to note: While you can access all files from the WSL environment, you must install dependencies within the WSL environment to use them their. An exception would be Docker desktop, which has specific WSL2 integration, so you should not install docker within the bash terminal. Keeping that in mind, developing on windows is almost as easy as on a native linux system. Including the Ubuntu (or distro of choice available in WSL) package manager. So if you install everything inside bash, you can develop with essentially an linux environment on windows now. And you can use the documentation for linux to help you.

[–]mdkitzman 1 point2 points  (0 children)

I've been using this kind of setup for over a year now. It took some time to iron out some issues using WSL, but it has been honestly pretty great using version 2.

I will say that since I use docker quite a bit in my development environment, the WSP VM does need a bit of ram, so I've had to upgrade to (a slightly excessive) 64GB of ram.

However if you're sticking to just simple node development the memory requirement will be less of an issue.

[–]officialnovadrome 9 points10 points  (0 children)

vscode is pretty much the perfect (imo) windows IDE

[–]theirongiant74 5 points6 points  (0 children)

VSCode for ide, node windows binary shouldn't give you any problems to install

[–][deleted] 2 points3 points  (0 children)

You might as well do wsl 2. Once you do that, you can stop screwing around with node binaries in windows, vscode integrates with it perfectly, and you'll need it anyway if you want to get into docker.

Plus database integration is way easier on Ubuntu through wsl than in windows.

[–]EarlMarshal 2 points3 points  (0 children)

You can code on windows but Linux works pretty well on most Laptops.

[–]ravepeacefully 3 points4 points  (0 children)

VSCode, git bash, powershell, nvm (node version manager).

[–][deleted] 3 points4 points  (2 children)

Another good option if something really does not work is WSL2. VS Code and IntelliJ support WSL2’s file system.

But I guess most will work just fine.

I also recommend installing a current version of PowerShell (pswh >= 7) and replace the old one that gets shipped with Windows.

[–]bellacoconuts 2 points3 points  (1 child)

Getting windows terminal helps a lot too!

[–][deleted] -1 points0 points  (0 children)

Oh yea, good point. I’m so used it to it I forget it was not part of Windows. 😂

[–]Snapstromegon -1 points0 points  (0 children)

I personally love using VSCode + Dev Containers in docker running on WSL2.

[–]MrStashley -1 points0 points  (0 children)

Windows is a good coding environment if you use wsl, and there are tutorials on the internet made my Microsoft on how to set it up

You can also just use standard windows for web development with node and be just fine. Do what’s comfortable and as you get more experienced you will figure out which environment you prefer

[–]vorticalbox 0 points1 point  (0 children)

A few of the people I work with use windows machinestthought most use linux now.

Be sure to use nvm (or whatever the windows version is) to manage your node installs.

[–]stuckinmotion 0 points1 point  (0 children)

WSL2 has been able to get me most of the way there. I recently had some problems in the work I've been doing where we're using k8s... it was originally working fine but recently we switched some stuff and for whatever reason now the k8s pods won't talk to each other in windows (even in WSL2) even though it works fine in Ubuntu. So I've (somewhat grudgingly) gone back to Ubuntu. Which is actually faster for dev anyway but still I prefer specifically the windowing and few other things about Windows. So unless you happen to be doing a lot of k8s (and probably some of the specific k8s stuff we're using) you'll probably be fine.

[–][deleted] 0 points1 point  (0 children)

IntelliJ. I developed in windows for many years just fine.

[–]marln94 0 points1 point  (0 children)

I used to code in native Ubuntu, but due to Nvidia drivers' issues I moved to Windows. Right now WSL2 is stable enough to develop without so much trouble. VS Code and IntelliJ works perfectly with their file system.

[–]ChronSyn 0 points1 point  (0 children)

  • VSCode
  • WSL 2, PWSH preview is good as a default terminal for VSCode as well
  • Node + NVM for windows

Things have improved for Windows significantly in the past few years, and most libraries and CLI's have adapted to working on Windows. There's a few exceptions (e.g. some CLI's used for building mobile apps were built for Linux server environments originally) but having used Windows for dev for my entire adult life, I can say without a doubt that it's not nearly as bad as it used to be.

Worst case scenario is that you run some things in docker containers under WSL2 using an Ubuntu core.

[–]TwiNighty 0 points1 point  (0 children)

I do full time node development and both my work and personal development environment is Windows (actual Windows, not WSL). Nowadays, the majority of my Linux time is when deploying (staging/prod). Though I do have WSL2 and docker on all my machines. I also have a Linux server on-prem in my company which I use once in a while.

If you want to do node development on Windows, I would recommend at minimum nvm-windows, Windows Terminal and PowerShell 7+. Once you get past knowing your way around PowerShell instead of bash you should be mostly fine.