#484 — April 17, 2020

Unsubscribe  :  Read on the Web

🕹 If you're bored this weekend at all, consider joining the latest Ludum Dare — it's an online game jam that's been taking place for 18 years and more JavaScript entries are appreciated against all the Unity crowd 😂

JavaScript Weekly

Writing an 'Emulator' in JavaScript (and Interfacing with Multiple UIs) — This is really neat. Tania built a Chip-8 interpreter in JavaScript and has gone into quite a bit of detail about what was involved here. Lots of neat bits and pieces to pick up from this.

Tania Rascia

jQuery 3.5.0 Released — I know many of you will groan, but I’m delighted when I see a new jQuery release. It’s still so heavily used. No headline features though, this is a security fix for a cross-site scripting vulnerability, plus some tweaks and fixes in preparation for jQuery 4.0 (yes!)

Timmy Willison (jQuery Foundation)

Build a Game of Battleship with TypeScript & Java. Free Course — Join over 2000 developers creating a game of Battleship with TypeScript, Spring Cloud Stream (Java), and PubSub+. This free 30-minute course is a great way to learn the basics of messaging and event-driven architecture with the Aurelia framework.

Solace sponsor

Profiling React.js Performance — Goes into detail on aspects of the React Profiler API, React’s new experimental Interaction Tracing API, and measuring custom metrics using the User Timing API.

Addy Osmani

Userscripts are Fun and Still Very Much Relevant — ‘Userscripts’ are basically JavaScript programs that run in the context of other Web pages so you can add your own features. They were really popular for a while but still exist and are still a neat use case for using JavaScript to improve your Web experience.

Eldad Bercovici

Another Look at What's New in ECMAScript 2020 — We linked to Dr Axel’s roundup recently, but here’s another take, looking at dynamic imports, nullish coalescing, optional chaining, BigInt, and more. Prefer a video introduction to ES2020? Harry Wolff has you covered here.

Ianis T.

⚡️ Quick Releases

💻 Jobs

JavaScript Developer at X-Team (Remote) — Join the most energizing community for developers. Work from anywhere with the world's leading brands.


Senior JavaScript Developer (Warsaw, Relocation Package) — Open source rich text editor used by millions of users around the world. Strong focus on code quality. Join us.


Find a Job Through Vettery — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started.


📚 Tutorials

How To Create a Particle Trail Animation in JavaScript — Particle animations are particularly (sorry) striking.. and in this article, Anna Prenzel shows how to easily create your own such effects with Anime.js.

Smashing Magazine

Strategies for Migrating to TypeScript — A quick overview of some strategies for migrating code bases from JavaScript over to TypeScript.

Dr. Axel Rauschmayer

Developing in a Monorepo While Still Using Webpack — Second part in a series discussing things the team at Etsy learned during the migration of a home-grown, Require.js-based build system to webpack, which took over a year.

Salem Hilal

A More Productive Way to Build Your JavaScript Apps — Write better code, debug it, and test it – all in one place. Try WebStorm. No configuration required.

WebStorm sponsor

▶  Let's Build a Digital Circuit Simulator in JavaScript — A special episode of the Low Level JavaScript series takes us on a brief journey into the world of digital logic.

Low Level JavaScript

How To Set Up an Express API Backend Project with PostgreSQL — A pretty extensive walkthrough of creating an HTTP API using Express with Node.js and Postgres on the backend, then deploying it all on Heroku.

Chidi Orji

Speed Up Your Angular App: 14 Optimization Tips — Tips on how to make your Angular app smaller, faster, and more responsive.

Marcelo Ricardo de Oliveira

Class-Related Types in TypeScript

Dr. Axel Rauschmayer

📅▶ A Fireside Chat on the State of Microservices on April 21 — We recently helped The Software House with a developer survey (thanks to those who took it!) and now they’re doing a live chat on the state of microservices next Tuesday featuring Yan Cui, Alessando Vozza, and others.

The Software House

🔧 Code & Tools

Puppeteer 3.0: It Now Supports Firefox — Best known for as a way to headlessly control Chrome from Node, Puppeteer has recently seen some competition in the form of the cross-browser Playwright recently. But, no fear, Puppeteer is stepping up and can now work cross-browser too. We also learn Puppeteer is migrating to TypeScript.

Mathias Bynens

Open-Source Serverless CMS Powered by React, Node.js and GraphQL API — Build dynamic websites and apps with Webiny. 100% powered by JavaScript. Deploy your sites to AWS Lambda.

Webiny Serverless CMS sponsor

Rome: An Experimental JavaScript Toolchain — A compiler, linter, formatter, bundler, testing framework and more. Started by Sebastian McKenzie (of Babel and Yarn fame), Rome is now a project from the React Native team at Facebook. Related repo.


Vime: A New, Modern Media / Video Player for the Web — Aims to be a ‘modern alternative to Video.js and Plyr’: “The idea behind Vime is we want you to control the player, not the other way around.” Modular, tree-shakable, and with potential for a plugin ecosystem. GitHub repo.

Rahim Alwer

Vuln Cost: An Open Source Security Scanner for VS Code — Free Snyk-powered VS Code extension that finds security vulnerabilities in npm packages, providing feedback in-line with your code, such as how many vulnerabilities a package has.


ip-num: A Library to Work with ASN, IPv4, and IPv6 Numbers — Happy in both Node and the browser.


Flip: Animated Flip Counter Plugin to Add a Countdown to a Website — Adds an animated dynamic countdown timer to a page. No dependencies, responsive and mobile friendly, and fits any language, locale, or time zone.

Rik Schennink

The Perfect Partner to MongoDB Atlas. Try It for Free

Studio 3T sponsor

A JavaScript API for Controlling 'Simpsons: Hit & Run' — Including this as a bit of fun if you fancy noodling on something odd. Remote controlling games from JS seems neat, although I suspect just getting this running would take a while..

Tavis Ormandy