Joyee Cheung
joyeecheung.bsky.social
Joyee Cheung
@joyeecheung.bsky.social
She/her. I contribute to Node.js and V8. I post about museums, food, plants and other stuff too. https://github.com/joyeecheung
Touring/climbing steps in Chongqing
November 22, 2025 at 3:59 PM
Today I gave a talk at JSConf JP covering the implementation story of recent Node.js module loader changes (compile cache, require(esm) and synchronous loader customization hooks). Very lovely conference!

Slides:
github.com/joyeecheung/...
github.com
November 16, 2025 at 3:17 PM
Preparing my talk for JSConf JP and I finally drew my mental venn diagram about how Node.js development works 🤪
November 11, 2025 at 7:20 PM
In an unexpected turn of events, this helped me reproduce a bug that can only be reproduced in a Linux arm64 container (not in bare-metal Linux arm64, or any other containers on other platforms 😅)
Uploaded a demo on how to use nodejs/devcontainer!

- Testing a mounted dev branch on a different OS
- No need to build V8 from scratch on a fresh checkout (usually)
- Testing third-party code with the dev branch in a container

www.youtube.com/watch?v=3Nwa...

PR: github.com/nodejs/node/...
Demo of nodejs/devcontainer
YouTube video by Qiuyi Zhang (Joyee)
www.youtube.com
November 9, 2025 at 2:50 AM
Uploaded a demo on how to use nodejs/devcontainer!

- Testing a mounted dev branch on a different OS
- No need to build V8 from scratch on a fresh checkout (usually)
- Testing third-party code with the dev branch in a container

www.youtube.com/watch?v=3Nwa...

PR: github.com/nodejs/node/...
Demo of nodejs/devcontainer
YouTube video by Qiuyi Zhang (Joyee)
www.youtube.com
October 28, 2025 at 11:15 PM
TIL git-restore-mtime, which is very handy when mounting a local clone to a clone in a docker container while still reusing the build cache from the docker image 😇 (otherwise all the files from the local clone would be too fresh and invalidate the build cache in the container)
October 22, 2025 at 7:59 PM
Built-in HTTP proxies are now on v22 😇

(Going to update the version mentions in a WIP guide on using Node.js in enterprise network environments)
October 21, 2025 at 7:05 PM
Stalled this PR for almost a year due to CI build cache issues, last week I realized (once again?) the Linux binary size is a bit out of hands and gave the CI another try, and the CI miraculously handled it , so finally landed this and shed of 8MB off the binaries at least github.com/nodejs/node/...
build: build v8 with -fvisibility=hidden -fvisibility-inlines-hidden by joyeecheung · Pull Request #56290 · nodejs/node
Split from #56275 since it seems to cause gcc on some machines in the CI to time out or run out of memory. Trying to see if it's just a CI hiccup or if it's something that needs to be worke...
github.com
October 20, 2025 at 10:02 AM
Reposted by Joyee Cheung
"No more juggling CommonJS and faux-ESM."
- @joyeecheung.bsky.social revealed how @nodejs.org is moving to full ESM and why the future looks brighter for developers.

www.youtube.com/watch?v=I0jv...
October 16, 2025 at 8:12 AM
Girl got desperate looking at the CI
October 15, 2025 at 8:37 PM
Reposted by Joyee Cheung
No more juggling CommonJS and faux-ESM. @joyeecheung.bsky.social revealed how Node.js is moving to full ESM and why the future looks brighter for developers. #NordicJS #NordicJS2025
October 3, 2025 at 9:55 AM
I gave a talk today at @nordicjs.com about shipping Node.js packages in 2025...or how to transition from shipping dual/faux-ESM/CommonJS to shipping ESM directly!

Slides at github.com/joyeecheung/...
github.com
October 3, 2025 at 9:33 AM
Reposted by Joyee Cheung
Igalia's @joyeecheung.bsky.social will be speaking about "Shipping Node.js packages in 2025,” focused on migrating dual/faux/CJS packages to ESM-only at Nordic.js on Friday, 3rd October at 10:30 CEST

nordicjs.com/2025/speaker...

Come say hi!
October 1, 2025 at 4:15 PM
Whenever I travel to a place where dinner starts at normal time I always feel that I've gained at least 3 extra hours per day and there are actually things I can do at night again
September 30, 2025 at 6:36 PM
Me: why is it taking forever to git clone when I am trying to build a docker container, what's wrong with my docker configuration

(a few moments later)

Oh I forgot I am doing it a home where the connection to GitHub is just outrageously slow 😭 the wrong is in my provider
September 19, 2025 at 9:04 PM
I tried not to look at GitHub on this special day and I failed already during breakfast....🥲

I blame this breakfast for taking too long to serve and I got bored!
September 3, 2025 at 8:42 AM
Landed the configurations as "execArgv" and "execArgvExtension" ("none" | "env" | "cli"), expected to go out in v24.7.0!

github.com/nodejs/node/...
github.com/nodejs/node/...
August 26, 2025 at 6:50 PM
Got two PRs to my fork of Node.js with AI generated nonsense in the past two weeks 🤨 I get that AI spam is common these days but why my fork?
August 25, 2025 at 1:49 PM
Haven't tried to generate core dumps on macOS for a local build for quite some time and just found out that the executable now must be signed with com.apple.security.get-task-allow entitlement to be dumped nasa.github.io/trick/howto_...
How to Dump a Core File on MacOS (Monterey 12.5)
Trick Simulation Environment. Trick provides a common set of simulation capabilities and utilities to build simulations automatically.
nasa.github.io
August 22, 2025 at 9:22 AM
RFC: We are adding support for execution command line flag in Node.js single-executable applications. What do you think about this configuration?

github.com/nodejs/node/...
August 11, 2025 at 9:41 AM
Trying to deflake a test that was written 12 years ago...
a bunch of fruit is on a wicker plate on a table .
ALT: a bunch of fruit is on a wicker plate on a table .
media.tenor.com
August 10, 2025 at 2:05 PM
Reposted by Joyee Cheung
We're kicking this Bluesky party up a notch 🎉 and here to give developers what they want (what they really, really want)!

What Chrome features and topics would you like to learn more about?
August 4, 2025 at 4:35 PM
Reposted by Joyee Cheung
Node excitement 😉

Congrats to @marcoippolito.dev on today's landmark Node 22.18 release. It is the first LTS release to ship unflagged TypeScript support 🎉

This means Node can run *.ts files. It pairs well with TypeScript's "erasableSyntaxOnly" flag 👍

Many folk contributed 🙏
Type stripping is enabled by default 🔥🔥🔥🔥
You can just run `node file.ts` without `--experimental-strip-types` flag.
This is a huge milestone
Node.js 22.18.0 is out and enables type stripping by default – that’s right, Node.js LTS can now run TypeScript files. Shout out to @marcoippolito.dev for championing that effort! Download links and full changelog available at nodejs.org/en/blog/rele...
August 1, 2025 at 5:34 AM
Reposted by Joyee Cheung
Node.js 24.5.0 is out: built-in proxy support for `node:http(s)`, experimental WASM modules, upgraded OpenSSL version and so much more. Full changelog and download links at nodejs.org/en/blog/rele...
Node.js — Node.js v24.5.0 (Current)
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
nodejs.org
July 31, 2025 at 10:22 PM
Encountered a 4 hour delay of the flight and ended up staying in a hotel in Santiago because it’s already past 2am after I got out of the airport. Well, might as well spend a weekend? 🤨
August 1, 2025 at 12:57 AM