- Boris from the Claude Code team here.
Some of the engineers working on the app worked on Electron back in the day, so preferred building non-natively. It’s also a nice way to share code so we’re guaranteed that features across web and desktop have the same look and feel. Finally, Claude is great at it.
That said, engineering is all about tradeoffs and this may change in the future!
by yodsanklai
6 subcomments
- Because code isn't free.
I can see it in my team. We've all been using Claude a lot for the last 6 months. It's hard to measure the impact, but I can tell our systems are as buggy as ever. AI isn't a silver bullet.
- Claude should have gone for native apps and demonstrated that it is possible to do anything with their AI.
I'm currently building a macOS AI chat app. Generally SwiftUI/AppKit is far better than Web but it performs bad in few areas. One of them is Markdown viewer. Swift Markdown libraries are slow and lacks some features like Mermaid diagrams. To work around this, some of my competitors use Tauri/Electron and few others use WKWebView inside Swift app.
Initially I tried WKWebView. Performance was fine and the bridge between JS and Swift was not that hard to implement but I started seeing few problems especially due to the fact that WebView runs as separate process and usually a single WebView instance is reused across views.
After few attempts to fix them, I gave up the idea and tempted to go fully with Web rendering with Tauri but as a mac developer I couldn't think about building this app in React. So I started building my own Markdown library. After a month of work, I now have a high-performance Markdown library built with Rust and TextKit. It supports streaming and Markdown extensions like Mermaid.
Most of the code was written by Claude Opus, and some tricky parts were solved by Codex. The important lesson I learned is that I’m no longer going to accept limitations in tech and stop there. If something isn’t available in Swift but is available in JS, I’m going to port it. It’s surprisingly doable with Claude.
- Likewise OpenAIs browser is still only available on macOS, four months after launch, despite being built on a mature browser engine which already runs on everything under the sun. Seems like low-hanging fruit, and yet...
- Free as in puppy
Edit: The title of the post originally started with "If code is free,"
- This post and this entire thread are HN-sniping to the millionth degree. We have all the classics here:
- AI bad
- JavaScript bad
- Developers not understanding why Electron has utility because they don't understand the browser as a fourth OS platform
- Electron eats my ram oh no posted from my 2gb thinkpad
by BoiledCabbage
3 subcomments
- Because Anthropic has never claimed that code is free?
It's pretty easy to argue your point if you pick a strawman as your opponent.
They have said that you can be significantly more productive (which seems to be the case for many) and that most of their company primarily uses LLM to write code and no longer write it by hand. They also seems to be doing well w.r.t. competition.
There are legitimate complaints to be made against LLMs, pick one of them - but don't make up things to argue against.
by felixrieseberg
2 subcomments
- Hi, Felix here - I'm responsible for said Electron app, including Claude Code Desktop and Claude Cowork.
All technology choices are about trade-offs, and while our desktop app does actually include a decent amount of Rust, Swift, and Go, but I understand the question - it comes up a lot. Why use web technologies at all? And why ship your own engine? I've written a long-form version of answers to those questions here: https://www.electronjs.org/docs/latest/why-electron
To us, Electron is just a tool. We co-maintain it with a bunch of excellent other people but we're not precious about it - we might choose something different in the future.
- Cluade is an Electron app because this is a cultural issue, not a technological one. Electron could make sense if you are a startup with limited development force. For big companies that want to make a difference, to hire N developers and maintain N native apps is one of the best bet on quality and UX you can do, yet people don't do it even in large companies that have the ability, in theory, to do it. Similarly even if with automatic programming you could do it more easily, still it is not done. It's a cultural issue, part of the fact that who makes software does not try to make the best possible software anymore.
by the__alchemist
0 subcomment
- Or: Why can't I log in to Claude on my laptop? It opens a browser with an indefinite spinner, and when I click "Login" on the website, it forwards me to register instead. Not really selling it as the future of coding if their fundamentals are this screwed up!
- Code is not and will never be free. You pay for it one way or another. It will take a couple of years for things to cool down to realise that there is more to software than writing the code. But even if AI can write all the code - who is going to understand it. Don't tell me this is not needed. RTFM is what gives hacker the edge. I doubt any company want to be in a position where they simply have no clue how their main product actually works.
- But nobody says code is free(?). Certainly not Claude, that experimental compiler costs $20K to build. That openclaw author admitted in Lex Fridman talk that he spends $10k's on tokens each month.
- This is such a litmus test for a tool that "in few months will be writing 90% of all code". If a multi-billion dollar bleeding edge company can't use Claude Code to create and maintain a native GUI then no one else stands a chance.
by alexfromapex
6 subcomments
- I don't know why anyone uses Electron anymore, Tauri produces much smaller binaries and is amazing.
- I don't care wether its electron or not but the now ship a full vm with Claude which not only takes 15 GB of storage but also uses so much memory even though I just use chat. Why does that even need to be started?
- Heh, I felt the same. I'm a web dev but I do not want a electron app. We can do better, I used to write electron apps because I wasn't able to build a proper native app. Now I can!
I've been building a native macOS/iOS app that lets me manage my agents. Both the ability to actually control/chat fully from the app and to just monitor your existing CLI sessions (and/or take 'em over in the app).
Terrible little demo as I work on it right now w/claude: https://i.imgur.com/ght1g3t.mp4
iOS app w/codex: https://i.imgur.com/YNhlu4q.mp4
Also has a rust server that backs it so I can throw it anywhere (container, pi, etc) and the connect to it. If anyone wants to see it, but I have seen like 4 other people at least doing something similar: https://github.com/Robdel12/OrbitDock
- Maybe code is free, but code isn't all that goes into building software. Minimally, you have design, code, integrate, test, document, launch.
Claude is going to help mostly with code, much less with design. It might help to accelerate integration, if the application is simple enough and the environment is good enough. The fact is, going cross-platform native trebles effort in areas that Claude does not yet have a useful impact.
by umairnadeem123
0 subcomment
- The real answer buried in Boris's comment is "Claude is great at it" - meaning LLMs produce better Electron/React code because that's what most of the training data looks like. This creates a self-reinforcing loop: teams use AI to write code, AI is best at web stack code, so teams choose web stacks, which produces more web stack training data. The practical implication is that "what stack should we use" increasingly has an implicit factor of "what stack does our AI tooling produce the most reliable output for" and right now that's overwhelmingly JS/TS/React.
- The quality of the ChatGPT Mac app is a major driver for me to keep a subscription. Hotkeys work, app feels slick and native. The Claude Mac app I found so poor that I'd never reach for it, and ended up uninstalling it — despite using the heck out of Claude Code on a Max plan — because it started blocking system restarts for updates.
- The cobbler's children have no shoes, but at least the cobbler's children aren't running three instances of Chromium.
- Code is cheaper but not free is why.
Also AI is better at beaten path coding. Spend more tokens on native or spend them on marketing?
- That, and the IntellIJ plugin of Claude is basically the Claude CLI running in a terminal. Also pretty underwhelming.
by Austin_Conlon
0 subcomment
- Would be a much better UX if it had multi-window support and a separate settings window.
- Why is no one admitting that even though resources like RAM, CPU, etc. are plentiful nowadays, they should still be conserved?
Computers have gotten orders of magnitude faster since 2016, but using mainstream apps certainly don't feel any faster. Electron and similar frameworks do offer appealing engineering tradeoffs, but they are a main culprit of this problem.
Sure, the magnitude of RAM/compute "waste" may have grown from kB to MB, but inefficiency is still inefficiency - no matter how powerful the machine it's running on is.
- Because it doesn’t matter. The biggest AI apps of last year were command line interfaces for cripes sake. Functionality and rapid iteration is more important.
If only AI had more Liquid Glass, lol
- I have been getting claude to us free pascal/lazarus to write cross-platform (linux qt & gtk, windows and cocoa) apps as well as porting 30-year old abandoned Windows Delphi apps to all three platforms using precisely because I can end up with a small, single binary for distribution after static linking.
I hope that prevalence of AI coding agents might lead to a bit of a revival of RAD tools like lazarus, which seem to me to have a good model for creating cross-platform apps.
- Here is what worries me the most at the moment: we're in a period of hype, fire all the developers, we have agents, everybody can code now, barrier is not low - it's gone. Great. Roll up a year from now, and we have trillions of lines of code no human wrote. At some point, like a big PR, the agent's driver will just say yes to every change. Nobody now can understand the code easily because nobody wrote it. It works, kinda, but how? Who knows? Roll up another few years and people who were just coding because it's a "job" forget whatever skill they had. I've heard a few times already the phrase "I didn't code in like 10 months, bruh"...
Then what?
Not saying I'm not using AI - because I am. I'm using it in the IDE so I can stay close to every update and understand why it's there, and disagree with it if it shouldn't be there. I'm scared to be distanced from the code I'm supposed to be familiar with. So I use the AI to give me superpowers but not to completely do my job for me.
- Claude desktop really sucks, a monster on resource hog
- Why stop there!
We should refuse to accept coding agents until they have fully replaced chromium. By that point, the world will see that our reticence was wisdom.
- Code isn’t free when you have to review and QA it
- The use of "Free" in the title is probably too much of a distraction from the content (even though the opening starts with an actual cost). The point of the article does not actually revolve about LLM code generation being $0 but that's what most of the responses will be about because of the title.
- > The resulting compiler is impressive, given the time it took to deliver it and the number of people who worked on it, but it is largely unusable. That last mile is hard.
You're easy to impress, that explains the unrealistic expectations "on the surface".
That's some strange analogy, though, basic usability is the first mile, not the last. Coming back to the frameworks and apps, the last mile would be respecting Mac unique keyboard bindings file for text editing. First mile is reacting to any keyboard input in a text field. Same with the compiler, basic hello world fail isn't the last mile.
by hacker_homie
2 subcomments
- Because it's the most popular & flexible cross platform user space compositor:
- unlike QT it's free for commercial use.
- I don't know any other user land GUI toolkit/compositor that isn't a game engine(unity/unreal/etc).
by MontyCarloHall
0 subcomment
- I am curious how much Claude Code is used to develop Anthropic's backend infrastructure, since that's a true feat of engineering where the real magic happens.
- The gotcha style "if AI is so good, why does $AI_COMPANY's software not meet my particular standard for quality" blog posts are already getting tedious.
- Not all code qualities are free. Good quality code, still expensive.
by lateforwork
7 subcomments
- > Electron apps are bloated; each runs its own Chromium engine. The minimum app size is usually a couple hundred megabytes.
I only see these complaints on HN. Real users don't have this complaint. What kind of low-end machines are you running, that Chromium engine is too heavy for you?
> They are often laggy or unresponsive.
That's not due to Electron.
> They don’t integrate well with OS features.
If it is good enough for Microsoft Teams it is probably good enough for most apps. Teams can integrate with microphone, camera, clipboard, file system and so on. What else do you want to integrate with?
by adamtaylor_13
0 subcomment
- As many have pointed out, code is not free. More than that, the ability to go fast only makes architectural mistakes WORSE. You'll drive further down the road before realizing you made the wrong turn.
A native app is the wrong abstraction for many desktop apps. The complexity of maintaining several separate codebases likely isn't worth the value add. Especially for a company hemorrhaging money the way the Anthropic does.
- The framing here assumes you need to ship native to all 3 platforms to justify leaving Electron. You don't.
I've been building a native macOS AI client in Swift — it's 15MB, provider-agnostic, and open source: https://github.com/dinoki-ai/osaurus
Committing to one platform well beats a mediocre Electron wrapper on all three.
by nozzlegear
0 subcomment
- The Claude app is one giant garbanzo bean. I uninstalled it and pinned the web app to my dock instead.
by CTDOCodebases
0 subcomment
- Because when a service is running at a loss the investors want their money to be spent efficiently.
- Or they could write native client apps using Qt to handle that “last 10%” of native app polish.
- electron is comprehensive. maybe claude is not there yet. ecosystem still important
- LLMs are best at JavaScript.
- Exactly. Shameful explanation.
- I don't think anyone on the AI hype train cares about performance, memory usage, or code quality (measured by bugs). Customers will, though.
by internet2000
0 subcomment
- I bet it's because of Windows idiosyncrasies.
- Probably the same reason _teams_ is a js app, money
by PunchyHamster
0 subcomment
- The garbage one is now indeed essentially free
- > For now, Electron still makes sense
A few years ago maybe. Tauri makes better sense for this use case today - like Electron but with system webviews, so at least doesn't bloat your system with extra copies of Chrome. And strongly encourages Rust for the application core over JS/Node.
- If author tried native macOS development with agent for an hour, they wouldn’t know where to begin explaining how different is agentic web development from native. It was better year ago, you could actually get to build a native app.
Now all models over-think everything, they do things they like and igniter hard constraints. They picked all that in training. All these behaviours, hiding mistakes, shameful silence, going “woke” and doing what they think should be done despite your wishes.
All this is meliorated in web development, but for native it made it a lot worse.
And visual testing, compare in-browser easy automated ride with retest-it-yourself for 50th time.
- Look at their backlog...
by robertoandred
0 subcomment
- I really hope React Native’s support for Mac and Windows apps takes off. The benefits of Electron without Chromium, plus native controls/functions.
- Can we talk about how much copilot sucks in vscode? I have to use for work, buggy as hell for the premier product of a trillion dollar company.
- Claude code runs in the terminal, not Chromium. It's hardly an "electron app" at all.
It's a nodejs app, and there is no reason to have a problem with that. Nodejs can wait for inference as fast as any native app can.
- Your post already clearly covers the reason.
It is easy to crank out a one-off, flashy tool using Claude (to demo its capabilities), which may tick 80% of the development work.
If you've to maintain it, improve, grow for the long haul, good luck with it. That's the 20% hard.
They took the safe bet!
- Because JavaScript is the best for the application layer. We just have to accept that this is reality. AI training sets are just full of JS... Good JS, bad JS... But the good JS training is really good if you can tap into it.
You just have to be really careful because the agent can easily slip into JS hell; it has no shortage of that in its training.
by Jackevansevo
1 subcomments
- Because Anthropic and the rest of them are lying to you about the sophistication of these tools.
The fact that claude code is a still buggy mess is a testament to the quality of the dream they're trying to sell.
by pessimizer
0 subcomment
- I assume it's because LLMs are overrated and trash so they chose something that was easy for lazy developers, but I'm probably just cynical.
You would think with programming becoming completely automated by the end of 2026, there'd be a vibe coded native port for every platform, but they must be holding back to keep us from all getting jealous.
by waynesonfire
0 subcomment
- Because coding is not the hard part.
by dcchambers
1 subcomments
- Actual reason: there's far more training data available for electron apps than native apps.
And despite what Anthropic and OpenAI want you to think, these LLMs are not AGI. They cannot invent something new. They are only as good as the training data.
by thepancake
0 subcomment
- Nailed it.
by SuperHeavy256
3 subcomments
- Call them out, call them out. Why isn't Claude a native Windows x64 app if code is free?
by game_the0ry
0 subcomment
- Electron is a good choice for native-like desktop apps, even with the downsides.
Yes, feel free to downvote me.
- Write everything in C.
by BoredPositron
1 subcomments
- Yawn the 90/10 excuse again and 'Shipping it everywhere' is a blatant lie there is still no Linux release. Looks like you are talking about Claude Code as Claude. Claude would be the Desktop app...
by goodquestions
0 subcomment
- Ho is Claude?
- [dead]
- [dead]
by pipeline_peak
0 subcomment
- Tldr
nailing down all the edge cases
by OGEnthusiast
0 subcomment
- [dead]
- Electron isn't that bad. Apps like VSCode and Obsidian are among the highest quality and most performant apps I have installed. The Claude app's problem is not electron; its that it just sucks, bad. Stop blaming problems on nativeness.