#501 — August 14, 2020
JavaScript Weekly
Rome: Unifying The Frontend Development Toolchain — We first casually mentioned this in-beta tool, dubbed the "spiritual successor of Babel", back in April, but things have come a long way since then. Rome aims to replace Babel, ESLint, Webpack, Prettier, Jest, and more, to ostensibly simplify the frontend workflow. We’re all for it if it works. Here’s the introductory blog post.
Sebastian McKenzie
React 17.0 Release Candidate: No New Features but Still Lots That's Interesting — When a new major release comes along after two-and-a-half years the absence of new features is going to disappoint many. However, the ability to incrementally upgrade React sites both now and in the future is welcome news. There's still lots about which to be excited, so definitely have a skim at the least.
Dan Abramov and Rachel Nabors
Quickly Find Front-End Issues Like JavaScript or Network Errors — Get proactively alerted on any client-side issues such as JavaScript and network errors, optimize the load time of your front-end resources, and detect any UI issues that affect critical user journeys. Try it free with Datadog Synthetics.
Datadog sponsor
Tabris.js 3.6 Released with Support for Redux, PDFs and More — Tabris is a toolkit for building native mobile apps with JavaScript (including iOS apps without having a Mac). 3.6 adds support for building apps based on Redux.
Tim Buschtoens
⚡️ Quick bytes:
- To commemorate our 500th issue (last week), Michael Rambeau kindly put together a timeline of 20 JavaScript projects between 2006-2020. It's not without its omissions but it's a good reminder of how things have progressed.
- Node 14.8.0 has been released with (unflagged) top level await support.
- BuckleScript and Reason have rebranded to ReScript. It's a popular way to write JavaScript by way of OCaml.
- Gatsby has made a bunch of announcements around their new home page, the project's roadmap, and Gatsby Cloud.
- Last week we mentioned Salesforce's 10ドルK donation to ESLint and said we'd mention other similarly big donations to JavaScript projects. ESLint is double lucky, as Microsoft has donated 10ドルK to it too.
- As of this coming Saturday, GitLab will not be doing MFA resets on free accounts - so double check your backup login methods (e.g. recovery codes) if you use GitLab.
💻 Jobs
Full Stack Developer @ Huckberry (Columbus, Ohio) — We're striving to build the most beloved men's retail site on the planet, with React / Redux / Ruby on Rails.
Huckberry
Find a Job Through Vettery — Use Vettery to connect with hiring managers at startups and Fortune 500 companies. It's free for job-seekers.
Vettery
📚 Tutorials, Opinions and Stories
Natively Formatting JavaScript Numbers — Leverage native formatting capabilities such as locale, currency, units, compact mode, etc...
Elijah Manor
▶ A 30 Minute Chat with Allen Wirfs-Brock — Allen is a true JavaScript expert and has a wealth of programming experience dating from the 60s as well as through working on the ECMAScript spec.
TC39er Podcast podcast
Become a Node.js Cloud Developer - Free Book and Video Course — Learn how to deploy, manage, secure and ship Node.js applications like a pro with this practical, hands-on course.
Kati Frantz sponsor
Supercharging <input type=number> with JavaScript — The number input type provides a nice control for working with numbers on most platforms, with min and max bounds, stepping up and down, etc. But what if you want to add more power to it with custom stepping types and controls? Kilian has a go at this here.
Kilian Valkhof
Building Single Page Applications Using Rust — WebAssembly continues to throw up all sorts of interesting options for the future development of Web applications. This isn't about JavaScript at all, but shows how Rust could perhaps act as, conceptually, a successor to it (or things like Elm) in some domains.
Sheshbabu Chinnakonda
Using Node Modules in Deno — Ada calls this ‘a bad practice’ but notes that ‘sometimes there is no alternative’ especially considering how huge the npm ecosystem is compared to Deno’s nascent one.
Ada Rose Cannon
Building a Programming Language in JavaScript From Scratch
Dmitry Soshnikov Education sponsor
How I Became A Senior JS Developer with Personal Projects — An inspiring tale. "One of the best decisions in my developer career was to go beyond just using tools, I decided to create them."
Afonso Pacifer
Using ESLint to Improve Your App’s Performance
Pawel Wolak
🔧 Code & Tools
Mock Service Worker: API Mocking Library for Browser and Node — Interestingly uses the Service Worker API to intercept requests which you can then mock. Capture outgoing requests using an Express-like routing syntax, complete with parameters, wildcards, and regexes. GitHub repo.
Artem Zakharchenko
Deno 1.3.0 Released — Deno 1.0 came out in May and work has continued on the Rust and V8-based JavaScript/TypeScript runtime. We’re still publishing Deno Weekly too – here’s the latest issue.
Deno Land
omg-curry: A Feature Complete JavaScript Currying Library
Debdut Karmakar
Vest: Validations Library Inspired by Testing Frameworks — If you’re used to unit testing, the syntax will be familiar. We linked this quite recently but the author has added a variety of new features since.
Evyatar
AppSignal Automatically Instruments Apollo for Node.js Applications — With AppSignal’s automatic instrumentation, you get to debug GraphQL queries that seem to take a long time with ease.
AppSignal sponsor
React Sortable Tree: Maintain Your Trees Intuitively — Dragging-and-dropping is what many users expect of apps these days. Why not give them what they want? The gif demo illlustrates the promise of this hierarchy maintenance component.
Frontend Collective
crypto-hash: A Hashing Module Using the Native Crypto API in Node and Browser — Get the same hashing API in both environments. Uses the crypto module on Node and window.crypto in the browser.
Sindre Sorhus
🆕 Quick releases:
- Storybook 6.0 — UI component building system.
- Hapi 20.0 — Batteries included Node webapp framework.
- MQTT.js 4.2 — MQTT client library.
- Fetch 3.4 — window.fetch polyfill by GitHub.
- Prism 1.21 — Syntax highlighter.