When I started programming in JavaScript I used Komodo, mostly because I was using PHP at the time as well. I’ve gradually shifted into using IntelliJ Ultimate which has great support for most of the languages I program in. However, there’s a lot of other IDEs popping up, especially for NodeJS. So I’ve decided to go through them and check them out. The number isn’t what I’m rating them, just the order I’m going through them in.
Microsoft’s newest IDE, this is a lightweight IDE written in HTML, JavaScript, and CSS using Electron. It’s currently at version 0.3.0
, so it doesn’t appear that it’s fully finished yet. Now since it’s Microsoft, it’s closed source.
It has great NodeJS support through it’s launch.json
file. It allows you to define how to launch the process, and it has a lot of debugging tools for once it’s started.
.git
and the .js
/.js.map
files generated by typescriptsettings.json
file--module
so you can require
other files (huge deal for a TypeScript project with more than one file)Overall it’s a pretty nice IDE, it just needs time.
I used Brackets for a few weeks when it initially came out, although it felt lacking so I didn’t use it much after. However I’ve heard it’s gotten much better, so I decided to check it out again. It’s written by guys at Adobe, however it’s very Open Source and has lots of contributors.
One of the first things I noticed, a lack of TypeScript support. But that was okay, because I was able to install an extension which added TypeScript support (installation was fast, and no need to reload the application). The extension however kept randomly indenting and dedenting lines, which got very infuriating. It doesn’t really have NodeJS support, so no autocomplete on required files.
Atom is GitHub’s new IDE. It was designed to be a replacement for those who used Sublime Text. They launched with an invite-only system, which I was invited to.. only to find it was Mac only. Since then they’ve added binaries for Linux and Windows too.
Again, no built in TypeScript support. However they have a huge (somehow bigger than Brackets) package repository. As well, you can install themes to change the UI. Installation took about 3 minutes longer (and nearly crashing) than Brackets did of the TypeScript plugin. However there were no issues with the TypeScript packageThe default UI is clean, until you look at the cluttered file tree.
If you didn’t get it from the name, it’s just Eclipse with a bundle of default plugins. Installation is a lot like Eclipse, there’s no installer and just a zipped folder. Opening it up, takes a little while and the UI isn’t much better. There doesn’t seem to be TypeScript support. The plugin manager is the same as Eclipse’s, so there’s nothing there for it. Running my program, it crashes and leaves nothing in the console.
~~Sublime Text 2 has been pretty well known as one of the better IDEs for not only web development, but several other languages as well. It has a decent amount of packages written for it, as well as color schemes. ~~
The default JavaScript autocomplete is pretty terrible, and basically non-existent. No built in TypeScript support, however Microsoft has an official plugin for it. I had to define the file type of my .ts file as TypeScript manually however. Once done, autocomplete works perfectly. TypeScript however does not compile into JavaScript automatically, and has to be done manually. It does support autocompleting for NPM packages and NodeJS modules, which is nice. However still no autocomplete for any of these.
My original review of Sublime Text was hasty, which I apologize for. It’s a much more in depth IDE than I originally thought, and as well I was using the non-beta version. After installing Sublime Text 3, it has the same snappy launch time. Restarting it is nearly as fast as opening a file. I went ahead and installed Package Control. After installing it, I had an easy time installing TypeScript, NodeJS, and JavaScript completions. Each of the plugins worked perfectly, and I had no issue with any of them.
On inspection of the rest of the packages in the Package Control, there’s a plugin for nearly every language you might want to write. As well there’s plenty of themes, so you can choose exactly what you want your editor to look like. I didn’t have the issue of being forced to restart Sublime Text when I installed packages through Package Control.
I originally did not want to review this, due to personal bias towards it. However, I’ll go ahead and review it now. I initially found IntelliJ Community Edition from other Java developers pushing me to move off of Eclipse, which I’m glad I did. JetBrains has lots of IDEs for specific languages (like WebStorm for Web) however all of their IDEs are built off of IntelliJ and those languages are just plugins.
IntelliJ Ultimate has quite the repository full of official plugins. There’s plugins for NodeJS, JavaScript, HTML, TypeScript, etc. As well they have a community repository where nearly anyone can submit, which contains a lot of other plugins. The official plugins are very well maintained, and most bugs are patched relatively quickly.
So that’s about it, thanks for reading.