#359 — October 8, 2020

Read on the Web

Not a lot of tutorials this week, so we've made the ones we did find the features, and made a bigger code and tools section instead 😁 If you do write anything we can include, though, please hit reply and let us know!

Node Weekly

Node v14.13.1 (Current) Released — A very minor release that packs in the usual tweaks and dependency updates, but also makes the fs.rmdir’s recursive option non-‘experimental’ at last for all your mass file deletion needs.

Bethany Nicolle Griggs

👋  Node 12.19.0 is now with us too and gains N-API 7, crypto.randomInt and package.json 'imports' field support.

Async Generator Functions and WebSockets in Node — Node added support for async generator functions in Node 10 and while they remain a reasonably niche feature they offer handy behind the scenes functionality for dealing with, say, WebSockets.

Valeri Karpov

Launching AppSignal Monitoring for Node.js 1.0 — We're officially launching the 1.0 version of @appsignal/node.js. It’s ready for use in production apps and includes out-of-the-box support for Node.js Core, Express, Next.js, Apollo Server and node-postgres. When the bits hit the fan, use AppSignal.

AppSignal sponsor

Building Scalable GraphQL APIs on AWS with CDK, TypeScript, AppSync, DynamoDB, and Lambda — AWS AppSync is a managed serverless GraphQL service and you can bring it together with numerous other technologies to create powerful solutions like a real-time GraphQL API as here.

Nader Dabit

Comparing the Type Safety of 8 TypeScript ORMs and Database Libraries — This comes from the folks at Prisma so take that bias into account, but they do cover several other libraries.

Prisma

Could a Web of Trust for npm Work? — Public library repositories like npm, RubyGems, and PyPl are more often falling prey to people trying to distribute malicious code – could the idea of creating a ‘web of trust’ help tighten security?

Tao Bojlén

⚡️ Quick bytes:

💻 Jobs

Senior Node Engineer — Seeking a Senior Node Engineer to make a monumental impact on our digital ordering channels. Openings in Chicago and Plano.

Yum Brands, Inc.

Find Your Next Job Through Vettery — Create a profile on Vettery to connect with hiring managers at startups and Fortune 500 companies. It's free for job-seekers.

Vettery

🧑‍💻 Interested in running a job listing in this newsletter? There's more info here.

🛠 Tools, Resources and Libraries

meta-fetcher: A Tiny URL Meta-Data Fetcher (Scraper) for Node — Uses node-fetch under the hood to fetch metadata (title, OpenGraph data, favicons, etc.), parse it, and return it as a JSON object.

Rocktim Saikia

Hazelcast Node.js Client 4.0 Released — Hazelcast is a powerful and popular (at least in the Java space) in-memory ‘data grid’ and this upgrade brings the Node client up to the latest standards.

Andrey Pechkurov

Full-Featured API That Lets You Build Beautiful Video for Your Node App — Easily build video experiences into your Node app offering the best user experience for every device, browser, and network combination with our video API.

Mux sponsor

Camaro: A High Performance XML to JSON Converter — Uses bindings to pugixml, a fast C++ XML parser.

Tuan Anh Tran

Nock: HTTP Server Mocking and Expectations Library — Let’s say you’re creating a client library that uses HTTP to hit a third party service.. Nock will let you test it in isolation by mocking requests/responses.

Nock

consistent-shading: A Luminance Shading Library — A bit niche but if you have colors and you want to work with highlights and shadows with them, this may plug a gap.

Garleanu Alexandru Stefan

Getting Started with OpenTelemetry and Distributed Tracing in Node.js

Lightstep sponsor

Spotify-api.js: A Node Wrapper for the Spotify API — Despite the name and logos, this is not an official project but may have some value if you love your Spotify. spotify-web-api-node is another, longer established option.

Unofficial Spotify API Team

🏆 Golden Oldie of the Week

Worker threads brought a little parallelism to Node but remain a relatively little used and uncommon feature to see in the wild (in our experience). There are good reasons for that, but it's useful to understand what they offer all the same, and this article was hugely popular last year.

Node Multithreading: What Are Worker Threads & Why Do They Matter? — Since the release of Node 11.7 in 2019, the worker_threads module has been enabled by default, bringing multi-threaded development as a realistic option to Node developers.

Alberto Gimeno