🇺🇦 #​439 — May 26, 2022

Read on the Web

TypeScript 4.7 Released — We wouldn’t usually make TypeScript a top feature in Node Weekly although many of you are using it, but this release has a huge feature in the shape of ES module support for Node – a feature that has been infamously difficult to implement, and whose reliance on file extensions continues to provoke debate.

Daniel Rosenwasser

Payload, a Node-Based Headless CMS, Now Fully Open SourcePayload, is a full-featured headless CMS (built on top of Express.js, MongoDB, and React) and has just moved to the MIT license which opens up a lot more use cases. GitHub repo.

James Mikrut (Payload CMS Blog)

RedisGreen: Secure, Scalable, Full-Featured Redis 7 Hosting — The latest Redis features, instrumented and scaled with the tools teams need as they grow.

RedisGreen sponsor

DigitalOcean Releases New Functions Service — AWS Lambda launched in November 2014 essentially popularizing a paradigm you now see everywhere: functions as a service. DigitalOcean now joins the party with Functions and, as with Lambda, Node.js gets first class support.

Anshu Agarwal

Quick bytes:

Avoiding Puppeteer AntipatternsPuppeteer remains a fantastic way to control a headless browser from code but I, personally, find it hard to develop best practices around using it. Greg, thankfully, has a bunch of things here not to do in future.

Greg Gorlen

See How Many Hours Engineers Really Spend Coding in the State of Engineering Time Report

Retool: State of Engineering Time Report sponsor

Making a Podcast Transcription Server in Node — The author likes listening to podcasts but wants to be able to search back for things that were said in them. He brought it together using the Leopard speech-to-text engine and some Node.js glue code – source here.

Ian Lavery

🛠 Code & Tools

better-logging: A Drop-In Replacement for Node’s Default Logging Methods — Extends

1
console.debug

,

1
console.log

and friends with the time and a colorful tag. Simple and sweet.

Oliver Anteros

Keyv: Simple Key-Value Storage with Support for Multiple Backends — A Promise-based abstraction you can use with a memory based store (by default) or, if you need persistence, Redis, SQLite, Postgres, MySQL, etcd and Mongo.

Jared Wray

CSV Parse: Convert CSV Formatted Text into Arrays of Objects — Extends the native Node.js transform stream API so you can get up and running quickly – see some example code. Part of a suite of CSV libraries that can also generate and transform CSV.

Adaltas

Debug Node.js Apps Without Stopping Them in Prod. Try Rookout Free Today

Rookout sponsor

Electron 19.0.0 Released — The popular cross platform app building framework upgrades to Chromium 102, V8 10.2, and Node 16.14.2.

Electron Team

Got 12.1: A Powerful HTTP Request Library for Node — A popular HTTP request library. v12.1 adds a way to manually check that a response was successful that’s useful if you otherwise set Got to not throw errors as it usually does.

Sindre Sorhus

Fontkit: An Advanced Font Engine for Node and Browser — Works with TrueType, OpenType, WOFF, and other formats – supports mapping characters to glyphs, substitutions, reading metrics, laying out glyphs, font subsetting, and more. Used as part of the PDFKit PDF generation library.

foliojs

postgres-pool 6.0: Connection Pool Implementation for

1
pg



James Geurts

env-schema 5.0: Validate Environment Variables with Ajv and Dotenv

Fastify

mock-os: Testing Module for the

1
os

Built-in Module

Laurent Fortin

💻 Jobs

Software Engineer at Blueground (Remote) — Help us build the world’s leading next-gen platform for home rentals and shape the future of living.

Blueground

Web Academic Lead – US (Remote) — Mentor aspiring developers seeking to build inspiring careers. Create and lead the online sessions, being the role model for our students.

Masterschool

Find Tech Jobs with Hired — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It’s free for job-seekers.

Hired


0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *