

Fast feedback loop - plugins are executed without IDE restarts.Minimal setup - no need to create a separate project for plugin development.It also makes it easier to add “missing” IDE features and try these features before creating a “proper” plugin. In a way it’s like creating IDE macros using a programming language. project-specific scripts and workflows that can be added to IDE. From the IDE user point of view, this means that you can write plugins for things you wouldn’t bother writing plugins otherwise, e.g.


The main reason is faster and simpler workflow for plugin development. Even though this blog has details specific to IntelliJ platform and the JVM, some concepts and ideas are universal enough to be applied in other environments. This blog post is about LivePlugin – a plugin for adding/modifying IntelliJ IDEs functionality at runtime without IDE restarts using Kotlin (or Groovy). Surprisingly, this is not the case, and most code editors and IDEs don’t have the functionality to develop extensions at runtime. This is different for code editors and IDEs with their target audience being power users, so it seems like a sensible idea to make extending editor/IDE functionality and task automation as easy as possible. In practice, it’s not suitable for the purpose, and, to be fair, most users are probably not even aware of the developer console, so for a browser development team spending extra effort to make it possible to extend the browser at runtime via console might not be justified. In theory, this allows you to do any kind of automation and extend browser functionality at runtime. Pretty much all modern web browsers have developer tools console which lets you type some JavaScript code and run it in the browser.
