Axios turns 1.0; TypeScript turns 10

#​609 — October 7, 2022

Unsubscribe  |  Read on the Web

Together with 

JavaScript Weekly

Axios 1: The Long Standing HTTP Client Library — After eight years, 100,000 stars, and a presence in thousands of projects, Axios remains popular, yet v1.0 has only just landed (technically v1.1.2 now – after some fixes and a a rather problematic change). The Fetch API has eaten into Axios’ market in recent years but, a bit like jQuery, Axios still wraps up a lot of functionality into an API many developers like. (Project homepage.)

Axios Project

🤔 If you wonder why people use Axios when the Fetch API is widely supporters, interceptors are just one of many features its fans cite.

Free Course: The Last Algorithms Course You’ll Need — Over the course of nearly ten hours, this super fun free video courses dives into data structures, arrays, search and sort, recursion, graphs, trees and much more.

Frontend Masters sponsor

‘I Turned JS Into a Compiled Language (for Fun and Wasm)’ — You can never be bored observing Surma’s work which continues to provoke ideas and discussion (such as with Web Workers). Now he’s trying to run JavaScript in WebAssembly, which required turning JavaScript into C++ first. Eek! Good idea Does it matter? Spoiler: “I think this technique is a dead end” but it’s a neat journey anyway and he explains how AssemblyScript suggests a more promising way forward.

Surma

🎂  Ten Years of TypeScript — Even if you don’t use it, TypeScript’s influence on the JS landscape is significant, and it’s now ten years old. (It was our top feature in issue 99 along with the release of jQuery Mobile 1.2.0! 😏). TypeScript’s PM reflects on how its ideas have stood the test of time and looks forward to another ten years.

Daniel Rosenwasser (Microsoft)

🕹  The js13kGames 2022 Winners — The eleventh annual js13kGames coding competition that challenges participants to create games in 13KB or less of JavaScript has wrapped up and here are the winners. If you have the time, there’s a lot to learn from the shared code, or you could just play the winning game – a surprisingly slick 3D puzzler platformer.

Lee Reilly (GitHub)

The Future of the Web is on the Edge (Says Deno)Deno is not merely an alternative server-side runtime for JavaScript – it’s at the heart of Deno Deploy, a serverless platform for taking JavaScript ‘to the edge.’ Andy sell us on the benefits of being edgy here while taking a potshot at north Virginia.

Andy Jiang (Deno)

IN BRIEF:

RELEASES:

📒 Articles & Tutorials

A (Mostly) Complete Guide to React Rendering Behavior — A classic article that’s had a big 2022 update to React 18 standards. Dig into the details of rendering behavior and how Context and React-Redux affect things.

Mark Erikson

‘I Changed My Mind About Writing New JavaScript Frameworks’ — Salma previously wrote about how you “probably shouldn’t write a new framework”, but she’s changed her mind – maybe you.. should?

Salma Alam-Naylor

How to Build URLs and Handle Redirects in Headless Architecture — Is your site getting larger, and URLs are getting out of hand? The chances are, your URL policy is not future-proof.

Kontent.ai sponsor

▶  Animating Triangles with Three.js — A 90-minute live coding session covering the creation of a striking whirlwind of triangles. You need to see it to get it, but I learn a lot from seeing how other people approach ideas like this.

Yuri Artiukh

▶  Using npm query and jq to Dig Into Dependencies — npm 8.18.0 introduced the ‘npm Dependency Selector Syntax’ and npm query to programmatically query a project’s dependencies.

Elijah Manor

Increasing E2E Test Coverage from 10% to 95% in 12 weeks — A look into how Padlet achieved their product quality goals by offloading end-to-end testing onto QA Wolf.

QAWOLF sponsor

How to Write CommonJS Exports That Can Be Name-Imported from ESM
Dr. Axel Rauschmayer

The New Test Framework Built-In to Node 18.8+ Explained
David Herron

Implementing Some of the Missing Math Methods in JavaScript
Olivia Gibson beginner

🛠 Code & Tools

μFuzzy: A Tiny, Efficient Fuzzy Search Library — A search library designed to match a relatively short search phrase (a figurative needle) against a large list of short-to-medium phrases (a figurative haystack) and to do so with low resource usage.

Leon Sorokin

zx 7.1: Google’s Tool for Easier Shell Scripting — The idea is simple: use JavaScript instead of bash or Perl, say. zx smoothes off the rough edges (see the README for examples). v7.1 introduces an --install option to detect and install all imported packages in a script making it even easier.

Google

Don’t Let Your Issue Tracker Be a Four-Letter Word. Use Shortcut

Shortcut (formerly Clubhouse.io) sponsor

Radix UI: Unstyled Accessible Components to Build on Top Of — Somehow we’ve slept on Radix till now, but if you want to design your own components while still having a solid foundation to work from, Radix can take care of a lot of the rougher edges.

WorkOS

Horizon UI: An Open Source Admin Template Atop Chakra UI — Includes a wide variety of dark/light components. GitHub repo.

Horizon UI

SurveyJS: A Library for Making Survey Forms — A form builder library for creating data-driven, multi-langauge survey forms. It has a ‘pro’ level and some related commercial services but is MIT licensed at the base.

SurveyJS

⚡️ OTHER QUICK RELEASES:

💻 Jobs

Software Engineer — Join our “kick ass” team. Our software team operates from 17 countries and we’re always looking for more exceptional engineers.
Stickermule

Senior JavaScript Developer (Remote or Warsaw) — Join the CKEditor team to develop an Open Source project used by millions of users around the world 🚀and realize your true potential.
CKEditor

Senior Frontend Engineer (EU Remote or Relocate to Berlin) — We’ve built a product thousands of people love (see Trustpilot if you don’t believe us). We need your help with React & TypeScript.
Feather

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.
Hired

Related Post

Extractors for ECMAScriptExtractors for ECMAScript

<table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height:

Using Rust to build Node modulesUsing Rust to build Node modules

<table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.55em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height:

Turbo-charged incremental bundling au RustTurbo-charged incremental bundling au Rust

<table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: