#​545 — August 27, 2024

Read on the Web

Together with  WorkOS
Node.js Weekly

How to Create an NPM Package in 2024 — Sounds simple, but there are a lot of steps involved if you want to follow best practices, introduce useful tools, and get things just right. Matt Pocock walks through the process here, and there’s a 14-minute screencast too, if you’d prefer to watch along.

Matt Pocock

Node v22.7.0 (Current) Released — Node 22.6 let you strip types from source code, but now with --experimental-transform-types you can transform TypeScript-only syntax into JavaScript before running it too. Module syntax detection is now also enabled by default.

Rafael Gonzaga

WorkOS: The Modern Identity Platform for B2B SaaS — WorkOS is a modern identity platform for B2B SaaS, offering flexible and easy-to-use APIs to integrate SSO, SCIM, and RBAC in minutes instead of months. It's trusted by hundreds of high-growth startups such as Perplexity, Vercel, Drata, and Webflow.

WorkOS sponsor

sqlite-vec: A Vector Search Extension for SQLite — If using a dedicated vector storage database is beyond your immediate requirements, you can now use SQLite for the task. While this is an SQLite extension, it’s easy to use with numerous languages and runtimes, including Node.js, as shown here.

Alex Garcia

IN BRIEF:

  • Deno 1.46 has been released and promises to be the final 1.x release before the much awaited Deno 2.0. Deno's Node compatibility improves even more (it now supports Playwright and many more things) and ships with V8 12.9.

  • The Deno project has also announced on X that its Deno Standard Library is now considered stable. The Standard Library is a suite of packages offering a variety of features, from data structures to crypto to time management, many of which work across numerous JS runtimes (including Node).

  • In other runtime news, Bun 1.1.25 unveiled its node:cluster API support with a demo showing it serving 1.29 million requests per second on a basic HTTP server example.

Node v20.17.0 (LTS) Released — The LTS release of Node gains some backports, including support for using require for synchronous ESM graphs (using a flag), matchesGlob, and duplexPair.

Marco Ippolito

Regexes Got Good: The History (and Future) of Regular Expressions in JavaScript — Regular expression support in JavaScript was always a little underwhelming, but things have improved a lot in recent years. Steven takes us on a tour to refresh our knowledge.

Steven Levithan

▶  Node.js Evolves — Discussion on new Node.js features including native TypeScript support, SQLite integration, dotenv support and more.

Syntax by Sentry podcastsponsor

📄 Understanding AbortController in Node.js Stanley Ulili

📄 Generating Unique Random Numbers in JavaScript Using Sets Amejimaobari

📄 Configuring SSH Keys for Multiple GitHub Accounts Steven Harman

📄 Top Ten git Tips and Tricks Julie Kent

🛠 Code & Tools

npm-check-updates 17.0: Update package.json Dependencies to Latest Versions — That is, as opposed to the specified versions. It includes a handy -i interactive mode so you can look at potential upgrades and then opt in to them one by one.

Raine Revere

html-metadata 2.0: HTML Metadata Scraper and Parser — The Wikimedia Foundation’s library for extracting metadata embedded within HTML, such as Schema․org data, Dublin Core, JSON-LD, Open Graph, meta tags, title tags, and the like.

Wikimedia

But it doesn't support RDF yet, which leads us to the next item.. :-)

N3.js: Fast, Spec-Compliant, Streaming RDF LibraryRDF (Resource Description Framework) is a long standing mechanism / format for modeling and specifying Web resources and this library works in Node and browser alike.

RDF JavaScript Libraries

wait-on 8.0: Tool & Library to Wait for Ports, Files, and Sockets — For when you need to wait until files, ports, sockets, and similar resources become available (or the opposite).

Jeff Barczewski

  • Better SSE 0.13 – Simple, spec-compliant, no dependency SSE (server-sent events) implementation. More on SSE here.

  • jsdom 25.0 – Pure JS implementation of WHATWG DOM and HTML standards for Node.

  • Happy DOM 15.0 – JS implementation of a web browser sans UI.

  • Tedious 19.0 – TDS module for connecting to Microsoft SQL Server.

  • Awilix 11.0 – Inversion of Control (IoC) container for Node.

  • fdir 6.3 – High-perf directory crawler & globbing library.

  • pnpm 9.9 – Fast, space efficient package manager.

  • Poku 2.5 – Cross-platform JavaScript test runner.

  • Javet 3.1.5 – Java + V8. Embed JS into Java.