Now, even though their parent company does some shitty practices with their other software (claude code), it's a stretch to assume this will also translate into making Bun worse: Being worried makes sense but I remain optimistic about Bun.
Especially given the context of both of these different context: Claude Code is a gem of Anthropic, experiencing extreme growth and where any of its change can result in billing issues.
Bun is a JS runtime, and regardless of its growth, can focus on being the best runtime possible: It doesn't impact billing nor the bottom line of Anthropic, so they don't have to rush out patches due to abuse unlike CC.
It's unclear how it will pan out over the next years, still very early on the acquisition to see if anything will change, but I'm not concerned just yet.
These labs play the game of trying to kill competition in the harness game (because third party harnesses risk commoditizing the underlying LLMs once they are all good enough), while playing a game of chicken with each other how long they can burn money that way before they have to give up.
At some point they have to price their product fairly, and the only hope they have is to have killed all competition by then, which is of course a game that they seem to be loosing. Useful models are getting smaller and cheaper to run every year and it has hit a threshold at which we will see continued development of third party harnesses even without the userbase of subscription users.
Basically the prime bet that they made (that one needs extremely expensive hardware to have useful AI) has already failed. The secondary bet that they can lock users into their ecosystem (which requires them to subsidize their harness via unprofitable subscriptions burning their capital) and be able to monetize that later will also fail. They will have to compete on merit alone, and that is much less profitable.
I thought the prime bet was that the winning lab who reaches takeoff through recursive self improvement will make a galactic superintelligence. Not saying I believe this but the people running the labs do.
I think it is insane that people got into a situation where they had committed to a javascript runtime that had to "figure out how to monetize at some point". It is also bizarre that some people are still hopeful despite it being acquired by one of the most enormously unprofitable companies in the most enormously unprofitable sectors of our industry.
Why? What's the risk? It's open source. Also, speaking of open source, we are happy to commit to open source projects that have no monetization, nor any plans to ever monetize.
There are way too many ways companies arrange to pay themselves and never be profitable to avoid taxes.
Some teams have a push now to go all in on AI; don't even look at the code. I've seen this in action and the results are probably what you'd expect. Works great at some level, but as complexity accumulates (especially across a team with different "technical vocabularies"), the end result is compounding complexity and mistakes and no person or team knows how the software actually works.
No human testing of software or QA; unit + integration + give AI control over the browser/tool. Yes, this how some teams are moving forward now. So some of this may be that Anthropic's culture will end up causing shifts in how the Bun team operates and thinks.
If this type of culture and mindset becomes the norm, I think either the models have to get a lot better or the software quality is going to decline.
Matt Pocock has a great talk here: https://youtu.be/v4F1gFy-hqg
"Code is not cheap. Bad code is the most expensive it's ever been. Because if you have a codebase that's hard to change, you're not able to take advantage of all of the bounty that AI can offer. Because AI in a good codebase actually does really, really well."
Once bad code starts to compound on itself, it's going to be really hard to break out of it.To be fair to Matt Pocock, I know he worked for Vercel and Stately for a while before doing content full time. I can't say anything about his AI content, but I did some of his free lessons when I was learning TypeScript. They included interactive editor lessons and such, so it wasn't just empty videos and fluff like some of the influencers.
I consider this a hard rule, like ad-blocking (this is exactly that, blocking ads as each talk is an ad (or ad in disguise).
Anthropic acquired Bun for their own benefit, to protect and grow their investment in Claude Code. Not for the benefit the JavaScript community at large. Sounds obvious but I guess that has to be pointed out. Outcomes will follow incentives in the long run.
One favorable way to phrase it for Anthropic is they acquired Bun because CC and other internal tooling depended on it so heavily and they questioned it's future as purely OSS.
It remains to be seen how things will actually unfold.
For me it's far from a stretch, in fact it matches closely a pattern that I've seen repeated many times over at this point.
Can you point to any examples of a company with shitty practices buying one without shitty practices that didn't end up with the shitty practices diffusing through the newly-acquired company within a couple of years?
If you start seeing the people that created bun leaving Anthropic, then I'd probably start to worry. And I haven't seen any sign of that yet.
They released more major features and breaking changes in their last patch release than most software sees in two major versions.
I've been using it just as a script runner and npm package manager basically, and it's incredible the amount of work you have to do to find "good" versions. We've had patch versions suddenly freeze on install more than once, we couldn't upgrade for quite a while due to this. I think they broke postinstall scripts with trustedDependencies entirely two minor versions ago - not a mention in release notes, and somehow no one reporting it in GH issues. In 1.1 or so you could get Bun to do trustedDependency builds in postinstall, and then after that you couldn't. I looked around for release notes and saw nothing mentioned. It's been broken for months.
EDIT: Actually I just remembered I delivered a small ERP tool to a business a while back and I did opt to use I think Bun for that because it had the most robust tools to wrap a project into an `*.exe`, that was definitely a better experience than Node. Though since that was dependency-less JS I did the whole thing using Node and then just shipped it with Bun.
There are still things I dislike about Deno, but it really does make package development a lot simpler. JSR is a great upgrade from NPM, and Deno makes it so simple to publish to both NPM and JSR. Strict IO permission system and WebGPU support are also nice to have.
> wrap a project into an `*.exe`
Deno makes this simple too. Though that's where it's bundling features stop. Honestly I am okay with that, I'd rather use Rolldown or Vite for web or library bundling.
1) You need to retest again, mainly because Bun's own native tools should be faster than Node's.
2) My experience is the opposite: For the niche uses I'm on, the rendering process is done 2-3x faster with only a few changes to use Bun's tools.
I've reduced my dependencies 5-10x. Got full TS and JSX/TSX support with zero setup. Watch mode is instant. You can deploy a single binary.
I kept waiting for all the breaking issues people complain online but my experience has been nothing but positive.
Bun has a really nice REPL, can recommend https://bun.com/docs/runtime/repl
They even added sql template string queries like recent popular libraries in v24.
I just built a project using it.
I find Deno's permission system amazing! (although I didn't stick with it until v2)
Everything is closed by default but you're able to write code like normal.
Whenever it needs a permission the code pauses (like `debugger;`) and the terminal asks you "hey, should this script have access to this file/folder"?
- You say yes and the code continues (no need for exceptions).
- You say no and the code stops.
Then after your program has run, you put only the answers you said yes to in a deno.json file and it never has to ask again.
---------------------------------------
I'm currently working on a project that takes in heap of files from one one set of devs, processes them with a heap of files from another set of devs, then compiles and outputs the final product.
The file structure goes like this:
1. Group one devs
2. Group two devs
3. Build output
4. Compiler
So group one only works in their folder, and group two only works in their folder, but needs to see group one's folder.
With Deno it's stupidly easy to do stuff like:
- Scripts in group one only have file read access to group one.
- Scripts in group two only have file read access to group one and two.
- Scripts in the compiler only have file read access to group one and two's folders, only have file write access to build-output folder, and can read the env file in the project's root directory.
- One specific file is only allowed to access a specific URL and port
- Another specific file is only allowed to use the FFI to access a specific shared object.
I don't need to worry about a dev's script accidentally using the wrong file because they messed up the path.
I don't need to worry about a dev accidentally overwriting a file and losing data.
I don't need to worry about a dev blindly going down the wrong road because an LLM convinced them to.
I don't need to worry about a dev using LLMs agents that are trying to make the project do something it's not supposed to do.
I don't need to worry about a dev including a dependency that's doing what it shouldn't be doing.
I don't need to worry about the equivalent of `rm -rf ./$BUILD-OUTPUT` but the env file wasn't set up correctly and $BUILD-OUTPUT is empty/undefined evaluating to `rm -rf ./` and nuking the project's root.
I don't need to worry about supply-chain attacks.
I don't need to worry about namesquatting attacks.
There's so many things I don't need to worry about.
It's such a breath of fresh air.
It's just: you guys read from here, other guys read from here, the compiler writes to here.
Whenever something doesn't fit, the program stops and tells you what file is trying to access what permission.
---------------------------------------
aside: Node added a permission system but it's completely broken by design. Everything's open and you have to manually close each permission yourself. Oh, you don't want this project to have file write permissions? Lets just turn off the file write permissions (and forget to also turn off the subprocess permissions to spawn a shell which rm -rf's the wrong folder).
otherwise, bun has a big "batteries included" thing going on.
For instance,
- Bun.$ to run shell commands
- an entire redis client at Bun.redis
There are dozens of other examples like this
For rapid prototyping, complex glue scripts, etc. it's an absolute joy to work with. There is often no reason to pull in any dependencies to accomplish what you want.
Here are some things shipping in the next version of Bun:
- 17 MB smaller Windows x64 binaries [0]
- 8 MB smaller Linux binaries [1]
- `--no-orphans` CLI flag to recursively kill any lingering processes spawned [3]
- SSL context caching for client TCP & unix sockets, which significantly reduces memory usage for database clients like Mongoose/MongoDB [4]
- Experimental HTTP/3 & HTTP/2 client in fetch [5]
- Experimental HTTP/3 support in Bun.serve() [6]
- Bun.Image, a builtin image processing library [7]
(Along with several reliability improvements to node:fs, Worker, BroadcastChannel, and MessagePort)
The Anthropic acquisition also means Bun no longer needs to become a revenue-generating business. We are very incentivized to make Bun better because Claude Code depends on it, and so many software engineers depend on Claude Code to help get their work done.
[0]: https://github.com/oven-sh/bun/pull/30219
[1]: https://github.com/oven-sh/bun/pull/30098
[2]: https://github.com/oven-sh/WebKit/pull/211
[3]: https://github.com/oven-sh/bun/pull/29930
[4]: https://github.com/oven-sh/bun/pull/29932
- Querying sqlite with tagged template literals
- Bun.password.verify being argon2 is a better default
- HTML imports
- JSX transpilation
- Auto loading .env file
https://burlyburr.com, which hits https://backend.burlyburr.com
https://nodejs.org/api/sqlite.html#databasecreatetagstoremax...
We live in a vastly different world than before, where people are more conscious of ethical concerns and willing to stand on their ground to avoid repeating past mistakes.
It might be premature from a tech standard, but it makes sense from an ethical concern. I don't think misconduct is as easily backtracked as it was before and preemptive measures are needed to avoid the large impact that those decisions make.
Would be interested to hear what makes you say that. I don't see anyone being conscious of ethical concerns more than they were before. I can see slightly more BDS people, for example, but outside of that not much.
For example, i'd been following this issue https://github.com/oven-sh/bun/issues/14102 and eventually all the libraries shipped "if bun do x" into them, which is the opposite of compatibility.
Other than a bundler, Node already has all of these. Different test runner syntax maybe but otherwise TS "just works" out of the box and their built in test runner is totally capable. Not sure I see the need for such a lament over Bun.
Additionally, Bun's push for covering as much of the Node API as possible has pushed Deno towards the same level of compatibility, and now most code is basically runtime agnostic. I'm not sure if I'll ever actually use Bun in production, but I'm glad it exists because the JavaScript ecosystem has been much improved simply due to its existence.
:vomit:
Why do people want this? Shipping constantly is how software breaks. You want tools that are good and stable, not constantly churning. I wish software developers would wake up to the idea that velocity is not a marker of quality.
Careful, focused work can easily sustain daily, or almost-daily, shipping. We've been doing it for decades without LLMs.
LLM-brain is pushing people into continuous by the hour shipping and it is absolutely unecessary and creating code at a rate that cannot possibly be kept up with in relation to quality, performance and security.
The main issue is side effects of effort/thinking it seems. It hallucinates at a much higher rate and skips research in a ton of edge cases even with effort of MAX and disabling adaptive thinking, even on 4.6. Ive said before, but using opus today feels like using sonnet from ~October timeframe. Its not anywhere near what opus 4.5 in January felt like, or even opus 4.6 on release (notably 4.6 on release _really_ over-researched even simple tasks and that behavior is almost entirely gone now even with max effort so they are definitely re-tuning these things on the fly and degrading the experience as a result).
EDIT: I also have a very high suspicion that the way they hydrate thinking is buggy and/or lossy (or maybe unintentionally lossy which leads to bugs). So many behaviors just make no sense at the level I have my setup tuned (I have everything set to "just charge me the most money to hopefully get the best results") and the fact that I havent changed anything while using it daily for months and months on end, but have been getting worse and worse results.
I tried using bun for a project earlier this year and learned that you can't use testcontainers(works fine w/ Deno).
So the more direct question would be: How has Bun actually been since the acquisition?
From what I can tell they have been responding to users as fast as before, and improving the product as well as before.
Always appreciated nuance.
Then you could have been using Deno, like many of us, for years.
Been using Deno happily for many years now.
Did I miss anything?
They are not a runtime, but they do seem to be interested in wrapping a lot of tools with simple top-level commands
https://paperclover.net/q+a/2506010139
> - too much ai chatter. so many examples of it failing to work. ill prove it by showing the most recent ai-generated pull request. yep, it’s failing. i will admit that my feedback on the above items were not very loud, but there has been no attempts to correct this vision.
For my projects I don’t even need any additional dependencies. I use vanilla dom and sqlite
Otherwise if you are looking for and IDE first approach with great AI integration it's the best product out there. I prefer it over CC/Codex.
That said, I'm worried about them having good enough monetization while keeping features open... or at least able to be replicated by others. So I can understand some of the concerns.
Only company that would survive the AI race - the one where the current wave was actually invented along with the research paper, the libraries and even specialised hardware: Google.
Google has a serious problem with its product management culture (long list of products and projects, people even skeptical of Flutter) otherwise they would have surpassed Anthropic long ago.
The key question is how much unique tooling you're relying on. If you can switch to Node tomorrow, great. If you can't, make sure you have a contingency plan.
If not VC funding, then what? Volunteer work? So other people can make money off it?
Our industry has no answer how to fund infrastructure.
You've got FAANG companies using open source projects built by volunteers and doing meagre grants every once in a while, not nearly enough to pay a SWE salary. A smattering of hard to get grants from NLnet, etc. And then places like Anthropic or Grok or OpenAI "buying" open source teams to pull them inside, which inevitably leads to drama.
I don't know what the answer is, but there's a serious issue here. Similar situations in the 80s were why the FSF was founded and the GPL established. (Not to fund, but to protect the rights of authors and users)
More changes like this came and they were not or very hard to configure. I understand the business idea behind it. Make them to use AI as much as possible, get the human out of the loop. More training data. More Token Usage JUHUU.
However I think that made Claude Code so much worse and so much more untrusthworthy. It’s a sneaky attempt to take away the driving wheel from you. And if you follow that logic, way more and way more things seem reasonable.
But mainly for now it just generated a lot of distrust for me
Might as well just open our pants and wave our wangers, hoping for a better world
You see this all over the place with other programming languages.
The ones that have bleeding edge features do so, because there are companies, or universities (for their PhD and Msc thesis), that invest into those ecosystems.
In the end nodejs will keep improving, with Microsoft and Google's baking, and that will be it.
Personally my experience with Bun has been 100% positive so far.
I'm aware full Node support is not there yet and may never happen but with dependencies that support Bun it's been a smooth ride for me.
I've never used Claude Code, but this person doesn't understand what "textbook enshittification" means. "Enshittification" is a feature of certain kinds of business models, progressing through the following stages:
1. Giving away a product free to users, subsidized by venture capital, to gain a monopoly
2. Switching to advertising, then abusing users on behalf of the real customers, advertisers
3. Using monopoly power to abuse real customers (advertisers) to extract as much money as possible
Anthropic's business model doesn't have a "user / customer" dichotomy; their paid users are their customers. And they don't have a monopoly they can use to extract money yet.
ETA: In other words, "Enshittification" isn't just random; you're making the user experience worse in order to make advertiser experience better; and then making advertiser experience worse in order to extract maximum profit. The only complaint that could vaguely be related to profit is the OpenClaw stuff, and that's entirely due to trying to keep the "all-you-can-eat" model for non-OpenClaw users, rather than having to switch everything to metered.
That being said I’ve been worried about the future of Bun anyway. Especially if the AI bubble pops. Then again, it’s open source.
I sympathize with the general premise. The reaction to move away seems pre-mature though.
It sounds like `bun` is still performing just as well as before, and this sentiment isn't based on concrete changes. I also wouldn't expect infrastructure like `bun` to evolve in the way a consumer-facing product, especially one scaling as quickly as Claude Code, can.
Plus it’s not a huge lift right now
If Bun stays great, you saved yourself some time for switching, and got to keep using Bun.
If Bun worsens, you spend the same time for switching, just moved a bit later, and got to use Bun for a little longer.
Odd that aube is missing deno from their benchmarks though
The author seems more focused on the thing where Anthropic fights OpenClaw usage unless you have the right billing set up for that. Frankly I just don't care about those complaints, all the LLM services want you to set up a non-subsidized billing method to use OpenClaw because it uses lots of tokens. It doesn't mean they're going to crap on Bun.
The only reason I don't use Bun is I never ran into a situation where Node didn't cut it. Even though my least favorite tech corp controls Node.
Their product focus, roadmap, or execution is likely a rounding error in the face of that tsunami.
Frankly, it’s shocking they’re doing so well relative to, say, GitHub.
Node.js is also more stable, and it has started supporting TypeScript out of the box. I don’t think Bun will have many advantages after Node 26.
Node only does type stripping though. If you want proper TS support you still need a compiler.
> I don’t think Bun will have many advantages after Node 26
There are tons of advantages. For instance, Bun includes a lot of features that would need a third party dependency in Node: db driver, S3 client, watch mode, bundler, JSX support, etc.
"I want a serious Node.js alternative."
So you ignore the one developed by the same guy?
Switching to Go or Rust would only make sense if performance were the main priority, which doesn’t seem to be the case. Their current setup lets them ship quickly. A rewrite in Go would likely slow that down.
Codex moved to Rust, and you can see the trade-off. Performance improved, but release velocity dropped. They’re also still catching up to Claude Code, so they don’t face the same pressure to ship as fast.
The bun people likely have some fucked up incestial business relationship with some >dev manager at Anthropic and the same pattern is repeating. Only this cycle it's going straight to acquisitions, which honestly seems like a worse strategy and Anthropic will def can the bun engineers in less than <3 years or whenever they face an actual budget crunch that they can't stave off with more gulf money.
What are the options in Go for cross-platforms GUI apps or running client-side in the browser?
Never attribute to malice that which can be adequately explained by incompetence, etc.
Technically, no, not textbook enshittification. Enshittification was originally meant to refer to companies squeezing two-sided markets, not products just getting kinda worse.
The funniest part to me is that 10–15 years ago, companies were stuck in the development process due to binary (closed) dependencies. Now they're jumping into the same trap under a different name.
Maybe I’ve missed some scandals, but so far OpenJS Foundation is the best thing that has happened for the JavaScript ecosystem.
bun file.ts
And it’s been this way for years.
Don’t care about what’s in a package.json file or if there is one. Can do this without tsconfig file as well.
bun run is <1s for my projects, while watching for file changes. So the iteration speed is quite pleasant.
It's annoying, but I don't see this as a bad thing at all for Bun.
[1] https://www.axios.com/2026/04/13/anthropic-revenue-growth-ai
- Is the project important to me or can I replace it? If the latter, I'm more likely to allow failures of other criteria. If not, I need to be more strict. Bun is easy enough to replace if something were to happen to the project. Easy come, easy go.
- Are there any red flags in financing that could become problematic? Many VC funded OSS companies fail this test for me. What happens when they don't make it? What happens post IPO if they do? What happens when they get acquihired? Mostly that's up to share holders, not developers. Most VC funded companies actually don't make it and that's normal in the VC world. A few companies make it, everything else fails quickly. And there are a few examples of projects that have changed licenses under pressure of shareholders. That's why this is a red flag to me. I've used Redis and Elasticsearch, for example. And I switched away from Mongo before they changed the license. I used Terraform before they open sourced. All negative examples here.
Bun initially wasn't great on this. But the Anthropic acquisition has improved things a bit. It's still a risk. But it's unlikely they have any plans for Bun other than just keeping it alive by employing the main people working on it. Anthropic itself might still fail of course.
- Has the project been around for a long time. If so, it likely has a stable community and funding. There are no guarantees but the older the better. Bun is pretty newish still.
- Is the project stable and under active development? If it's stable because nobody makes changes anymore that's usually not a great sign. If it is stable despite a lot of active development, that's really positive. It means somebody competent is in charge. Bun seems pretty good on that front.
- Is the project otherwise structured right to be future proof. For me future proof is a combination of contributor community, commercial activity, and licensing. The more diverse the contributor community the better. If there are multiple companies sponsoring and making money of a project, that makes it less likely that a single one can hijack it for their own good. This is more common with permissively licensed software (but there are exceptions). Bun doesn't have much commercial activity around it and the regular contributor community is tiny. One person seems to be doing most of the work with only a handful of notable other contributors that are probably all Anthropic employed at this point. Out of these, the dependence on a single person looks the most problematic to me.
So, the overall score for bun is not perfect (there a few potential red flags) but I'm happy to risk using it because it's not that critical to me and easily replaceable.
My read of the whole Anthropic acquihire is that it is an improvement over the starting point which was a VC funded company that was probably going to fail otherwise. Otherwise, good tech and generally nice to use. I could see Anthropic going bad and this project surviving in one form or another. So, that doesn't have to be a show stopper.
:(
If as claimed everyone and his malnourished cellar rat can whip up a SaaS on a whim, then why that SaaS should be built upon chromium+js+http instead of tcp+native ui?
Remember, choice of ui is no longer a constraint. Nothing is a constraint or so they say.
So it follows that all this javascript stuff can at last die.
I still use bun, but I think that there are some other pathways so I am not that worried about myself personally. But that's also because I most often than not code in golang rather than typescript/javascript
[0]: https://aube.en.dev/
AI tech bros when the bubble is blowing up lol. LLMs where always bad and unreliable for programming due to their un-deterministic nature. And regarding pricing policies, yeah, they have to make a profit somehow, it's just that the tech is too expensive vs the actual (almost non-existent) ROI it generates. Let's see if people are willing to pay when these guys aren't subsidized by the delusional VCs anymore...
Otherwise it's just FUD.
So Bun is going to become a fully vibe-coded codebase, with important details lost in translation.
I’ve been a huge supporter of Bun, but now I’d be extremely reluctant to deploy it in production.
It’s also a bit disappointing to see Jared change his mind so quickly. He’s an incredible developer with deep knowledge of how to write clean, maintainable, efficient code. But now it feels like his talent is being sidelined, and Claude has been given full control over the codebase.
Claude Code itself seems to be built that way: they keep piling on new features every day, but it has become this big, bloated Frankenstein slug.
Bun used to be a small, elegant, clean codebase. Now I’m worried it may turn into an unreliable mess.
> Claude Code appears to be enshittifying. So now I have to worry that Bun could enshittify too