Hi Erik,
Thanks for following up here.
I’m not going to dispute the additional work you claim you’ve done on the Elixir plugin, and I’m not installing it to check what you’ve changed. The additions you list are at best, a mixed bag.
We’ve (intellij-elixir) also haven’t been able to work on many features as we’d like (time commitments, health, family), mostly due to maintenance burden due to drastic changes in 2025.x, 2026.x. Especially around coroutines. You benefited from that work, the whole process of updating the plugin was something that has caused a fair bit of fatigue/burnout.
We (well sh41) added Windows, WSL support etc - which we’ve lodged multiple bugs about having to use internal APIs at the moment.
If the plugin was dead, sure, it’s still shitty, but wouldn’t have minded as much.
Curious: how many changes do you think you need to make to a maintained open-source plugin before the stance above is justified?
If every open-source plugin gets this treatment from developers who want to make money, how many changes does it take before it becomes a closed-source paid plugin, and we end up with countless variations of SomePlugin Pro Reworked (The Next Generation)? One feature? Two? Two weeks of work?
Could I go and take every open-source plugin in the marketplace and claim I made them, from scratch?
The other major problem is that the Elixir, Slint and Solidity plugins all have active maintainers and public repos. These aren’t abandoned projects.
Let’s be honest
But let’s take a step back and look at what you’ve posted publicly on social media, your responses on the GitHub issues, and some responses I have to your slop.
Let me start with a simple question:
@Bodiam.1 - Were you honest, when you published the plugin, about where it came from?
I don’t believe you were, and I don’t think this was ambiguity or confusion about licensing.
On the 23rd of June 2026, you posted to Reddit that you decided to write a completely new plugin for IntelliJ called Elixir Pro.
It wasn’t until 31 August 2026, when a trial user asked outright whether Elixir Pro was a fork, you told him the community plugin is “mostly LSP based” while yours “reimplements the whole language through PSI” (issue #2, 31 Aug 2026, 3:33 PM GMT+8).
The next day, on issue #1, you called intellij-elixir “the source” your plugin is “quite divergent” from (here), and a couple of hours later you said you didn’t think the licence required attribution (here).
Was the plugin completely made from scratch, by you - as you claimed on Reddit, a fork, an inspiration or what?
@Bodiam.1 - When were you going to be honest about this?
It’s not just attribution - you were outright lying.
I’ll quickly break down your claims, what you said publicly before anyone asked.
- “I was indeed violating the MIT license … I’ve addressed this for all reported plugins.” You fixed the three code forks the same day, and credit for that. But Proguard doesn’t edit plugin.xml or Marketplace pages, and it doesn’t write Reddit posts. That part is on you, Erik. You took the intellij-elixir main branch, from my estimate, mid-June 2026, with a series of open PRs from @sh41, and mwnciau’s HEEx pull request, so it’s not like this wasn’t pre-planned. You did research. You knew what you were looking for.
On the themes: Bearded, Gruvbox and Lucide got third-party notices on 4 September; Panda and Absolutely still ship none. Bearded’s upstream turns out to be GPL-3.0 rather than MIT (my mistake above), and your new notice now declares the whole plugin GPL-3.0. That is a different obligation from MIT: the GPL requires you to make the source available to everyone you distribute the plugin to, including paying subscribers. Where do they get it?
-
“It was caused by an overly aggressive Proguard task, which removed these items.” None of the three upstream jars (intellij-elixir 24.0.1, intellij-solidity 2.4.11, slint-idea-plugin 1.6.1) bundles a licence file, so there was nothing inherited for Proguard to strip; the licence would have to be one your own build added and then discarded, across six Elixir Pro releases over ten weeks, without anyone noticing. That same Proguard config kept the SourceFile attribute on every one of the 2,883 classes in your jar, which is not what “overly aggressive” looks like. And it can’t explain the descriptions, or the Reddit post where you announced “I decided to write a completely new plugin for IntelliJ called Elixir Pro”.
-
“In all plugin descriptions … there’s a reference to it.” Not in Elixir Pro 2026.1.5, 1.7, 1.8, 1.9, 1.10 or 1.11 (June to August), nor in Solidity Pro 2026.2.2 or Slint Pro 2026.1.5. The references, the licence files and the comparison page all appeared on 1 September, the day I posted in the GitHub, and this thread opened - when you finally stopped lying.
-
The original “didn’t support debugging (not sure if does now).” It has since March 2017. The tree you forked has 111 debugger classes; 110 of them are in every Elixir Pro build under debugger/, next to your five-class DAP adapter. Your own day-one description advertised “Debug real Elixir, graphically. Set breakpoints in .ex and .exs files”. That is our debugger. (Unless you mean DAP?)
-
“The Elixir plugin doesn’t work on Window out of the box.” The WSL support in your jar (sdk/wsl/WslCompatService) is Steve Hall’s, merged upstream in January. On 23 June you wrote “I have no way to test it on Windows”, while upstream was running a Windows CI leg on every push. Huh.
-
“Doesn’t deal with multi project files.” Umbrella and multi-module handling has been in the plugin for years. The one concrete multi-project bug on your tracker (#1, absolute paths in .iml) had already been reported on our tracker by the same user (intellij-elixir#3926), because your output was byte-identical to ours. You inherited that bug from us, fixed it on your side, and then cited multi-project support as a reason to pay you. We fixed it upstream on 2nd September 2026.
-
“This plugin is quite divergent from the source, that it’s not an easy 1:1 copy.” About 76% of our class names are in your jar verbatim, roughly 80% once the renamed classes are traced back. You’ve never rebased: every build from 2026.1.5 to 2026.1.12 sits on that June snapshot, and the one piece of upstream work you have pulled in since is Steve’s Symbol API pull request (#3866, merged in July), which shipped as your “native rename” on 1 September. The main jar is still called intellij-elixir-<version>.jar. Your own “Why Elixir Pro” page now says “a commercial fork of IntelliJ-Elixir, not an unrelated rewrite”. Divergent how? New features on top, sure. That isn’t divergence. And even the HEEx support you advertised from day one is mwnciau’s pull request from our tracker (#3696, open since June 2025), taken before we merged it: 34 of the 39 classes under heex/ in your jar carry the same names, and both HEEx icons are byte-identical to the ones in that PR.
-
"I believe that one is mostly LSP based, while mine reimplements the whole language through PSI." What the fuck are you talking about. The PSI implementation is ours: 734 classes under psi/ in your jar, plus the lexer and parser generated from our Elixir.flex and Elixir.bnf, with those file names still in the bytecode. The LSP layer (LSP4IJ plus Expert) is the part YOU added. I don’t know how you posted such nonsense with a straight face.
-
Your why page is incredibly ironic - Elixir Pro's value comes from what happens after that baseline: more framework awareness, more automation, more diagnostics, and a product team responsible for turning those pieces into a coherent day-to-day experience.. Can you share your team? Did they help you create the completely new plugin?
I could break down this entire page and how it’s just open PRs and work you took not just from IntelliJ Elixir, but a bunch of other plugins, and the factual inaccuracies, but I believe this is enough.
None of this changes the legal position, which I’ve never disputed. It’s very confusing for users of the JetBrains ecosystem and for plugin developers, because it wasn’t clear you’d taken someone elses plugin until you were called out on it.
Stop gaslighting, and distracting - you were dishonest from the start, and being called out for it made you finally admit to it, but then tried to make it a “why do you have such a permissive license?!” issue.
I’m not disputing that it’s legal when done properly; that’s the point of Apache 2.0. But your response here shows you knew exactly which licence you were working under, the comparison page you cite was created that same morning after a trial user asked whether this was a fork - it didn’t exist for the first eleven weeks on sale. And the Elixir Pro licence texts went in only after they were pointed out. If this is the business model going forward, I’d recommend reading up on licensing and attribution before the next one.
We all have to eat, and should be rewarded for our work.
But taking maintained open-source plugins, applying some changes, closing the source, claiming it as your “completely new plugin” as a brag on Reddit, and shipping without attribution and bullshit misinformation until called out, then doing the minimum (wrongly, as well), sets a bad precedent for the entire ecosystem. I’m embarrassed for you.
“I believe I’m providing a better experience than the original plugin” is a weak argument when most of that experience is the original plugin. We’ve worked hard on ours too. The Elixir plugin is 12 years old, comes with a lot of legacy code, and it took a ton of work to get the EDT/coroutine migration done.
I’ll leave it to JetBrains at this point - if they would like a full timeline of everything, let me know.
Josh