An Elixir language plugin for JetBrains IDEs providing syntax highlighting, debugging, and project management.
Intellij-Elixir is a plugin for JetBrains IDEs that adds support for the Elixir programming language. It provides syntax highlighting, code completion, debugging, project management, and integration with Elixir tools like Mix and IEx. The plugin solves the problem of lacking a fully-featured IDE experience for Elixir developers within the JetBrains ecosystem.
Elixir developers who use JetBrains IDEs (such as IntelliJ IDEA, RubyMine, or WebStorm) and want a rich, integrated development environment with advanced editing, debugging, and project management features.
Developers choose Intellij-Elixir for its deep integration with JetBrains IDEs, offering a consistent and powerful toolset familiar to users of other language plugins. It provides a comprehensive feature set that rivals or exceeds other Elixir IDE options, including a robust debugger, smart code navigation, and extensive run configuration support.
Elixir plugin for JetBrain's IntelliJ Platform (including Rubymine)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Includes a full-featured debugger with breakpoints, stepping, variable inspection, and support for Mix and IEx run configurations, as detailed in the Debugger section with steps like examining suspended programs and evaluating expressions.
Leverages the JetBrains platform for advanced code navigation (go-to-declaration, find usages), smart completion for aliases and modules, and structure views, providing a consistent experience for users familiar with other JetBrains plugins.
Seamlessly integrates with Elixir tools like mix format for formatting (including format-on-save), Credo for inspections, and Dialyzer, with run configurations for Mix tasks, IEx, and Distillery releases.
Offers inspections for common errors like ambiguous parentheses and type spec mistakes, along with quick fixes, as shown in the Inspections and Quick Fixes sections, helping maintain code quality.
Many project management features, such as importing projects from external models and module settings, are only available in Rich IDEs like IntelliJ IDEA, limiting functionality in Small IDEs such as PyCharm or RubyMine, as noted in the feature comparison table.
The README highlights 'SDK Setup Known Limitations' where auto-detection can fail, requiring manual configuration, and issues with applying settings correctly, which can frustrate initial setup, especially for newcomers.
When using Windows Subsystem for Linux, there are noted performance issues and setup constraints, such as needing all project components on the same WSL distribution and slower execution compared to native IDE usage, as described in the WSL Limitations section.
Module dependencies in deps are not automatically detected, requiring manual setup in module settings, which can be cumbersome for projects with numerous external dependencies.