#706 — September 26, 2024
JavaScript Weekly
Deno 2.0 Release Candidate — Deno started life as a manifestation of ideas that Node’s original creator, Ryan Dahl, had after his experiences with Node. Deno 2 is the next step: how the Deno team thinks Deno should ultimately be. Many changes await: window is gone and Node’s process appears, dependency management has been improved, numerous APIs have gone stable (e.g. WebGPU), and both Node.js API and CommonJS support have continued to improve.
Bartek Iwańczuk and Andy Jiang
Don’t Sleep on AbortController — AbortController is a broadly available mechanism for, originally, aborting Web requests on demand, but you can use it for a lot more than that (or ‘anything!’, as Artem explains).
Artem Zakharchenko
Learn to Build Feature-Rich, Native Mobile Apps Using React Native and Expo — Join Kadi Kraman for a video course designed to hone your React skills. Whether a beginner, or looking to further refine your skill set, you’ll learn to create practical iOS and Android apps, covering components, styling, UX, linting, async storage, animation, and much more.
Frontend Masters sponsor
How Josh W. Comeau Rebuilt His Blog, App Router Style — We’re huge fans of Josh’s blog and he’s just rebuilt it entirely using Next.js, MDX, Sandpack, and an array of other technologies. Here, he goes into great depth about what’s involved. A good look behind the scenes of a modern React-driven project.
Josh W Comeau
IN BRIEF:
🇪🇺 NodeConf EU is back. It takes place in Ireland this November 3-6.
🟨 It also appears JSConf is coming back under the care of the OpenJS Foundation.
📊 Minification Benchmarks is a frequently updated set of benchmarks for a suite of popular JavaScript minifiers.
🕹️ The most recent JS13kGames gamedev contest just ended. If you want to play the entries (or do some judging yourself) they’re all here. I particularly liked The Way of the Dodo and Deep13.
RELEASES:
Bun v1.1.29 – Its C compilation feature gets N-API support, but is otherwise largely a bugfix release.
Storybook 8.3 – A popular frontend component workshop is now using Vitest to rapidly speed up its component testing features.
Strapi 5 – Popular open source headless CMS.
Solid 1.9 – Declarative and performant reactivity for building UIs.
PostgreSQL 17 – The popular database isn’t a JavaScript project, but a lot of you will be using it. Psst! We have a Postgres newsletter too!
📒 Articles & Tutorials
A Guide to Destructuring in JavaScript — The destructuring assignment syntax appeared in ES6 almost ten years ago and has become a central part of modern JavaScript development. This is a good primer/reminder of the potential.
Mat Marquis
The Nine Node Pillars: Principles for Doing Node Right — A group of prolific and productive Node.js contributors have put together a checklist to identify gaps in your current Node development practices, particularly when building large-scale apps.
Snell, Venditto, Dawson, Collina, et al.
A Complete Guide to Session Management in Next.js — Learn how integrating session management into your app provides robust security and enhances user experience.
Clerk sponsor
What Are Durable Functions? A Visual JavaScript Primer — This is rather dependent on what Inngest, a durable function service, offers, but is a good primer to the general idea which may well suit your use cases.
Lydia Hallie (Inngest)
What’s New in Express.js 5.0 — Express.js 5.0 landed recently with rather brief release notes, so here’s a deeper look at what it has to offer. The updates are largely incremental, but set the stage for Express’s future.
Trevor I. Lasn
Angular Routing Essentials: Everything in One Post — A bold claim, but it does a pretty good job.
Oleksandr Kocherhin
Using Reddit’s JSON API from a JavaScript App — How to pull data from Reddit’s API and display it in a simple web application built with Parcel.
Muhammed Ali
📺 Create a Donkey Kong Country-ish Platformer in JS – We don’t see the DKC resemblance, but it’s a solid 4 hour screencast. Chris Courses
📄 Implementing a ‘Like’ Button without Authentication Abhishek Saha
🛠 Code & Tools
Schedule-X 2: A Modern Event Calendar Component — Available in the form of React/Preact, Vue, Svelte, Angular, or plain JS components. Open source but with a premium version with extra features. GitHub repo.
Tom Österlund
🧹 Vue Mess Detector: Code and Quality Analysis for Vue Projects — A static analysis tool that can catch various bugs and code quality issues in Vue-based projects, built atop rules from the Vue.js Style Guide and others. GitHub repo.
Various Contributors
✂️ Cut Your QA Cycles Down from Hours to Minutes — QA Wolf’s AI-native approach gets engineering teams to 80% automated end-to-end test coverage and helps them ship 2x faster by reducing QA cycles from hours to minutes.
QA Wolf sponsor
Tesseract.js: Pure JS OCR for 100+ Languages — A port of the C++-based Tesseract library commonly used for extract text from images. The homepage has a live demo where you can drop your own images. GitHub repo.
Tesseract Team
HumanifyJS: Deobfuscate JavaScript Code using ChatGPT — There’s an in-depth explainer here. The primary feature is its ability to reverse the loss of meaningful variable and function names based on the context of the code.
Jesse Luoto
Tests Are Dead. Meticulous Is Here — Automatically creates & maintains E2E UI tests. Zero flakes. Backed by YC, CTO of GitHub, CPO of Adobe, CEO of Vercel.
Meticulous sponsor
React Snap Carousel: DOM-First, Headless Carousel — Uses native browser scrolling and CSS scroll snap points for performance. Try out some of its features in its Storybook. The latest version adds support for infinite carousels.
Richard Scarrott
💡 For more React projects, check out our latest React newsletter.
Perspective 3.1 – Streaming data viz and analytics component. The core is written in C++ and compiled to WebAssembly. The homepage shows it off well.
NeutralinoJS 5.4 – Lightweight cross-platform desktop app framework.
websocket-as-promised 3.0 – A Promise-based API for WebSockets.
Verdaccio 6.0 – Lightweight local private npm registry.
Rspack 1.0.7 – Fast Rust-based web bundler.