Using keyboard shortcuts instead of your mouse can greatly increase your productivity. With so many features IDEA offers, it can be intimidating and difficult to learn all the shortcuts. Fortunately, there is a plugin called Key Promoter X, which can help you.
The idea is simple: whenever you use your mouse to invoke a command in your IDE, a popup is shown, which tells you what the keyboard shortcut for this action is.
It even offers you to assign a keyboard shortcut to an action just performed if there is none yet. After a while, it gets so annoying, that you rather make sure you remember your keyboard shortcuts.
Application security is often unfortunately neglected. These days most of the application code comes from third-party libraries and frameworks. You need to make sure you use new versions without security vulnerabilities. There are tools, which can help you with this. One of them is Snyk.
Snyk offers many features. One of them is IDE plugin, which can scan your dependencies and detect what security vulnerabilities they contain.
This is a simple plugin, which shows a pop-up notification every time you perform an action in IDEA. It shows what action was performed and what is the keyboard shortcut associated with it.
This can be very useful when presenting, during screencasts, pair programming and so on. Especially when using keyboard shortcuts, it can be difficult to follow what's happening without this plugin.
This is a great plugin for coding lessons, workshops, and so on. It allows you to build courses, with a set of tasks, which can be performed directly in your IDE. You can build your own courses or import public courses.
This is available either as a separate plugin or as IntelliJ IDEA Edu Edition, which is basically IDEA Community edition with this plugin already bundled.
This is basically an icon pack, which provides new icons for special files such as Travis configuration,
package.json, lint config, and many more.
This can be very useful as you can immediately recognize these special files, and your project is, therefore, much easier to navigate. For example,
package.json is a json file, but it is much more useful to have a special icon for it as it is an important file for npm projects.
IntelliJ IDEA has a basic spelling checker, which allows you to detect some typos, but it is not much useful on top of that. It is definitely not a replacement for dedicated grammar checking services such as Grammarly.
Fortunately, there is a plugin called Grazie, which enhances the basic spell checker with a lot of useful features. It also detects more advanced issues, such as incorrect grammar. It works completely offline, as well.
It allows you to enable checking of commit messages as well. You can learn more in the blog post Meet Grazie: the ultimate spelling, grammar, and style checker for IntelliJ IDEA.
IDEA already has powerful tools for analyzing your dependencies and potential problems with them, such as conflicts or cyclic dependencies.
Maven helper offers an alternative UI, which shows your dependencies hierarchically. This can be easier to read and navigate. Also, if you're using the community edition, this is your only option.
Creating complex objects can be hard. Of course, you can stick with a simple POJO with a whole bunch of setters, but you cannot enforce that created objects have all the required fields and are not used in an incomplete state. To solve this, you need constructors. With more complex objects, this can lead to a whole bunch of telescopic constructors with many parameters. In these cases, using a builder is much more appropriate.
This plugin can automatically generate a builder for you from a POJO.
If you are struggling with a lot of nested blocks and a lot of brackets, this plugin is for you. It makes it very easy to locate matching brackets as each pair of brackets is color-coded.
It is quite hard to read with the default color theme, so Darcula is much more suitable for use with this plugin.
This plugin is similar to Rainbow brackets, but it does not color your brackets, but rather your indentation. It can be beneficial if you have a lot of indentation levels, which are harder to navigate. It can even mark lines, which don't mark proper indentation levels with red, so it is immediately obvious when there is a mismatch.
Again, this is much less visible in the light theme, so Darcula may be a better choice.
This is a handy plugin, which allows you to perform various actions with your strings such as:
- Escaping/un-escaping for various contexts (Java, HTML, XML, SQL, ...)
- Case switching (lower, upper, kebab, pascal, camel, ...)
Although git support in IntelliJ is already pretty good, this plugin still offers some useful features on top of that.
You can easily see how many commits is your branch ahead/behind. You can configure automatic fetch with configurable frequency. You can automatically see inline blame information on your current line.
IDEA already offers pretty powerful navigation among files. When working with REST endpoints, you may sometimes prefer to navigate to a specific mapping (such as
/persons) instead of class (such as
PersonController). This is in cases where you know the URL, but don't remember which class or method it corresponds to. After pressing the associated keyboard shortcut, you can search your URL mappings and navigate to them directly.
The plugin currently supports Spring, JAX-RS, and Micronaut.
IDEA does support running multiple tasks (configurations) at once, however, this feature is currently very limited.
Multirun plugin does support running multiple configurations at once with much more sophisticated options. This can be very useful when running both Backend and Frontend at once, testing multiple modules, and so on.
It can be very useful to have a mind map editor and viewer directly integrated in your IDE. Not only for quick brainstorming, but also for documentation. The plugin works with
MMD files, which are text-based, so it is very easy to have your mind maps under version control and manage their changes.
These two plugins are similar. They enhance your autocomplete based on scanning open-source projects and intelligently predicting what you probably want to type based on the context.
With Codota, you can also look up relevant examples of some class or method in public projects, which can be handy.
Want to make waiting when idea is loading or building indices more fun? You can replace IDEA progress bars with a Nyan cat version.
If you're a fan of Street Fighter, you can have Hadouken version instead.
This is a powerful plugin with a lot of useful features. It allows you to filter your console output, add custom highlighting or folding of similar line groups. You can even play sound or execute a script when a specific line type occurs in your console output. You can also tail files in your project and much more.
There is a lot of plugins already available, plenty to choose from. Still, there may be no plugin to cover functionality you are looking for. Fortunately, you may be able to get what you need without resorting to developing it yourself.
In March 2021, Jetbrains launched a new site called Plugin Ideas. Essentially you can submit your own idea for a plugin, other people can add their own comments and suggestions. Ideas can be up-voted, so they can get more attention from potential developers who might pick up the idea and implement it. Ideas are neatly integrated with Youtrack issues, so you can track the progress.
What are your favorite IDEA plugins? Share in the comments below.