🇺🇦 #​585 — April 15, 2022

Unsubscribe  |  Read on the Web

JavaScript Weekly

JS Function Composition: What’s The Big Deal? — James’ articles on JavaScript fundamentals have been very popular over the years, so it’s great to see a new one focusing on a common activity: function composition — “Why, then, do functional programmers get all worked up about it? What’s the big deal?”

James Sinclair

“Change Array by Copy”: Four New Non-Destructive Array Methods — Dr. Axel takes a look at another in-progress ECMAScript proposal (this one is in stage 3) that will introduce some non-destructive ways to reverse, sort, splice, and set (sort of) array elements.

Dr. Axel Rauschmayer

Want to Dive Deeper into Stories of the Software Industry? — The Stack Overflow Podcast hosts conversations with fascinating guests about how technology is made and where it’s headed. It’s the best place to learn about what’s happening in the world of software development today.

Stack Overflow sponsor

TypeScript 4.7 Beta Released — ES module support for Node.js is now an official feature, and you can specify in package.json whether JS files are interpreted as ES modules or CommonJS modules. .mjs and .cjs extensions are also supported if you prefer. There’s also improved function inference, instantiation expressions, and you can use typeof on private fields. Final TS releases tend to follow on quickly from betas, so expect 4.7 final soon.

Daniel Rosenwasser (Microsoft)

A 'Search Engine' for JavaScript Operators — Quick: name as many operators as you can! Got to about ten or so? This site covers about fifty with a quick explanation of each.

Josh W Comeau



Shepherd 9.1 – Create guided tours for your app.
Jasmine 4.1 – JS testing framework.
PouchDB 7.3 – CouchDB-inspired syncing DB.
Oclif 3.0 – Node.js CLI app framework.
Opal 1.5 – Ruby to JavaScript transpiler.
react-hooks-testing-library 8.0
Create React App 5.0.1 – Improves React 18 compatibility.

💻 Jobs

Director of Engineering @ ButterCMS (Remote) — Working closely with our founder and CEO, you’ll own all technology, deliver on our roadmap, and most importantly, ensure that our customers are successful.

Senior Software Engineer at This Dot Labs (Remote, Worldwide) — Great benefits working in modern tech stacks and amazing clients such as Google, Meta, Twilio, Cloudinary, Roblox, and more.
This Dot Labs

Ashby (YCW19) Is Hiring Remote Engineers to Change How Companies Hire — Join a kind, thoughtful team building powerful, quality software. <2h meetings/wk. Ship >8x per day. CI/CD takes <10min 🚀

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

Fetch vs Axios: A Comparison for Fetching HTTP Resources — A beginner-level comparison of the long standing but borderline legacy Axios client versus using the Fetch API.


Building an Interactive Sparkline Graph with D3 — Being able to build out data visualizations is a handy skill for anyone – this is a simple, elegant one.

Michelle Barker

A Rust Course Especially for JavaScript Developers — Includes side by side comparisons and builds on your familiarity with JavaScript to teach you Rust.

Rust for JavaScript Developers sponsor

How to Build a CMS-Powered Blog with Nuxt — Create a blog without a server by using a headless CMS – namely ButterCMS, in this case – and the Nuxt Vue.js framework.

Uma Victor

A Guide to Optimizing JavaScript for Quick Page Loads — Touches on a few modern approaches including Astro, Qwik, and Partytown.

Steve Sewell

How to Detect 'Long Press' Gestures in React Apps
Colby Fayock

Incremental Static Regeneration for Angular
Enea Jahollari

🛠 Code & Tools

Wild Wild Path: Object Property Paths with Wildcards and Regexps — A wild way to access properties in objects (which can be deeply nested) by way of string based queries that support wildcards and regular expressions. You need to see some examples to really get the idea.


YouTube.js 1.4: A Wrapper Around YouTube's Private API — The way this is described, I suspect your mileage could vary.. but it’s an interesting idea and uses the same API as YouTube clients.


jc: CLI Tool That Converts Output of Popular CLI Tools to JSON — This is written in Python but may be of use to you as a JavaScript developer as it converts either files or the output of over 50 other tools (including dig, du, iostat, and lsof) into easily processable JSON.

Kelly Brazil

Integrate eSignatures in Your App in Less Than a Week

HelloSign, a Dropbox Company sponsor

React Admin 4.0: An Admin Panel for B2B Applications — A framework for building browser-based ‘admin’ apps on the backend of your choice (REST, GraphQL, etc. or you can write your own adapter). There’s a demo if you want to see it live. MIT licensed, but does have a professional version too if support is required. GitHub repo.


nextjs-blog-theme: A Customizable Blog Starter Built with Next.js and Tailwind — Includes dark and light themes and support for MDX. Try a live demo here (dark mode switch at the bottom of the page).


scroll-snap: A Customizable 'Scroll Snap' Implementation — Bit of an older project that’s still maintained. Uses requestAnimationFrame() for 60fps scrolling performance and doesn’t have any dependencies. Try it here.

Luca Falasco

Gladys Assistant: A Privacy-First, Open-Source Home Assistant — It runs on any Linux machine (including a Raspberry Pi) and uses Node under the hood.

Pierre-Gilles Leymarie

Mailgun.js: A JavaScript SDK for Mailgun — As in the email service provider.
Mailgun Team

🕰  ICYMI (Some older stuff that may catch your eye...)

😆  Well I found it useful..

Draw 'Handdrawn' Diagrams in VS Code with ExcalidrawExcalidraw is a popular online drawing tool for creating ‘hand drawn’ diagrams, and one of its coolest features is being able to export in SVG for lossless use in your pages. This VS Code extension brings it.. well, into VS Code, and is now blessed as being the official VS Code Excalidraw extension.

Visual Studio Marketplace / Achille Lacoin