Lately, I've been working on porting more of Parcel to Rust, and investigating ways to embed JS-based plugins. This post describes how I used Static Hermes to compile Less.js to a native C library that can be called from Rust.
Parcel v2.14.0 added support for React Server Components. This post is a deep dive into the internals: how RSCs integrate with a bundler, what directives like "use client" actually do, how code splitting works and how RSCs improve it, etc.
Modern JavaScript bundlers commonly implement two optimizations: scope hoisting, and code splitting. In this post, I'll discuss how these are fundamentally at odds with each other.