jetbrains is opensource. https://github.com/JetBrains/intellij-community
if you want the enterprise features then yes, you get a closed source version, but otherwise you can just run intellij from years ago if you really wanted.
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Follow the wormhole through a path of communities !webdev@programming.dev
jetbrains is opensource. https://github.com/JetBrains/intellij-community
if you want the enterprise features then yes, you get a closed source version, but otherwise you can just run intellij from years ago if you really wanted.
I'm also quite desperate for an alternative to android-studio, but unfortunately nothing is close yet.
kmp-lsp shows promise, but it has very limited intellisense and shows no errors.
I'm confused. Are you looking for a fancy text editor (VS Code) or a full IDE (Most Jetbrains Products, the actual Visual Studio's)?
Either way, for a fancy text editor, there's VS Codium. Just VS Code without MS bs like telemetry and stuff. Works really well, I switched as soon as I heared about it and never looked back.
Now when it comes to a full blown IDE, I don't think there is anything comparable, especially when you look at features vs cost. Free, or even FOSS solutions, won't even come close to Jetbrains products and I never bothered looking for enterprise solutions since I can't afford them anyway. Depending on your language requirements and OS choice there's Visual Studio of course and even Community used to be pretty good, but I haven't used that one since my switch to Linux so I can't tell how it perfoms nowadays.
Now if I'm wrong, my information is outdated or I may not know about some software that is actually really neat, please correct me.
IIRC QT creator is kind of an open source IDE, but it's also fairly application specific so I'm not sure how suitable it is overall.
There's vscodium too, but the remote extension then is not the same as built in o.g... And oh my pi or any other cli agent would do it.
Else, and keeping it up for having remote editing, I'd suggest emacs doom.
I used to be a JetBrains user for a long time. I now use Gram, a really nice fork of Zed that strips out features that some users may find unsavoury (AI integration, GitHub integration). I don't deeply care about an editor including these features, but I don't use them, so they're unnecessary bloat to me. Gram lets you set a base keymap to be most similar to another editor/IDE you might be used to, and this includes a JetBrains keymap, which is what I use.
If you want the whole AI integration stuff, just use upstream Zed. It's more or less otherwise the same from an end user perspective.
You might dislike it for being too VSCode-y insofar as it's closer to a lightweight editor than to a full IDE like JetBrains products. I would like it if it were more fully featured and felt more like a full IDE, but it works for my purposes, and it is way more responsive thanks to running natively rather than being a JVM program. It's not a RAM hog like JetBrains IDEs either.
It's worth noting that there's a single toggle that, to my knowledge, turns off all AI features in Zed. So if you do not object to the presence of this functionality, but simply do not want to use it, then you're probably better off just sticking with upstream.
However, I'm not sure what you mean by "GitHub integration", so that may not be covered. If you simply mean Copilot support, then that is also disabled by the aforementioned toggle
I just checked out Gram and it looks pretty decent for what I like to do. Thanks for mentioning it!
I think Jetbrains is still fine as an editor but yes, the tooling is getting worse and worse. I recently stopped using the DB tool because it simply wasn't able to reliably connect to my databases. Dbeaver is working great with same databases. For a easy fix that would be my recommendation: community editor Jetbrain tolls for editing code, external tools for git/db/docker and so on.
For personal projects I use neovim and while is a great editor with all the features I need it is a constant struggle. Maintaining configuration is really difficult. If you're using nvim already turning it into IDE can be a fun project. If you're not familiar with it I wouldn't recommend it for development. There's just too much work.
Emacs!
For Java? No equivalent. Honestly it's kinda embarrassing how good Intellij was when I used it, at least compared to the alternatives. For other languages, depends on how much work you're able to accept. Vim can be a large upfront cost in work, but a tailor fit result may be worth it. Them again, I will admit that I prefer the IDE (where applicable) stay minimal.
I moved to neovim several years ago and haven't looked back. Sounds like I got out at the right time
I use kakoune with kakoune-lsp. Definitely not an IDE but it's served my programming needs well.
i use both neovim with lazyvim inside tmux for small edits and jetbrains (pycharm, clion, rider, datagrip, dataspell) for longer larger work sessions. git is best operated in the console, never used any git tools in any ide. they are just overly complicating something super simple. AI can stay out of my editors. if you must use AI there is always oh-my-pi.
I don't know of any other IDE maker that has the depth and quality of language support that JetBrains offers.
Honestly, throwing your toys over a modal commit dialog seems a bit misguided when switching to any other IDE is going to involve coping with much bigger changes.
You have the option of using an old version if the newer ones aren't to your style. I'm still on the 2023 version of PyCharm, for instance. And the 2020 version of PhpStorm, haha
I switched to Zed from VSCode maybe around 2 years ago and havent looked back.
It's open source with GPL3 license and has plenty of languages supported via LSP.
If you need AI support they have this natively via the Agents panel and you can also use terminal agents in there BUT if you don't you can just hide the agents panel and never connect to any account and you never really see any of the AI features. This is essentially what I do for private work where I don't use AI, and for my job where we are soft-forced to adopt.
Super easy to port over your settings.json from VScode with all your shortcuts etc already.
I tried to switch to Zed at the start of the year but couldn't Zed's tabs to work.
It seems like the biggest paper cut preventing users from switching to Zed and they don't seemed interested in fixing it.
I couldn't find any settings to fix it.
Were you able to figure it out?
How every program (e.g. editors, browsers, file explorers, etc...) works:
How Zed works:
The default in Zed is Ctrl + Shift + ] OR [ for next or previous tab respectively.
If you want to customise it you can do in the keymap editor, it's called pane: activate next item
But that's what I already have and it doesn't work properly.
Here's my minimal test case for a typical mid-work layout:
Now the test:
The tab switching is stuck switching only the tabs in that pane, counter to the way every other tabbed program works.
Holding Ctrl + Tab should cycle through every tab.
Maybe the keymap setting isn't correct? e.g. maybe you put it in the wrong context?
This is what I have:

I see pane: activate next item and tab switcher: toggle both set to Control Tab (⌃⇥).
Maybe they're incompatible?
Edit: I rebounded both keybinds into separate unused keybinds and it still doesn't work.
I remember seeing Zed a while back and them heavily promoting the AI capabilities. I'll give it a try to see if it's built upon a solid base and works well without the AI stuff. There are features in Jetbrains IDEs that I'm quite fond of like cross-file refactoring, proper debuggers, (up until recently) the docker integration, and their database browser. Hopefully at least cross-file refactoring and debugging is available.
Thanks for pointing it out.
Seconding the Gram recommendation (it is actively maintained and configs are nearly entirely interoperable between Zed & Gram, so if Gram gets abandoned it'd be easy to switch to Zed), though I will also point out that Zed has a single toggle for all AI features. You can just disable that and no AI. It stays disabled too, unlike with JetBrains which I found would periodically re-enable AI features I'd disabled...
might want to check gram editor
A fork of Zed without AI, I see. I'll need to look at how active it is. Forking is easy, maintaining is hard.
Thanks for the suggestion.
Zed has a simple disable_ai setting that turns it all off. Not sure why the fork is necessary.
Eclipse is worth trying. If you can get past its slightly psychotic autocomplete it's an excellent IDE.
I’ve been using jetbrains for many years. I believe I have cursed at their products over 1000 times, opened or tracked issues, seen bugs take many years to be fixed, lived with other bugs.
I’ve seen how their adaptations for AI broke many things that worked; I’ve learned, over many years, to subscribe, but use products that are released in the fall or winter because there are too many bugs earlier in the year. So often my copies are not new.
Yet I never have found a replacement I like better.
I am afraid that even with all the bugs, it may unfortunately be the best we have at the moment. I would gladly pay a subscription to an opensource alternative that focused on being on par to old Jetbrains IDEs. Maybe it's time to just use my perpetual fallback license and call it a day with Jetbrains.
I use jetbrains IDE since years, and I did some really strange stuff with them.
I used clion with experimental GCC builds and crashed the IDE multiple times. Opened a bug. Got fixed.
We found a bug in their Datagrip Sybase DWH integration. I met some of their team at a conference a week later, talked with them about the bug in person, got fixed during the day.
Sure, bugs may take a while, but thei get fixed.
And to AI. Cursor should be able to connect to jetbrains IDEs from the outside.
There is no other, universal, IDE stack that can come close. Ok, maybe if you are willed to invest weeks in an emcas or neovim setup
There is no other, universal, IDE stack that can come close.
Maybe that is the sad conclusion and a perpetual fallback license is what I'll end up with.
Ok, maybe if you are willed to invest weeks in an emcas or neovim setup
Neovim was highly praised by a colleague and a friend. And when streaming was a big thing (COVID, eh?), there were neovim streamers out there singing it praises. But after a month of failing to configure anything that was even close to what a proper IDE has, I just dropped it. The meme about vim and emacs users spending years configuring their IDE is no joke, and I just don't have the time for that.
And to AI. Cursor should be able to connect to jetbrains IDEs from the outside.
Yeah, Cursor has an ACP, but the ACP integration in Jetbrains is... meh. I tested a few to make my employer happy, but found that the major problem in the chain was/is the Jetbrains IDE. It seems like Jetbrains IDEs are much better without agentic coding than with. At least my experience.
I am not a big fan of coding agents. I have no troubles with Claude and jetbrains for what I personally do. But I use it for docs, minor fixes and test cases.
Primagen is one of those neovim nerds, not sure if he published its setup anywe6
It's so intimidating how fast Primagen is with Vim. Wish I had the time and his stamina to learn a fraction of what he does with motions. He once said he kinda cringes when he has to watch people using a regular IDE.
Anyways. Vim nerds may despise this but I'd never would try to tailor my own Neovim config. I straight up started with LazyVim. Still not free from confusing elements but after I jotted down all my most needed motions and used them over and over, it is approximately usable. Still fuck up some motions and end up with gibberish, still faster with a regular IDE, but I now would know my way around Vim, if no other editor would be around.
What the community has accomplished to create within a TUI is astounding. Equally the amount of work that has gone into plugins. Code completition and debugging support, e.g. for Rust is excellent.