Rob Palmer
banner
robpalmer.bsky.social
Rob Palmer
@robpalmer.bsky.social
JavaScript Infrastructure & Tooling at Bloomberg. Co-chairing TC39. Likely to tweet tech stuff about JS & software performance. Opinions are my own.
Reposted by Rob Palmer
We're measuring the performance of all the popular meta frameworks. If you're interested, come help out! 🙏
Keen to help out in the @e18e.dev community and unsure where to start? We have a host of first good issues in our metaframework comparison project and are super keen to see more of you get involved.

github.com/e18e/framewo...
February 16, 2026 at 8:55 AM
Reposted by Rob Palmer
Landed initial support for ESM in Node.js SEA: github.com/nodejs/node/...

Similar to CJS entrypoints, it only supports importing builtins, so generally require bundling. @nodeland.dev is working on support for VFS in SEA that will unlock loading other modules within SEA github.com/nodejs/node/...
sea: support ESM entry point in SEA by joyeecheung · Pull Request #61813 · nodejs/node
This uses the new StartExecutionCallbackWithModule embedder API added in #61548 to support ESM entrypoint in SEA via a new configuration field "mainFormat". The behavior currently aligns ...
github.com
February 18, 2026 at 9:39 PM
Reposted by Rob Palmer
This is great to see vercel.com/blog/we-ralp...

While specific runtime products may compete around features and performance, this kind of research on how to work around the inherent performance bottlenecks in web streams ultimately helps everyone.
We Ralph Wiggumed WebStreams to make them 10x faster - Vercel
WebStreams had too much overhead on the server. We built a faster implementation. See how we achieved 10-14x gains in Next.js rendering benchmarks.
vercel.com
February 18, 2026 at 10:03 PM
Reposted by Rob Palmer
"tsgo caught type errors that the JavaScript implementation didn’t catch! I adopted tsgo in 20+ projects ranging from 1,000 to 1,000,000 lines of code, and it has improved iteration speed quite a bit."

cpojer.net/posts/fastes...
Fastest Frontend Tooling for Humans & AI
Frontend tooling in 2026+, with and without AI.
cpojer.net
February 18, 2026 at 10:57 PM
Reposted by Rob Palmer
I am really enjoying reading the source code for Kiesel and Boa

[1] codeberg.org/kiesel-js/ki...
[2] github.com/boa-dev/boa
February 18, 2026 at 7:01 PM
Reposted by Rob Palmer
Did you know about the `/*@__NO_SIDE_EFFECTS__*/` annotation?

It tells bundlers that a function has no side effects so every call to it can be tree-shaken if the result is unused.

Most bundlers and minifiers support it today.
But there's a nuance most people miss 👇
February 17, 2026 at 8:29 PM
Reposted by Rob Palmer
👀 Chrome 145 DevTools has Soft Navigation markers

Nice DX improvement for building SPAs
February 17, 2026 at 12:32 PM
Reposted by Rob Palmer
State of the Browser is a community event, and we are grateful to everyone who supports us by becoming an official supporter or volunteer at our event!

Today, we spotlight @igalia.com! They are one of our small supporters and have been supporting us for 2 years now. Thank you! 💜
February 17, 2026 at 11:36 AM
Electrobun is a new cross-platform runtime for shipping desktop apps ✨

Electron mostly uses C++ to embed both Node.js & Chromium.

Electrobun uses Zig to to embed Bun and - like Tauri - relies on the OS default web renderer.

🔷 Write apps in TypeScript
🧱 Process isolation
⚖️ 12MB base install size
It's here. Electrobun is ready for you.

npx electrobun init

blackboard.sh/blog/electro...
February 17, 2026 at 8:12 AM
Reposted by Rob Palmer
❌🛢️ Unbarrelify v1.1.0 is out

Barrel file removal tool for JS & TS projects

Changelog:
→ Feat: always preserve root index.js/ts file
→ Docs: explain why certain barrel files are preserved: github.com/webpro/unbar...

github.com/webpro/unbar...
February 11, 2026 at 8:50 AM
Reposted by Rob Palmer
The "export defer" TC39 proposal aims to introduce a similar optimization *at the language level*, so that you can rely on it in all the tools and environments that you might run your code with.

Just because you need one thing from a module, you shouldn't pay the cost of all the others!
February 12, 2026 at 3:45 PM
Reposted by Rob Palmer
Made a few updates to the post - specifically:

- es2025 target
- new library additions/updates
- deprecation of node10

bsky.app/profile/type...
February 11, 2026 at 10:01 PM
Reposted by Rob Palmer
February 5, 2026 at 3:03 PM
TypeScript 6.0 introduces a new flag: --stableTypeOrdering

It's a migration-assist flag to allow comparison of *.d.ts files made by TS 6.0 vs the future TS 7.0 Go compiler ⚖️

TS 7.0 relies on consistent type sorting across the many parallel compiler threads 🧵

devblogs.microsoft.com/typescript/a...
February 11, 2026 at 8:35 PM
TypeScript 6.0 Beta is out 🎉

🔶 Temporal
🔶 Map#getOrInsert
🔶 RegExp.escape
🔶 #/ prefix for Package Imports

New defaults!
🔶 --target=ES2025
🔶 "use strict"
🔷 --strict

Deprecations!
🗑️ baseUrl, outFile
🗑️ import assertions
🗑️ `module` namespaces
🗑️ module: amd
🗑️ moduleResolution: node
🗑️ target: ES5
February 11, 2026 at 8:10 PM
Reposted by Rob Palmer
Our tsgo adoption at Vanta has been pretty high-impact. Everything is so, so much faster now.
February 11, 2026 at 5:12 PM
Reposted by Rob Palmer
very excited for our first guest of the e18e & friends show to be @joshuakgoldberg.com!

He's done so many great things for open source already, so we're super happy to have him join us to chat about what he's been up to lately!

tune in tomorrow 🎉
February 9, 2026 at 10:35 AM
Reposted by Rob Palmer
new release of the @e18e.dev github action 🚀

you can use this to diff changes in your dependencies. e.g. trust/provenance, duplicates, significant size increases, etc.

check it out!
GitHub - e18e/action-dependency-diff: A GitHub action to report dependency changes and potential problems
A GitHub action to report dependency changes and potential problems - e18e/action-dependency-diff
github.com
February 8, 2026 at 1:35 PM
Reposted by Rob Palmer
you have probably heard that webassembly supports garbage collection. are you looking for an ahead-of-time compiler for wasm with gc? as it happens, i have written a little monograph on the topic wingolog.org/archives/202...
ahead-of-time wasm gc in wastrel — wingolog
wingolog: article: ahead-of-time wasm gc in wastrel
wingolog.org
February 6, 2026 at 3:49 PM
Reposted by Rob Palmer
communities grow fueled by the value they create for themselves. npmx is useful to us, and that is enough to bind us together and take care of our website long term. we already won.
February 7, 2026 at 8:22 AM
TypeScript excitement 😉

Congrats to Lionel-Rowe on landing support for RegExp.escape in upstream TypeScript 🎉

Heading for TS 6.0 Beta next week 👍

github.com/microsoft/Ty...
Add types for `RegExp.escape` by lionel-rowe · Pull Request #62138 · microsoft/TypeScript
Closes #61321 Towards #61735
github.com
February 7, 2026 at 2:02 AM
TypeScript excitement 😉

Congrats to @moriken.dev on landing support for the ES2025 target in upstream TypeScript 🎉

Heading for TS 6.0 Beta next week 👍

github.com/microsoft/Ty...
Introduce ES2025 target & Add missing ScriptTargetFeatures by petamoriken · Pull Request #63046 · microsoft/TypeScript
Fixes #61735 This PR includes the addition of 2 type files: es2025.regexp.d.ts es2025.intl.d.ts Related issues and (stalled) PRs ES2025 RegExp.escape (es2025.regexp.d.ts) Closes #61321 Closes #62...
github.com
February 7, 2026 at 1:53 AM
TypeScript excitement 😉

Congrats to Renegade334 on landing support for @tc39.es "Upsert" in upstream TypeScript. Heading for TS 6.0 Beta next week 🎉

let map = new Map();
map.getOrInsert(key, defaultVal);

It sets a default value on a map key with no overwriting.

github.com/microsoft/Ty...
Add proposal-upsert methods to lib.esnext.collection by Renegade334 · Pull Request #62612 · microsoft/TypeScript
proposal-upsert is now stage 3, shipped in Safari 18.4, shipping in Firefox 144, and staging in Chromium.
github.com
February 7, 2026 at 1:44 AM
TypeScript excitement 😉

Congrats to Renegade334 on landing type declarations for @tc39.es Temporal - the new JS Date-Time API - in upstream TypeScript 🎉

Heading for TS 6.0 Beta next week 👍

Temporal is available in Firefox & Chrome today.

github.com/microsoft/Ty...
Add lib.esnext.temporal by Renegade334 · Pull Request #62628 · microsoft/TypeScript
Closes #60164. No custom calendar support, as per the latest spec changes. There are lots of places in the spec where property bags have "at least one of" constraints (eg. either month or...
github.com
February 7, 2026 at 1:30 AM