IntelliJ IDEA has tons of awesome plugins which make this fantastic IDE even better. Here is my battle-tested list of plugins I use for a long time.
General usage plugins
Save Actions plugin does the necessary code cleanup in the background, therefore you can forget once and for all about reformatting code, optimizing imports, putting finals, and so on. Just configure it and things will be done automatically for you.
The idea of colorizing brackets is simple yet ingenious. I think such a feature shall become a default in all IDEs.
This awesome plugin helps to switch case of our strings, encode/decode them, reverse letters, swap, etc. Really saves time and nerves when we need to switch case of multiple strings while refactoring the codebase.
Key Promoter X
This plugin will torture you by displaying little popups when you could use a keyboard shortcut instead of clicking a mouse. Very good to quickly learn IDE shortcuts, until you start to ignore these popups – exactly like I did:)
While Git support is already great in IntelliJ, this plugin makes it even better. Among lots of useful features, I like it shows the number of ahead / behind commits for the current branch and especially appreciate the additional contextual information that inline
git blame gives. It has also a cool feature to delete old branches. No need to run bash scripts again to do it automatically. Great job, Lukasz!
Wanna additional search capability for the output console? Or maybe have the log lines colored? Grep console will do the work.
I guess we have all seen this plugin in action many times while watching live coding presentations. It is cool to know what keys are pressed by the presenter, we can learn some shortcuts too!
Another great idea. Depending on the file (i.e. Java, HTML, CSS, etc.) we can manipulate particular strings and change them to a different, defined ones. For example, just use the key shortcut to switch between
implements keywords in Java.
Need some random strings, integers, decimals, words, or UUIDs? This plugin will generate them for you. Pretty helpful while writing unit tests, especially to put arrays of random data.
Highlights CSV rows in different colors. They are much more understandable afterward.
If we are talking about rainbows, here comes another useful plugin which colorizes the indentation. While we do not need that for i.e. Java, certain other types of syntax – like YAML – will become much more readable (and less error-prone to edit).
Need to format JSONs often? Use this plugin. No need to open a scratch for the purpose of the JSON reformatting.
Regex Rename Files
I love the
Find and Replace function, however, I miss the same functionality for files. Need to rename multiple files at once? This plugin will do the job.
This plugin will mark return statements in functions. I think it helps to reason about the code, especially if you encounter these infamous legacy “Mount Everest” functions. Unfortunately, it does not support i.e. Kotlin.
AceJump allows you to search a text and move there quickly by pressing the shown key(s). It takes a bit of practice but then the plugin significantly decreases the need to use the mouse. Another must-have plugin, I think.
This simple plugin allows enabling/disabling proxy by
Alt+P shortcut. Pretty useful when you need to switch corporate proxy on and off.
Plugins for external tools
Plant UML Integration
Plant UML allows to draw fantastic diagrams (i.e. sequence, use case, class, deployment, and far more) from a piece of code. The plugin does the job in terms of the syntax highlighting and displaying the diagram. A few examples:
If you prefer coding over drawing (like me), Plant UML is a great tool at your disposal. By the way, there is yet another tool useful for such drawings: Python Diagrams. I described it bierfly here: Draw architecture diagrams like a boss!
A Checkstyle plugin allows integrating the IDEA formatter with the Checkstyle configuration file. I have a written little more about the Checkstyle in this post: Automate your code quality in a few minutes
Forgot to check Sonar recently?:) This plugin allows connecting the SonarQube and points out all found issues just in your IDE. Much faster feedback and less to remember.
This is yet another plugin that shows we can do almost everything without leaving the IDE. We can connect this plugin to Jenkins and trigger all jobs from there. It is possible to track the job result, add them to favorites, etc. Definitely another great plugin!
A must-have for Lombok users. I think it does not need any introduction:)
Last but not least – appearance
If you like dark themes, One Dark theme together with Atom Material Icons makes IDEA even prettier.
One Dark theme and Atom Material Icons
I check similar blog posts every year to get an understanding of new jewels in the IDEA plugin family. This is my list for 2021 and hopefully, it will get bigger over time. I am sure I am missing here other great plugins I have no idea of their existence. If you know other plugins that speed you up – please let me know. Thanks!