last two days have been pretty wild
-
@Vercel
added bun install support
-
@Replit
added support for deploying Bun
- Ruby on Rails added Bun support
- Laravel Sail installs Bun by default
- Bun 1.0 YouTube vid 740k views
- bun discord hit 24k members
Open-source is built on the shoulders of giants.
Bun wouldn’t have existed without Node.js and Node.js maintainers like
@jasnell
@matteocollina
@yagiznizipli
and so many more
You may be a fan of everything the bun team is doing, and yes,
@jarredsumner
had done some amazing work. But take notice, one thing Jarred and Bun has never done is try to dunk on Node.js developers or be disrespectful to the project. That's very important and appreciated...
The implementation of bun install is hard mode. Nearly everything is linearly serializable. We avoid pointers because arrays might resize causing an invalid pointer, so we use byte offsets into a single buffer and a “string builder” to count then allocate then append
React Native’s JSI hasn’t been talked about enough — it lets you call C++ from JS with little overhead.
Yesterday, I wrote a library to fetch a list of photos from the camera roll.
react-native-camera-roll: 360ms
my library using the JSI: 15ms
20x faster & runs synchronously
10 JavaScript/TypeScript features I avoid:
?
if
let
var
for
class
else
const
() => {}
function() {}
They’re not always a problem. But, they’re overused and can often be replaced by better alternatives.
Here’s why I avoid each, and what I do instead… 👇
In the next version of Bun
Bun.serve() uses less memory
After 800k requests
Elysia
v1.0.4: 47 MB
v1.0.3: 71 MB
Fastify
v1.0.4: 114 MB
v1.0.3: 267 MB
Express
v1.0.4: 116 MB
v1.0.3: 167 MB
Bun v0.6.0
- New JavaScript Bundler (200x faster than webpack)
- New JavaScript Minifier
- Standalone executables
- Show duration in "bun test" (for each test)
- Faster node:fs writeFile() on Linux
- Many bugfixes
We are getting > 50 issues per day and our team is currently 7 people. Really need to hire more engineers. Strong C/C++ or Zig background required
Please apply at
Windows: pipes, sockets, files, & directories get their own APIs
Posix: every file type uses the same APIs
Linux: everything is a file. Timers? File. Events? File. Access control rules? File. Process spawning? File. Signals? File.
it’s insane that people are anything other than thankful to
@getsentry
for giving money to OSS.
Nobody is forcing them to donate. Most companies don’t. Of those that do, most donate much less.
@mattpocockuk
For me, it was “Don’t be afraid to read the code. At the end of the day, all code is mostly for loops, variables, if/else and arrays. It’s okay to not understand all the details”
before bun, i built a lot of frontend stuff. many small things annoyed me
i try to fix them in bun.
- why do you need a TOML parser package? (toml imports)
- why is require("dotenv").load() necessary? (.env loader)
- why can't I "share to slack" dev errors ("copy as markdown")?