If you are a developer with a background in using big integrated development environments like Visual Studio, Eclipse, JetBrains, etc. than it may be fairly daunting to go back to the terminal (console, command-line, PowerShell, black box where you type in computer instructions) to work with this newfangled programming environment that everyone is talking about: node. Don’t worry, I am here to show you the way to get back the IDE and still develop for node.
Detailed instructions are available here: http://blogs.msdn.com/b/cdndevs/archive/2014/09/04/node-js-tutorial-series-a-chatroom-for-all-part-1-introduction-to-node.aspx
P.S. If you are not scared of the terminal, go ahead and install Chocolatey. It is a great package manager for Windows (similar to Brew on OSX or RPM/Apt-Get/Deb/etc. on Linux).
Basecamp: Visual Studio Community Edition (FREE)
Visual Studio Community 2013 is a new edition that enables you to unleash the full power of Visual Studio to develop cross-platform solutions. You get professional-grade editing, code analysis, and debugging support, support for open-source workflows (Git), compilers for managed languages, C++ and others, cross-platform mobile development for your preferred device and platform, including the web, Android, iOS, and Windows Phone, ability to take advantage of cloud services and incorporate modern app analytics and telemetry with Application Insights.
BUT, most importantly, you can also access all the Visual Studio 2013 extensions on the Visual Studio Gallery. This is the key point! Visual Studio is *the* IDE and the Community Edition is your gateway.
Camp 1: Node Tools for Visual Studio
Node Tools for Visual Studio (NTVS) is a free, open source plugin that turns Visual Studio into a Node.js IDE. NTVS supports Editing, Intellisense, Profiling, npm, TypeScript, Debugging locally and remotely (Windows/MacOS/Linux), as well Azure Web Sites and Cloud Service. Yes… you read that right, you can use Visual Studio (on Windows) to remotely debug node apps running on a Linux server.
Camp 2: Web Essentials
If you have made it this far, you’re pretty much ready to go building node.js web apps. However, I would like to make your experience with Visual Studio even more awesome.
Reason why it’s awesome #1: If you use Markdown, you get full editor with previews and file generation right in your IDE.
Reason why it’s awesome #2: Unminify CSS on Right-Click. This literally blew my mind.
Reason why it’s awesome #4: Preview window for LESS, shows you what the compiled CSS will look like.
I can keep going… but hopefully the point has been clearly made.
Summit: Task Runner Explorer, Package Intellisense, Grunt Launcher Extension
Did you think it was over? No. It’s not over yet, there’s so much more. Three extensions that will make your life painless (if you use Bower, NPM, Grunt, Gulp that is…)
“This extension lets you execute any Grunt/Gulp task or target inside Visual Studio by adding a Task Runner Explorer window. You can also bind any Grunt/Gulp task or target to a Visual Studio event, such as Build and Solution Open. That way you can run certain tasks when you build your project or run Grunt Watch when the solution is opened.” Mads Kristensen rocks.
Scott Hanselman did a great job writing an article demoing how this can all work together.
NPM and Bower package Intellisense directly in the Visual Studio JSON editor… As you edit package.json and are adding packages (if you don’t want to use npm install –save), it will autocomplete and give you package suggestions as you type. It also gives you a context menu on right click to update the package you are hovering on.
Grunt, Gulp, Bower Launcher
This plugin lets you right-click on your gulp or grunt file and execute any of the tasks within, it also gives you a context menu for executing bower updates on right click.
There you have it, everything you need to have an awesome Nodejs IDE on Windows for FREE. If you think I am missing something from this list and it absolutely needs to be on here, you can tweet at me.