Today’s issue: Teaching my grandma’s friends about JavaScript generators, soaking in the beauty of Laravel, and restoring my faith in humanity the internet.
Welcome to #319.
Mfw I don't have to wait 20 min for my app to build
Rspack just launched v1.0 last week, and the dream of using Rust-based build tools to speed up the JS ecosystem is officially alive and well.
How we got here: Early last year, a team of developers at ByteDance was running into performance problems while maintaining the company’s “many large, monolithic apps.” So they did what any good developers would do – they blamed webpack.
But they didn’t stop there. In March 2023, they launched Rspack v0.1 as a high-performance JavaScript bundler that’s written in Rust and aims to be fully compatible with the webpack ecosystem.
Fast forward to today, and Rspack now gets 100k weekly downloads and has introduced some key improvements that have it ready for production:
Better performance – New features like lazy compilation and other perf optimizations make Rspack 1.0 build times over 20x faster than webpack 5.
Improved webpack compatibility – More than 80% of the 50 most downloaded webpack plugins can now be used in Rspack, getting it closer to becoming a true drop-in replacement for webpack.
Less complexity – They created a new toolchain called Rstack that includes separate projects like Rsbuild, Rspress, and Rslib that each target different use cases. This reduces the complexity of configuring an all-in-one tool like Rspack (or webpack), while still maintaining flexibility.
Bottom Line: Rspack has a pretty simple value prop for developers – if you already use webpack, we’re going to make it super easy for you to migrate to our bundler that’s faster, easier to use, and still fully compatible with the webpack API. Time will tell if that’ll be enough to convince the masses to give it a try.
So what if our team doesn't `test our code` before we ship to prod?
Are slow test cycles bottlenecking your team’s release velocity? With QA Wolf, your org can run entire test suites in minutes, giving you faster feedback and less bugs.
QA Wolf takes testing completely off your plate. They get you:
No more manual testing. No more slow QA cycles. No more bugs reaching production. Think of all the engineering time you’ll save 🥹.
Schedule a demo to learn more.
class User {
async constructor(userId) {
const user = await getUser(userId)
this.id = user.id;
this.name = user.name;
this.email = user.email;
}
...
}
Nolen Royalty wrote about the secret he found inside his One Million Checkboxes site along with this 9-minute video that gives a TLDR. It might restore your faith in humanity, or at least your faith in teenagers on the internet with a lot of time on their hands.
shadcn just introduced a new CLI that lets you “install anything from anywhere,” including themes, components, hooks, and more. And if you vote for Pedro, all your wildest dreams will come true.
ViteConf is one month away! Get your free, virtual ticket to the best (and biggest) online conference of the year — and be sure to check out their impressive lineup of speakers featuring open-source maintainers, AI experts, and other builders driving web development forward. [sponsored]
Jan Hesters wrote this senior-level explanation to JavaScript generators. But when I read this article to my grandma and her friends at the senior center, they were just as confused as I was.
Michael Shilman wrote about Why component testing is the future of UI testing.
Aaron Grider spoke about Bringing real-time 3D to mobile with the Starlink app using React Native.
Andrew Clark pushed one of a series of PRs related to sibling prerendering for React 19 that aims to address the Suspense behavior change controversy from back in June.
WEB UNLEASHED is the ultimate front-end developer conference on Oct 10-11 in TORONTO and ONLINE. You can save 50% on tickets with the code BYTES
, and learn from over 50 speakers – including Douglas Crockford, Wes Bos, Rachel Andrew, Harry Roberts, Chris Coyier, Stephanie Eckles, and more. [sponsored]
Taylor “Daddy Waravel” Otwell gave a 100-minute Laravel keynote at last week’s Laracon where it was unanimously decided that you have to stop Laravel. The vibes too high, the joy too strong, they’ll kill you.
SpaceHey is a MySpace clone that just reached 1.2 million registered users. From what I can tell, at least 1.1 million of those users are scene kids who never grew up and are still blasting My Chemical Romance like it’s 2007. Love to see it 🥹.
JavaScript doesn’t allow class constructors to be async
. We have to do any async actions outside of a constructor. Static class methods can help with this.
class User {
static async init(userId) {
const user = await getUser(userId);
return new User(user);
}
constructor(user) {
this.id = user.id;
this.name = user.name;
this.email = user.email;
}
}
const me = await User.init(1)