Plus JS keeps the 'top spot', TC39 pushes forward more proposals, and an interesting VS Code extension. |

#​692 — June 13, 2024

Read on the Web

📝 I've recently encountered readers who've been surprised to learn this isn't our only JavaScript newsletter. We have Node Weekly and React Status too – check them out if you're a Node.js or React developer, as we focus more closely on them there! :-)
__
Your editor, Peter Cooper

Together with  WorkOS

JavaScript Weekly

TC39 Meets Again and Advances Key Proposals — The Ecma TC39 group that pushes forward the development of ECMA/JavaScript met again this week and moved several key proposals forward, including Deferred Import Evaluation, Error.isError(), RegExp escaping, and Promise.try.

Sarah Gooding (Socket)

Announcing TypeScript 5.5 RC — This is shaping up to be one of TypeScript’s more significant releases, with popular dev-YouTuber Theo ▶️ dropping a 30 minute video on what he’s calling “the biggest TypeScript release in years.”

Daniel Rosenwasser (Microsoft)

WorkOS: Enterprise-Grade Auth You Can Implement in Minutes — Like an enterprise plan in a box: WorkOS provides flexible, easy-to-use APIs to integrate SSO, SCIM, Audit Logs, User Management, and RBAC. It's used by some of the hottest startups including Perplexity, Vercel, & Webflow. Future-proof your auth stack with WorkOS.

WorkOS sponsor

How to Compose JS Functions That Take Multiple Parameters“Function composition is beautiful,” says James, who goes on to explain, in his usually elegant way, the use of partial application, currying, composite data structures, and more.

James Sinclair

IN BRIEF:

RELEASES:

State of Frontend 2024 Survey Is Out Now! Hundreds Have Already Joined — Spare a few minutes to fill in the survey and receive a free report on the future of frontend development.

The Software House sponsor

📒 Articles & Tutorials

'I Tried React Compiler Today, and Guess What..' — The recently unveiled React Compiler automatically memoizes things – so can we ditch memo, useMemo and useCallback right away? Nadia investigates, finds the rough edges, and helps keep our feet on the ground.

Nadia Makarevich

'How a Single Vulnerability Can Bring Down the JS Ecosystem' — A slightly alarmist headline and it’s more about npm, but the issue outlined could have nonetheless posed big problems – luckily, GitHub is on the case.

Roni Carta (Lupin)

Your Fastest Path to Production — Build, deploy, and scale your apps with unparalleled ease – from your first user to your billionth.

Render sponsor

Generating ZIP Files with JavaScriptJSZip makes it easy to dynamically create an archive for users to download.

Josh Martin

Using Node.js's Test Runner: The Official Guide — A new guide on the official Node site covering the fundamentals of using Node’s new test runner functionality, along with snapshot tests (supported by Node 22.3).

Jacob Smith

📄 Using the Page Visibility API – Set up event listeners to do things when page visiblity changes. Brian Smith

📄 Getting Started with Directus and PreactDirectus is a headless CMS built on top of Node and Vue. Jay Bharadia

📄 Powering Angular with Rust via WebAssembly – How you could start using Rust in your Angular app. Evgeniy Oz

📄 Angular Directives vs. Vue Directives Christian Nwamba

🛠 Code & Tools

DGM.js: Infinite Canvas Library with Smart Shapes — A library for rendering and working with infinitely pannable canvases that contain ‘smart shapes’ that you can script and give various constraints and properties. GPLv3 licensed.

Minkyu Lee

Pastel 3.0: A Framework for Building Ink AppsInk brings the power of JSX and React components to building command line apps. Pastel provides more structure on top of that in a Next.js fashion.

Vadim Demedes

Add Authorization, MFA, Biometrics and More to Your JavaScript App in Just Minutes — It's about time that somebody talked some sense about OAuth and JavaScript. So we did. You're welcome.

FusionAuth sponsor

uuid v10: Generate RFC-Compliant UUIDs — Covers all major UUID standards. Works across all major browsers and Node 18+. v10.0 adds support for more types of RFC9562 UUIDs (namely v6, v7 and v8).

Robert Kieffer and contributors

JsonTree.js: Customizable Tree Views for JSON Data — No dependencies, lots of customizations, and it’s easy to theme the trees using CSS variables. Try out some examples on the docs site.

William Troup

Turf.js 7.0: Geospatial Engine for Browsers and Node — A collection of modules for doing spatial analysis, working with GeoJSON data, data classification, and more. GitHub repo.

Morgan Herlocker

Parvus 2.6: Accessible Lightbox with No Dependencies — I love how it says not to use overlays on web pages but if you have to, use this! There’s a CodePen example.

Benjamin de Oostfrees

DON'T OVERLOOK THESE:

⚙︎ Dukpy – A simple JavaScript interpreter for Python. Alessandro Molina

⚙︎ ngx-sonner – An opinionated toast notifications component for Angular, inspired by the React equivalent. Clara Castillo

⚙︎ River.ts – A composable, type-safe Server-Sent Events (SSE) interface. Matthias Tellen

⚙︎ JSVectorMap – Render interactive maps for visualizations. Mustafa Omar

QUICK RELEASES:

🎁 And One for Fun

Bread Jam: Make Variables and Properties Easier to See in VS Code — An interesting new VS Code extension that offers 11 different ways to make variable names stand out more in your editor, with both basic colorization approaches and an interesting emoji-based prefix option.

Ting Wei Jing

n