#663 — November 16, 2023 |
|
JavaScript Weekly |
Prettier 3.1 Released — The popular opinionated code formatter has a new release including support for the new control flow syntax in Angular 17 plus a new, experimental formatting option for ternary expressions (as in Alex Rattray |
🤔 With an aim to making code formatting even faster, Prettier's co-creator has put up a $10k bounty for any Rust project that passes >95% of Prettier's tests. |
Exploring Explicit Resource Management in JS — A practical look at the idea of explicit resource management, an idea both currently at stage 3 in TC39 (and partly supported in TypeScript 5.2) that makes it easier to ‘clean up’ resources once they are no longer used or needed. Ilia Pozdnyakov |
Build Interactive, Live Video Applications with Amazon IVS — Amazon Interactive Video Service (Amazon IVS) allows developers to create dynamic video experiences, such as collaborative real-time livestreams. Check out the new ivs.rocks to find code samples, demos, and other resources. Click here to get started. Amazon Web Services (AWS) sponsor |
On HTML Web Components — “With web components, you might even say React’s component model is being ported to the browser. But it’s being done in a way that works to enhance how the web already works, not replace it”. Jim Nielsen |
A Review of Lightweight JavaScript Frameworks — This overview is targeted at Django (i.e. Python) developers but if you, too, want to avoid larger frameworks like React or Angular, you might appreciate this look at numerous alternatives from Stimulus and htmx to more oblique options like Laravel Livewire. Michael Yin |
|
RELEASES:
|
📄 Articles & Tutorials |
67 Browser-Based Debugging Tricks — A list of useful, ‘not-obvious’ hacks to get the most out of the browser’s DevTools. Assumes a reasonable existing understanding of said tools. Alan Norbauer |
Exploring V8's Strings: Implementation and Optimizations — Note: This is very technical and most JavaScript developers do not need to go this deep. That aside, this is a fantastic look under the covers of how the V8 engine handles strings, including the optimizations used that allow it to go toe to toe with languages like C++. Ilia Pozdnyakov |
JavaScript Scratchpad for VS Code — Quokka.js is the #1 tool for exploring/testing JavaScript with edit-continue experience to see realtime execution and runtime values. Wallaby Team sponsor |
▶ An Overview of Angular 17's New Built-In Control Flow — Angular 17 was released last week and a significant enhancement was support for a new syntax in templates that looks and feels more JavaScript-y. Dmytro Mezhenskyi |
Moving Back to React (from Preact) — Preact felt like a logical, lightweight choice to this team at one time, but they’ve switched to React for better compatibility with Next.js, among other things. Their page weight is up slightly, but they feel the tradeoff is worth it. Ante Barić (Daily․Dev) |
My Journey to 3x Faster Builds: Trimming Barrel File Imports — “I maintain a small frontend application (4K LOC) which uses Vite as the compiler. The production build, using npm run build, was taking 26 secs on Github Actions. It seemed awfully slow for such a small application. I decided to investigate why.” Ramana Venkata |
Can Bun Eat Node’s 'Lunch'? — An experiment in migrating a codebase (a restaurant voting app called Lunch) from Node over to Bun and seeing how it fares. Jeffrey Carl Faden |
Feel the Power of More Than 420,000 Teammates and Work #LikeABosch Bosch sponsor |
How to Use NPM Packages Outside of Node — Learn how to run NPM packages in ‘other places’ like serverless platforms, the browser, and beyond. George MacKerron (Neon) |
What I Learned Building an Audio Plugins System for the Web |
Rust for JavaScript Developers: An Overview of Testing |
🛠 Code & Tools |
gsplat.js: A Gaussian Splatting Library — Gaussian splatting is an increasingly popular graphics rendering techniques where rather than render millions of tiny, textured triangles in a scene, you get a more wild paintball-like splatter fest, where each paintball creates a smooth, colorful blob instead of a rigid shape. This demo is both simple and striking. Dylan Ebert |
Reveal.js 5.0: The HTML Presentation Framework — A way to build presentations using standard Web technologies. The project’s homepage is, itself, such a presentation. v5.0 adds support for ‘scroll mode’ which essentially turns presentations into more typically scrolling Web experiences – demo. Hakim El Hattab |
🖍️ Marker.io: Collect Bug Reports With Annotations & Session Replay — Collect feedback on live websites. Get dev-friendly bug reports with screenshots, URLs, console logs & session replay. Marker.io sponsor |
Datasheet Grid: An Airtable-like React Component — If you’ve got an array of objects and you want a way for users to manipulate them, this is for you. It’s not going to replace a spreadsheet or an extensive data grid framework, but it’s a mature solution featuring smooth animations, virtualized rows/columns, keyboard navigation, and more. Nicolas Keller |
Perfect Freehand: A Library for Creating Better 'Freehand' Lines — You can try it out here. Makes your e-signature not look like chicken scratch! Might be useful for drawing apps. Steve Ruiz |
Wild Wild Path v5: Object Property Paths with Wildcards and Regexps — A 'wild' way to access properties in objects (which can be deeply nested) by way of string based queries that support wildcards and regexes. The examples help communicate the idea. ehmicky |
@storybook-test: More Streamlined and Powerful Storybook Testing — @storybook/test consolidates the API of Kasper Peulen |
|
|
|