#554 — September 3, 2021 |
JavaScript Weekly |
Visual Studio Code August 2021 Released — It always feels odd linking to these as they name releases for the prior month, but new features include automatic language detection, built-in bracket colorization (enabled via Microsoft |
A Look at an ES2022 Feature: Class Static Initialization Blocks — You might not be blamed for thinking JavaScript is going a bit Java-y here but, nonetheless, this proposal is at stage 4 and scheduled to be included in ES2022. Dr. Axel Rauschmayer |
💡 Like this ↑? Hemanth HM has a roundup of updates from TC39's 85th meeting on more future (potential) JavaScript features, including the hack pipe operator and |
Search Across the Open Source Universe with Sourcegraph — Sourcegraph searches over 1 million open source repos from GitHub & GitLab along with your own public & private (public beta) repos. No installation required. Sourcegraph makes it easier to search, discover & understand open source projects. Start searching now. Sourcegraph sponsor |
Electron 14.0.0 Released — The latest major version of the popular cross-platform desktop app framework is here. It’s moving to an eight week stable release schedule, so Electron 15 is due in just three weeks.. but for now you get Chromium 93, Node.js 14.17, and V8 9.3 support, experimental cookie encryption support, and a few removals (such as the GitHub |
Neutralino 2.7: Portable, Lightweight Desktop App Framework — Think Electron (above) but rather than including a Chromium distribution with every app, it uses the local platform’s built-in ‘webview.’ This equals (much) smaller, faster apps, though you then have to be aware of each webview’s different quirks. Codezri |
QUICK BITS:
|
RELEASES: socket.io 4.2.0 – Realtime comms library. |
|
📖 Tutorials, Opinions & Stories |
'I Built A $300K/Year Vue.js Component Library' — Not much technical stuff here, but an interesting (and possibly inspiring!) interview with the creator of Vuetify, a Vue.js UI library, on how he’s made the project sustainable and a good source of income. John Leider |
Working with Tree Data Structures — The basics of traversal: both breadth first and depth first. Complete with visuals to help you get the ideas more quickly. Anish Kumar |
Building a Serverless GIF Generator with AWS Lambda — Let’s say you host videos and want to show GIF animations as a sort of preview feature in the UI. Generating such GIF files from videos is a compute-intensive operation but you can use something like AWS Lambda to create a scalable service to handle it for you. James Beswick (AWS) |
Build a React Chat Application — In a few simple steps we’ll show you how to launch a chat app using our React component library. Stream sponsor |
Common Bhagya Vithana |
State Management in Svelte Apps — A tutorial on how to use the Svelte state management store to manage state in Svelte applications. Fikayo Adepoju |
Why Electron Apps Are Fine — While Niels agrees with many common criticisms of Electron, his users don’t care, and he says you shouldn’t care either. Niels Leenheer |
State Management in Next.js Apps — Managing state in a Next.js application can get tricky very quickly. This looks at some patterns to help avoid complexity in common scenarios and avoid “provider hell.” Átila Fassina |
A Guide to React Context and the |
Memoizing Async Functions in JavaScript |
🛠 Code & Tools |
TypeIt: A Versatile Pretend-Typing Effect Utility — Bills itself as ‘the most versatile JavaScript typewriter utility on the planet’. Has a very nice fluent API, but note while it’s free for personal/OSS use, you need to pay (a modest amount) for a commercial license. Alex MacArthur |
Stitches 1.0: The Modern Styling Library — Another CSS-in-JS solution, this one offering high performance, SSR, theming, critical path CSS, an intuitive API, and lots more. Modulz |
Run Faster and Safer Than Linux with Open Source Unikernels — Deploy with no ops and no cloud lock-in. Run 2X as fast on Google. Run 3X as fast on AWS and deploy in 10s of seconds. NanoVMs sponsor |
smartcrop.js: Content Aware Image Cropping — Given an image, this can help find the ‘best’ part of the image to crop down to. Works in the browser and in Node. Jonas Wagner |
Roadroller: A Heavyweight 'Crusher' for JavaScript Code — Aimed more at demo-style coding than production apps, the goal of this tool is to crush/minify down JavaScript code to as small a size as possible. GitHub repo. Kang Seonghoon |
Crank.js: Write JSX-Driven Components with Functions, Promises and Generators — The usual JSX syntax you know and love for writing HTML-like code directly in JavaScript but all components are just functions or generator functions. See some example code. Brian Kim |
Announcing JavaScript Security Sessions at SnykCon | Register for Free Snyk.io sponsor |
parse-domain: Split Hostnames Into Parts — Given a hostname, pull out the subdomains, domain, and top-level domains, including ‘effective’ top-level domains as on the public suffix list. Peerigon |
Mafs: React Components for Math Visualization — A well thought out set of sophisticated mathematics visualizations. It is supported with a nicely executed just-what-you-need-to-know set of guides including one which will allow you to plan your own suborbital spaceflight. Steven Petryk |
bundle: A Quick npm Package Size Checker — Enter a package name, then hit the “run” button and this tool will give you the minified, bundled, and gzipped size of the package. Okiki Ojo |