#480 — March 20, 2020

Unsubscribe  :  Read on the Web

✍️ We hope you're doing okay in these unusual times. We'll be publishing JavaScript Weekly as usual, but you may notice some changes as we adapt – please hang in there with us 🙂

If you have anything to share that would help the community, virtual events, etc. you can reply to any issue to let us know and we'll try to share what we can :-)
— Peter C, your humble editor.

JavaScript Weekly

μPlot 1.0: A Fast, Tiny Time Series Chart Library — A fast, memory efficient Canvas-based time series plotting library. How fast? Try 150,000 data points in 60ms fast. Lots of demos here.

Leon Sorokin

npm is Joining GitHub — This is perhaps the biggest Node news of the year! npm Inc. (including the public repository) is being acquired by GitHub (who you might recall launched their own package registry less than a year ago). Fingers crossed this only means good things for npm. If you want more background, Isaac Z. Schlueter tells his side of the story here.


Optimize Your Front-End Performance in Real-Time — Identify JS errors, errors in AJAX calls, page load time with Site24x7 Real User Monitoring. You can also track your CDN performance, analyze user sessions, measure and reduce resource load time. Sign Up.

Site24x7 sponsor

Wikimedia (The Folks Behind Wikipedia) Are Adopting Vue.js — Wikimedia will be using Vue for their future front-end development, but no, Wikipedia is not becoming an SPA! This post digs into the how and why of the decision, while on Twitter, Vue.js creator Evan You explains more from his side. Hacker News had a very busy thread on the topic too.

Wikimedia Foundation

▶  16 Hand-Picked JavaScript Podcasts Still Running in 2020 — This is an update of a list originally made in 2018. If you do, somehow, have spare time to listen to podcasts now, this up to date list may be useful.

Mathieu Dionne podcast

Babel 7.9.0 Released — A new minor release for the popular JavaScript compiler which includes updates related to @babel/preset-env, TypeScript 3.8, Flow, and JSX.

Nicolò Ribaudo

⚡️ Quick Releases

💻 Jobs

UX/Frontend Engineer @ Siteline — Join the founding engineering team at Siteline and help us revolutionize the payments process for construction.


Find a Dev Job Through Vettery — Vettery is completely free for job seekers. Make a profile, name your salary, and connect with hiring managers from top employers.


📘 Articles & Tutorials

An Interactive Introduction to AntV — We recently linked to a neat interactive introduction to D3, here’s something similar for AntV, a data visualization toolset originally built for financial data. Worth a play.

Jiazhe Wang

Implementing Infinite Scroll And Image Lazy Loading — A tutorial on using the Intersection Observer API to implement infinite scrolling and image lazy loading in a functional React component.

Chidi Orji

A Much Faster Way to Debug Code Than with Breakpoints or console.log — Move forward and backwards through your code to understand the conditions that led to a specific bug, view runtime values, edit-and-continue, and more.

Wallaby.js sponsor

Some Real World Use Cases for JS ProxiesProxies are far from a universally understood concept in the JavaScript world, so it might help to think about them in a context where you might use them.

Arbaz Siddiqui

How to Cancel a Fetch Request — This looks at the new AbortController API which can help with one of the shortcomings of promises: That you can’t cancel a fetch request.

David Walsh

Five Practical Tips When Using React Hooks in Production

Tobias Deekens

Faster CI/CD for All Your Software Projects Using Buildkite

Buildkite sponsor

Using Watchers for Form Input Validation in Vue.js — The watch option in Vue.js offers a way to respond to data changes in a given element and perform form input validation.

Nwose Lotanna

🔧 Code & Tools

Uppload: A 'Better' JavaScript Image Uploader — Open source, highly customizable with 30+ plugins and can be used with any file uploading backend.

El Niño

Heapify: The 'Fastest JavaScript Priority Queue Out There' — It’s a bold claim, but there are some benchmarks, plus no dependencies and it’s well explained and documented too.

Lucio Paiva

Introducing Gretchen: Making fetch Happen in TypeScript — An introduction to Gretchen, a modern, TypeScript-focused Fetch API abstraction.

Eric Bailey

Stream Chat API & JavaScript SDK for Custom Chat Apps — Build real-time chat in less time. Rapidly ship in-app messaging with our highly reliable chat infrastructure.

Stream sponsor

Tippy.js 6.1: Highly Customizable Tooltip and Popover Library — Accessible, easy to theme, fast on low-end devices, and TypeScript ready. Also a great example of a good project site/homepage. GitHub repo.


Seafox: A Fast Spec-Compliant JavaScript Parser Written in Typescript — Generates AST according to the ESTree AST format, and can be used to perform syntactic analysis of JavaScript code.

Kenny Flash