Plus a review of lighter-weight JavaScript frameworks, and some browser debugging tricks. |
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 x ? y : z) explained in more depth in "A curious case of the ternaries." 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. |
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 |
🥳 AWS is celebrating a huge release with v6 of the AWS Amplify JavaScript library which includes full support for Next.js App Router and Server Actions. 🌎 Node.js TSC member Yagiz Nizipli is suggesting using Biome for code formatting in Node, since ESLint has deprecated its core formatting rules. 👾 The winners of React Jam, a recent React-based game development contest, have been revealed. An entry I enjoyed was useChess, a set of chess-based puzzles. ▶️ If you've wondered what the big deal is about Astro, James Q Quick went on the Software Engineering Daily podcast and explained Astro pretty well. 🎵 Someone's recorded ▶️ a rap music video about TypeScript.. |
RELEASES: Node.js v21.2.0 (Current) visx 3.5 – D3-based visualization primitives for React. fx 31.0 – Powerful terminal JSON viewer. Astro 3.5, Ember 5.4, and Prisma 5.6. |
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 |
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 |
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 |
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 |
Marked 10.0 – Markdown parser and compiler. There's also marked-terminal 6.1 which lets you render Marked-processed Markdown on the terminal. HumanizeDuration.js 3.31.0 – Turn milliseconds into textual durations in numerous natural languages. actions/github-script 7.0 – Script the GitHub API in GitHub Actions. Plasmo v0.84.0 – "Like Next.js for browser extensions." PDFKit 0.14.0 – PDF generation for Node and browser. React Joyride 2.7 – Create guided tours in your apps. |
“When you choose a language, you’re choosing more than a set of technical trade-offs – you’re choosing a community.” ___ Joshua Bloch |
| |