#720 — January 24, 2025
JavaScript Weekly
Bun 1.2: A Big Step Forward for the Fast JS/TS Runtime — The JavaScriptCore-based Bun continues to up its server-side runtime game with strides forward in Node.js compatibility, performance boosts, and new APIs for interacting with S3 and S3-like object stores as well as Postgres. If you’d prefer to be ▶️ introduced to Bun 1.2 with a keynote-style video, it’s a good watch.
Ashcon Partovi and the Bun Team
🦖 ..and by no means should we forget Deno whose team have published a roundup of all of Deno’s progress in the past year.
FlexGrid by Wijmo: The Industry-Leading JavaScript Datagrid — A fast and flexible DataGrid for building modern web apps. Key features and virtualized rendering are included in the core grid module. Pick & choose special features to keep your app small. Built for JavaScript, extended to Angular, React, and Vue.
Wijmo From MESCIUS inc. sponsor
🤖 Transformers.js v3.3: Machine Learning and AI for the Web — This is a dry release announcement but I wanted to highlight the rapid pace that this exciting library is making for browser-based NLP, speech recognition, vision, and now text-to-speech use cases (live TTS demo here – it takes a while to load though). It’s also being used in Firefox for various enhancements (see below).
Hugging Face
IN BRIEF:
The creator of SolidJS says that Angular and Vue are the frameworks to watch in 2025, while reflecting on JS framework progress generally.
A year ago, Kelly Sutton wrote about his company’s move away from React but how did it pan out? In Moving On from React, a Year Later he explains how things have gone since.
JSON Query is a neat, flexible JSON querying language. The demos really sell it IMHO.
The ESLint project takes a look back at ESLint’s 2024 year in review.
GitHub has unveiled sub-issues, issue types, and advanced search for issues.
RELEASES:
Rspack v1.2 – Fast Rust-based Web bundler adds a peristent cache feature that improves hot start performance by up to 250%.
Node v23.6.1 (Current), v22.13.1 (LTS), v20.18.2 (LTS), v18.20.6 (LTS) to resolve some security vulnerabilities.
Capacitor 7.0 – Build cross-platform native apps/PWAs with web technologies.
React Native 0.77 – Now with enhanced styling capabilities.
Vitest 3.0 – The fast Vite-native testing framework.
NestJS 11, Storybook 8.5, Unpic 1.0, Inferno 9.0
📒 Articles & Tutorials
🕒 JavaScript Temporal is Coming (For Real!) — We first mentioned the Temporal API proposal providing a better way to handle dates and times in JavaScript almost five years ago (in issue 496!) but now it really is almost here. Brian explains its basic concepts and where initial support is starting to appear.
Brian Smith
Avoiding anys with Linting and TypeScript — any is TypeScript’s famous type fallback/safety hatch but if you can avoid it, you can benefit more from TypeScript’s type-checking features. Josh shares some tips to do just that.
Josh Goldberg
[Workshop] How to Build Testing Culture on Your Team — Join our live session to learn strategies for gaining buy-in, balancing testing, and integrating it into daily workflows.
Sentry sponsor
🤖 Running Inference in Web Extensions — Firefox Nightly is shipping with a new API that can let you use their AI runtime for offline machine learning tasks in Web extensions you create. It uses the previously mentioned Transformers.js and is already used in Firefox 133 to provide alt text for images in PDFs.
Tarek Ziadé (Mozilla)
📄 Generating Test Values using JavaScript Generators Peter Leonov
📄 TypeScript Enums: Use Cases and Alternatives Dr. Axel Rauschmayer
📄 Fetch and HTTP/2 Support in Node, Bun and Deno Georges Haidar
📊 A Deep Dive into Initial Load Performance Nadia Makarevich
📄 Improving UI Performance by Optimizing Our Debouncer Atul Jalan (Compose)
📄 Angular Clean Coding Fundamentals Jonathan Gamble
🛠 Code & Tools
deck.gl 9.1: GPU-Powered Large Scale Data Visualization — deck.gl provides a way to create complex yet high performance data visualizations composed of multiple layers (examples). It can be used in a vanilla JS way or through React components and it’s ready for WebGPU.
OpenJS Foundation
Breakpoints and console.log Is the Past, Time Travel Is the Future — Next-level testing in any editor, 15x faster with Interactive Time Travel Debugger, real-time insights & advanced coverage in a new UI.
Wallaby Team sponsor
ArkType 2.0: Runtime Validation Library — An easy-to-deploy solution for schema validation that can infer TypeScript definitions 1:1 and use them as optimized validators for your data, both at runtime and for immediate type-level feedback in your editor.
ArkType
NodeBB v4.0.0 Released: Node.js Powered Forums — Offers a classic forum experience in a modern Node.js-shaped guise. v4 adds support for federation between instances and the wider ‘fediverse.’
NodeBB, Inc.
SRCL: Build React Apps with ‘Terminal Aesthetics’ — The homepage is a live demonstration of what SRCL has to offer. It’s a suite of React components and styling to recreate a monospaced, terminal-like atmosphere
Internet Development Studio Company
🎶 Chiptune.js: Module / Tracker File Player — A library for playing ‘module’ music files like MOD, XM and S3M. (Demo.)
Chiptune Contributors
📰 Classifieds
Meticulous automatically creates and maintains an E2E UI test suite with zero developer effort. Relied on by Lattice, Bilt Rewards, etc.
☀️ The main JS conference returns to a unique venue! Enjoy 50+ talks & workshops, a food truck festival, networking with 1.5K devs, & 10% off with code JSWEEKLY!
GoReleaser v2.6 – A popular ‘release engineering’ tool in the Go world has just added support for Bun and Deno.
React Admin 5.5 – Framework for building B2B frontend interfaces. Now with React 19 and React Router 7 support.
React Scan 0.1 – Automatically scan for performance issues and eliminate slow renders in your app.
🎵 ChordSheetJS 12.0 – Library for parsing and formatting chords and chord sheets. (Demo.)
Fortune Sheet 1.0 – Drop-in Excel-like spreadsheet control.
ApexCharts 4.4 – Popular JS charting library. (Demos.)
YouTube.js 13.0 – JS client for YouTube’s private API.
BlockNote 0.23 – ‘Notion-style’ block-based editor.