Running other processes from Node, but better

May 14, 2024 By Mark Otto 0

Node.js Weekly

Execa 9.0: The Better child_process Gets Even Better — Less shell-oriented than zx, execa focuses on making executing external commands secure, cross-platform, and easy to debug. v9 lets you make commands iterable so you can process their output on the fly, map/filter both input and output, pipe multiple commands, and more. GitHub repo.

ehmickey, Sorhus, et al.

💡 They’ve also put together a page comparing bash, Execa, and zx so you can get a better feel for the differences and see more code examples.

Node v20.13.0 (LTS) Released — A lot of small backports to boost the performance of the current LTS release of Node a little. Most notably, watch mode becomes stable, but also base64 and base64url are now a lot faster, CustomEvent goes stable, and typed arrays are supported in streams. 20.13.1 landed a few days later to fix a Windows related bug.

Marco Ippolito

OTHER RUNTIMES NEWS:

  • Bun 1.1.8 has been released and continues to improve its support for Node APIs, has a much faster JSON.parse, and fixes a slew of bugs.

  • Deno hasn’t been hanging around either, with version 1.43 boasting performance improvements particularly in its LSP and IDE integration, also explained ▶️ in this 2-minute video.

‘How I Made My GitHub Profile README Dynamic’ — There’s no Node here, alas, but I thought it was a good demo of how it’s not too tricky to give your GitHub profile some extra flair by pulling in your blog posts or other stats of choice.

Duy Ng

⚙️ Awesome Regex: Opinionated List of Regular Expression Tools, Tutorials, Libraries, etc. Steven Levithan

📄 A Simple Implemention to Understand worker_threads in Node CoderOasis

🛠 Code & Tools

GraphQL Yoga: A Full-Featured GraphQL Server — Create a schema, spin up a server, and you’re good to go (then you get to wire everything up). Supports GraphQL subscriptions via SSE. Designed to run across numerous environments from Node to AWS Lambda, Deno, Bun etc. GitHub repo.

The Guild

Ink 5.0: Build Interactive CLI Apps using React — A terminal-based React renderer so you can build command line apps using React-style components. While it’s a major release, there’s nothing new – the version number has been updated to reflect that Node 18+ is now a requirement.

Vadim Demedes

  • ⭐️ zx 8.1 – Google’s tool for better Node shell scripting. Both CommonJS and ESM now supported, increased Node version support, Deno 1.x support, and more.

  • Tinypool 0.9 – Minimal, small Node worker thread pool implementation.

  • Fastify 4.27 – The fast, low overhead web Node.js framework.

  • aws-lambda-fastify 4.1 – Run Fastify apps on AWS Lambda.

  • sqs-consumer 10.3 – The BBC’s solution to building AWS Simple Queue Service (SQS) apps sans boilerplate

  • detect-port 1.6.1 – Module to detect available ports.

  • Evershop 1.1 – ️ Node-based e-commerce platform.

  • grammY 1.23 – Telegram bot framework.

  • Pino 9.1 – Fast JSON-powered logging.