🇺🇦 #​590 — May 20, 2022

Unsubscribe  |  Read on the Web

JavaScript Weekly

Sliderland: A Minimalist Coding Playground — No obvious top feature this week so I’m leading with a little project I’ve enjoyed playing with. It’s a slider-style visualization you can code with simple formulas (check out this one). The code is simple but packs in some neat features such as a WebAssembly-powered MP4 recorder, courtesy of ffmpeg.wasm.


Playwright Can Now Test React, Vue and Svelte ComponentsPlaywright, Microsoft’s browser control library for Node.js, takes an interesting step in allowing you to programattically test your components using all of Playwright's features using Playwright Test (Playwright's own test runner). Here are the docs.


Headless CMS with World-Class TypeScript Support — Kontent handles all your content management. Streamline your code using TypeScript SDK, CLI, Rich Text resolver, and strongly typed Model Generator and scale with no problems when your project grows. Have you seen our UI?

Kontent by Kentico sponsor

Web Applications 101 — A single article that touches on a lot of structural concepts involved in building a modern Web site from the simplest of HTML pages through to server-side rendering (SSR) and static-site generation (SSG). Not a tutorial but paints the architectural picture for you.

Robin Wieruch



Mithril.js 2.2 – Popular SPA framework with its first release in over 2 years.
Electron React Boilerplate 4.6 – Now uses React 18.
Helmet 5.1.0 – Secure Express.js apps with HTTP headers.
Deno 1.22
melonJS 10.8.0 – JS 2D game engine.
Angular 14 Release Candidate
Node 18.2.0 – More in Node Weekly on this.

💻 Jobs

Calling all Empathetic + People-Focused Sr. JavaScript Engineers — We're looking for Node + React developers who want to design architecture, lead teams, and ship features directly to customers.
Moz Group

Full Stack Developer – JavaScript/TypeScript (f/m/d) and More — Join our team working on real life solutions for the future of public transport.

Backend Engineer — We’ve built a product thousands of people love (see Trustpilot if you don’t believe us). We need your help with Node & TypeScript.

Find JavaScript 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.

📒 Articles & Tutorials

Building an Animated Piano Keyboard with JavaScript and MIDI — If you liked Tania Rascia’s accordion last week, this beautifully presented post is for you. The work Jamie is doing is feeding into his jazz piano training site too.

Jamie Smith

Rust for JavaScript Developers: Preorders Closing Soon — A comprehensive course that teaches you everything you need to know to get productive in Rust via text, interactive visualizations and videos.

Rust for JavaScript Developers sponsor

Why You Don't Need void 0 — JavaScript’s void operator has been used in some interesting ways over the years versus undefined but Lars thinks undefined is now the better option.

Lars Grammel

RFC 9239: Updates to ECMAScript Media Types — One of those “do I need to know this, even though it sounds important?” topics. Dr. Axel keeps it simple but essentially JavaScript’s MIME type is now unambiguously text/javascript and .mjs is a registered file extension for JS modules.

Dr. Axel Rauschmayer

Software Supply Chain Attacks Are No Joke — Industry experts expect supply chain attacks to increase by a factor of four over the course of 2022. Get the guide to Preventing JavaScript Supply Chain Attacks.

Feroot Security sponsor

Deploying Node-RED to Google App EngineNode-RED is a JavaScript-powered low-code event-driven programming environment commonly associated with IoT and bringing together hardware devices in various ways. But you can deploy it in the cloud, too, to create your own automation systems.


▶  SolidJS Explained in 100 Seconds — A snappy explanation of where Solid fits in.

🛠 Code & Tools

JSON Mask: A Way to Select Specific Parts of a JS Object — Give JSON Mask an object and a (XPath-esque) query and you get back an object with the same structure but only the required parts included with the rest ‘masked’ (hence the name).

Yuriy Nemtsov

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.


PushIn.js: A Lightweight Parallax / Dolly / Push In Effect for Web Pages — Simulates an interactive dolly-in or push-in animation when scrolling. The homepage is itself a live demo.

Nathan Blair

Vuestic 1.4.0: An Open Source UI Library for Vue 3 — A library of more than 50 customizable components. 1.4.0 brings Nuxt 3 support plus new carousel and counter components.


Free Activity Feeds & Chat APIs for Qualifying Teams

Stream sponsor

Timewave: A Tiny Clock and Date Library (with Simulation Support) — Boasting “much of the same functionality as MomentJS and its replacement Luzxon in a smaller package”, this library also lets you run multiple clocks in parallel at different speeds. GitHub repo.

Simon Y. Blackwell

Elder.js: An SEO-Focused Svelte-Based Static Site Generator — Designed for building SEO-friendly sites at scale and the name isn’t just random, it’s used in production to run a site about finding senior housing.

Elder.js Team

minimatch: A Glob Matcher — Converts glob-style expressions to regexes. Used internally by npm.

Isaac Z. Schlueter

A React Router Implemented in Under 100 LOC — One of those sorts of experiments that anyone can learn from.

Ashok Khanna

💚 Use Node? Check out the latest issue of Node Weekly, our sibling email about all things relating to Node.js — from tutorials and screencasts to news and releases. Yep, we do include some Node related items here in JavaScript Weekly, but we save most of it for there.

→ Check out Node Weekly today