What is the preferred IDE for Scala (other than IntelliJ IDEA)?

Just finding out today that we now need to PAY for IntelliJ IDEA even just for private individual use. What other (hopefully freeware) options are available for Scala programming?

Uhm, I’m not sure about the IntelliJ thing.
But to answer your question, you can use metals to enhance multiple text editors with IDE-like capabilities.

Personally, I like to use VSCode + metals + sbt (as the BSP) as my default setup.

Hello,

I’m from the IntelliJ Scala team. IntelliJ IDEA Community Edition with the Scala plugin is free of charge, as always. I guess it might be a bit confusing, because on the main IntelliJ webpage only the Ultimate (paid) edition is being advertised. To download the Community edition, you need to either install JetBrains Toolbox first (JetBrains Toolbox App: Manage Your Tools with Ease) and find it in the list of JetBrains products there, or you can download the standalone version from here: Other Versions - IntelliJ IDEA .

6 Likes

VS Code + Metals + SBT is great!

If you don’t need a big project + complex build tool, you can also use VS Code + Metals + Scala-cli

2 Likes

After years of using Eclipse I switched to Sublime Text + Metals +SBT. It’s really easy to configure to your own liking. Because I never used IntelliJ I cannot compare it to that. Note that Sublime is not free, but can be evaluated as long as required, payment based upon trust :innocent:

I just wished this other link was easier to find on Jetbrains page itself or via a search engine.

If you are on linux there is this unofficial ppa for the community version:

You can on linux/ubuntu/debian:

sudo add-apt-repository ppa:mmk2410/intellij-idea-community
sudo apt update
sudo apt install intellij-idea-community

If you want vscode + scala on linux/ubuntu/debian I can really recommend the combo sdkman + deb-get:

Whit sdk and deb-get on your path you can:

sdk install scala 
sdk install scalacli
sdk install sbt
deb-get install code
code --install-extension scalameta.metals