Sign in

Axel Rauschmayer (also on 🦣)

@dr-axel.de
1.1K followers 109 following 949 posts

• JavaScript, TypeScript, web development • Blog: 2ality.com My main account is on Mastodon (you can follow via RSS): fosstodon.org/@rauschma

PostsRepliesMedia
Reposted by Axel Rauschmayer (also on 🦣)
Jovi 🐨 @jovidecroock.com · 5h
Preact 11 is out 🎉 We’ve been hard at work at making our diffing use modern features like moveBefore , leveraging ESM for tree-shaking Preact Compat and ensuring you have a great experience with resumed hydration.
46517
Axel Rauschmayer (also on 🦣) @dr-axel.de · 3h
“Interview: Firefox’s chief on why he hopes a redesign will help win users from Chrome” arstechnica.com/gadgets/2026...
arstechnica.com
Interview: Firefox's chief on why he hopes a redesign will help win users from Chrome
Mozilla's Ajit Varma explains why a redesign suits the fight for the open web.
052
Reposted by Axel Rauschmayer (also on 🦣)
Paweł Grzybek @pawelgrzybek.com · 26/09/2026
Node.js 26.10 comes with built-in debounce and throttle utilities. Like it! Can't tell you how many times I implemented (copied from the previous project) these two. Debounce: nodejs.org/docs/latest/... Throttle: nodejs.org/docs/latest/... #nodejs
36213
Axel Rauschmayer (also on 🦣) @dr-axel.de · 27/09/2026
MacOS 27 shows a handle for resizing when the screen is split between two windows. Dragging it resizes both windows at the same time.
Two windows, one on the left and one on the right with their borders touching in the middle. Where they meet, there is the cursor for horizontal resizing for the left window. Underneath it, there is a short and narrow vertical rectangle that serves as a handle for resizing both windows.
010
Reposted by Axel Rauschmayer (also on 🦣)
Aki the Conqueror 🦓 @akiro.se · 25/09/2026
Open source maintainers are starting to get all manner of communiques from the compliance & legal departments of huge corporations using vaguely threatening and legal-sounding language and demanding the maintainer fill out forms and reports and attest to the security of their project "because CRA".
4105
Reposted by Axel Rauschmayer (also on 🦣)
Kevin Powell @kevinpowell.co · 25/09/2026
CSS keeps getting better and better, but the problem with hearing about amazing new features is that we're stuck not being able to use them for a few years because of browser support. So, this week I looked at a bunch of well-supported CSS features that I still see people turn to JS for.
youtu.be
Use these CSS features instead of JavaScript
YouTube video by Kevin Powell
5595
Axel Rauschmayer (also on 🦣) @dr-axel.de · 25/09/2026
Useful: unicodelookup.com Lets you search for all kinds of things and returns Unicode characters plus additional information (such as the corresponding HTML entities).
unicodelookup.com
Unicode Lookup: convert special characters
Unicode Lookup is an online reference tool to lookup Unicode and HTML special characters, by name and number, and convert between their decimal, hexadecimal, and octal bases.
030
Axel Rauschmayer (also on 🦣) @dr-axel.de · 25/09/2026
Typography: Unicode: multiplication sign, × • Before: 640 x 480 • After: 640 × 480 Unicode: minus sign, − • Before: 10 - 2 • After: 10 − 2
010
Reposted by Axel Rauschmayer (also on 🦣)
Trivikram Kamat @trivikram.bsky.social · 24/09/2026
If you maintain a @nodejs.org application that hasn't been updated for a couple of years, consider looking into replacing some userland dependencies with built-ins that are now available flaviocopes.com/node-builtins/
flaviocopes.com
Node.js built-ins that replaced npm packages
Twelve Node.js built-ins that replace axios, nodemon, dotenv, jest, chalk, glob and more, with their stability in Node 24 and one gotcha each.
0265
Reposted by Axel Rauschmayer (also on 🦣)
Emanuele (Ema) @ematipico.xyz · 22/09/2026
Wrote something about formatters. A biased vision of how formatters should be implemented in 2026 ematipico.xyz/blog/the-bes...
ematipico.xyz
The Best Formatter - Part 1
An opinionated vision of what a Formatter should look like in 2026, navigating some aspects of the infrastructure: the right data, debugging, and comments.
1185
Reposted by Axel Rauschmayer (also on 🦣)
Ben Vinegar @benv.ca · 22/09/2026
I recently learned there are way more monospace fonts out there than I was aware of somehow this led to making a video that tours 18 different fonts in 3 mins, set to chill lofi music (🔈) hope it's useful for folks - it was for me! www.youtube.com/watch?v=XukW...
youtube.com
18 Monospace Fonts in 3 mins (chil lofi)
YouTube video by Ben Vinegar
081
Reposted by Axel Rauschmayer (also on 🦣)
patak @patak.cat · 21/09/2026
In a time when most companies are so openly playing against their employees and the rest of us, we should celebrate the existence of beacons like Igalia that shows them it's their choice. Organizations can definitely thrive with fairer structures and be a strong positive force for the world.
31006
Axel Rauschmayer (also on 🦣) @dr-axel.de · 20/09/2026
iPadOS 27: In Mail app, I swipe right from the left bezel in order to show the sidebar. When doing that, I regularly accidentally mark a message as unread. This can be fixed by switching off right-swiping for messages: Settings > Mail > Message List > Swipe Options
020
Reposted by Axel Rauschmayer (also on 🦣)
Ben Vinegar @benv.ca · 18/09/2026
📜 introducing ossrules.md - learn how leading OSS projects use agent rule files - discover skill files that projects actually use - level up your own projects and workflows I've personally learned a lot just exploring
2384
Axel Rauschmayer (also on 🦣) @dr-axel.de · 18/09/2026
Zed tip (macOS): shortcuts for navigating between editor panes. github.com/zed-industri... In VS Code, Command-Option-Left/Right Arrow works across panes. But not in Zed. I’m wondering if Zed should copy that behavior.
github.com
A command/keyboard shortcut to switch between split panes · zed-industries zed · Discussion #13121
Check for existing issues Completed Describe the feature Currently it's easy to split the pane with keyboard shortcut, however, there's no keyboard shortcut for switching between split panes. If ap...
000
Axel Rauschmayer (also on 🦣) @dr-axel.de · 17/09/2026
MacOS Golden Gate bug: Normally, you can press Ctrl-<digit> to go to space <digit>. Currently, that only works for space 1.
110
Axel Rauschmayer (also on 🦣) @dr-axel.de · 16/09/2026
CSS experiment: Laying out a list with SVG bullet points via a CSS subgrid. codepen.io/editor/rausc...
codepen.io
SVG icon alignment
A code demo by Axel Rauschmayer created on CodePen
100
Reposted by Axel Rauschmayer (also on 🦣)
Seb ⚛️ ThisWeekInReact.com @sebastienlorber.com · 16/09/2026
💡 JSPI = JavaScript Promise Integration for WebAssembly "Await for Wasm code" Now in all browsers 🎉 Recently added to Safari and Firefox Looks like an important primitive for native languages C/C++/Rust, etc compiling to Wasm
0182
Reposted by Axel Rauschmayer (also on 🦣)
Alex @alexdln.com · 14/09/2026
11 years ago, Node.js and io.js merged back into one project
A screenshot of the npmx.dev homepage with an updated logo dedicated to the io.js and node.js merge
813219
Reposted by Axel Rauschmayer (also on 🦣)
Seb ⚛️ ThisWeekInReact.com @sebastienlorber.com · 14/09/2026
👀 These JS features -> now Baseline Widely Available: - Object.groupBy() / Map.groupBy() - Promise.withResolvers() - Element.checkVisibility() - ArrayBuffer.transfer() Available in all browsers since March 2024
0281
Reposted by Axel Rauschmayer (also on 🦣)
Colin McDonnell 💎 Zod @colinhacks.com · 12/09/2026
Full post 👇 zod.dev/blog/zod-4-6
zod.dev
Zod 4.6
Zod 4.6 is now available, with .validate() for boolean validation, .properties() on z.instanceof(), and six more JSON Schema keywords.
0112
Axel Rauschmayer (also on 🦣) @dr-axel.de · 11/09/2026
Another new programming language: Mojo – by Chris Lattner (LLVM, Clang, Swift, etc.) et al. mjtsai.com/blog/2026/08...
mjtsai.com
Michael Tsai - Blog - Mojo 1.0
031
Axel Rauschmayer (also on 🦣) @dr-axel.de · 11/09/2026
Focusing on something specific (=targeting WebAssembly) is a good idea for making a programming language useful.
051
Reposted by Axel Rauschmayer (also on 🦣)
Justin Fagnani @justinfagnani.com · 09/09/2026
I wrote about what I've been up to with my new programming language! Zena targets WebAssembly GC, with a TypeScript-like syntax, sound type system, and lots of cool features like pattern matching, async cancellation, borrow checking, WASI integration, and more! justinfagnani.com/2026/09/09/z...
justinfagnani.com
Zena: A new Wasm-first programming language
410526
Reposted by Axel Rauschmayer (also on 🦣)
Emanuele (Ema) @ematipico.xyz · 11/09/2026
It probably went unnoticed, but there are a couple of fixes that made the formatter up to 2x faster. In particular for big files with no comments.
121
Axel Rauschmayer (also on 🦣) @dr-axel.de · 10/09/2026
“Package Manager Trends” by @andrewnez.bsky.social “The short version: the same defensive features keep shipping in tool after tool, and the same three bug classes keep getting fixed.” nesbitt.io/2026/09/10/p...
nesbitt.io
Package Manager Trends
min-release-age, minimum-release-age, -Zmin-publish-age, cooldown.
000
Axel Rauschmayer (also on 🦣) @dr-axel.de · 10/09/2026
1/ Downsides of external battery that charges wirelessly: 1. Phone and battery get hot (bad for batteries). 2. Charging is slow (partly due to the heat). 3. Energy is wasted (transmission & heat). Anker seems to have fixed #1 and #2, via cooling. But there is still #3. www.anker.com/a110r-maggo-...
anker.com
The World's Fastest and Coolest Magnetic Power Bank - Anker US - Anker
Say goodbye to overheating. The Anker MagGo 2 Pro 10K portable charger features Qi2 25W wireless, 45W two-way fast charging, and Active Cooling Technology.
251
Reposted by Axel Rauschmayer (also on 🦣)
Web Witch 🔮 Stephanie Stimac @seaotta.dev · 10/09/2026
I was ahead of the time. blog.stephaniestimac.com/posts/2023/0...
blog.stephaniestimac.com
Designing for Dual Screen and Foldable Devices With CSS - Stephanie Stimac's Blog
Revisiting the CSS media queries and environment variables for foldable devices.
49812
Reposted by Axel Rauschmayer (also on 🦣)
Axel Rauschmayer (also on 🦣) @dr-axel.de · 07/09/2026
1/ Visual Studio Code has several useful diff commands (you can list them by typing “diff” in the command palette). 1. File: Compare Active File with Clipboard 2. File: Compare Active File with Saved 3. File: Compare Active File With... 4. File: Compare New Untitled Text Files
121
Reposted by Axel Rauschmayer (also on 🦣)
Axel Rauschmayer (also on 🦣) @dr-axel.de · 07/09/2026
Bookmarklet: Open a new tab next to the current one (vs. at the very end of all tabs). javascript:window.open('about:blank') I’ve added it as a bookmark named “T” at the beginning of my bookmark bar.
141
Reposted by Axel Rauschmayer (also on 🦣)
Jovi 🐨 @jovidecroock.com · 08/09/2026
Preact 11 will be tree-shakeable, you pay what you use of preact/compat. Soon you won't pay for createElement when using the jsx method. We're continuously trying to give the smallest bundle size, and 600 bytes saved might not seem like a lot but... to us it is
Side-by-side BundleJS comparison showing preact/compat before and after becoming tree-shakeable. The current version bundles render at 7.06 kB gzip with a 1.56 MB publish size, while the release candidate bundles the same import at 6.49 kB gzip with a 601 kB publish size.
1603
Axel Rauschmayer (also on 🦣) @dr-axel.de · 07/09/2026
Bookmarklet: Open a new tab next to the current one (vs. at the very end of all tabs). javascript:window.open('about:blank') I’ve added it as a bookmark named “T” at the beginning of my bookmark bar.
141
Axel Rauschmayer (also on 🦣) @dr-axel.de · 07/09/2026
1/ Visual Studio Code has several useful diff commands (you can list them by typing “diff” in the command palette). 1. File: Compare Active File with Clipboard 2. File: Compare Active File with Saved 3. File: Compare Active File With... 4. File: Compare New Untitled Text Files
121
Reposted by Axel Rauschmayer (also on 🦣)
Vitest @vitest.dev · 03/09/2026
Vitest 5 is here! 🎉 - Big performance improvements (vm pools up to 53% faster, ~18% boost across the board including Browser Mode) - New builtin Trace View in Browser Mode - Nested projects support - New benchmarking API - New `vi.when` API - Better defaults - And a lot of bug fixes!
vitest.dev
Announcing Vitest 5.0
Vitest 5.0 Release Announcement
221744
Reposted by Axel Rauschmayer (also on 🦣)
Jake Bailey @jakebailey.dev · 04/09/2026
this'll be exciting to a very specific kind of person github.com/microsoft/Ty...
github.com
Strongly type file paths by jakebailey · Pull Request #64159 · microsoft/TypeScript
This is a wacky change I&#39;ve wanted to try out for a while and finally started screwing around with with copilot. Right now (and in Strada), we have just two kinds of paths: string - 🤷 Path - a...
6845
Reposted by Axel Rauschmayer (also on 🦣)
Jiahan Chen @chenjiahan.bsky.social · 04/09/2026
We originally built Rslib to unify ByteDance’s web apps and JS libs around Rspack. Getting there wasn’t easy. Rspack inherited an architecture primarily designed for bundling apps, so we made many improvements to produce clean ESM for libs.
1132
Reposted by Axel Rauschmayer (also on 🦣)
Emanuele (Ema) @ematipico.xyz · 02/09/2026
Check this out. It's a really good application, and helps with the burnout from "too many bots" sending PRs and useless messages
2113
Reposted by Axel Rauschmayer (also on 🦣)
Philipp Dunkel @pipobscure.com · 02/09/2026
Coming soon to a nodejs near you: Mounting ZIP-Archives as a virtual file system (VFS). github.com/nodejs/node/... 🎉
github.com
vfs: add ZipProvider by pipobscure · Pull Request #64915 · nodejs/node
Add a node:vfs provider backed by a node:zlib ZIP archive - a ZipBuffer held in memory or a ZipFile on disk - that exposes the archive&#39;s members as a virtual filesystem tree. Directories are re...
0122
Reposted by Axel Rauschmayer (also on 🦣)
Kai Tamkun @heimskr.io · 02/09/2026
Top-level await is fixed in Safari for iOS 27 and macOS Golden Gate. Here's how I did it: webkit.org/blog/18227/f...
webkit.org
Fixing Top-Level Await in Safari
WebKit for Safari 27 adds full spec compliance for top-level `await`.
073
Reposted by Axel Rauschmayer (also on 🦣)
Jon Kuperman @jonkuperman.com · 02/09/2026
whoiz - now on @npmx.dev npmx.dev/package/@jku...
npmx.dev
@jkup/whoiz - npmx
Who is actually serving this site? Enumerate a domain's endpoints and fingerprint the CDN and hosting provider behind each one.
1204
Axel Rauschmayer (also on 🦣) @dr-axel.de · 01/09/2026
1/ ISO 8601 timestamps in JavaScript: const f = new Intl.DateTimeFormat( 'en-CA', // work-around { year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', hour12: false, minute: '2-digit', }); // 2026-08-29, 23:58 function createTimestamp() { return f.format(new Date()); }
stackoverflow.com
Get ISO 8601 using Intl.DateTimeFormat
I want to use Intl.DateTimeFormat to format a Date, and in the examples it says // when requesting a language that may not be supported, such as // Balinese, include a fallback language, in this c...
100
Reposted by Axel Rauschmayer (also on 🦣)
Jiahan Chen @chenjiahan.bsky.social · 01/09/2026
Excited that TypeScript will finally support module types based on import attributes! Bundlers and frameworks can now provide accurate types for custom imports:
27116
Reposted by Axel Rauschmayer (also on 🦣)
Philipp Dunkel @pipobscure.com · 27/08/2026
Another: enable module loading from VFS. Add flags —vfs-mount <source> and -vfs-load to do that from command line. And presto you can run node apps directly from a zip-archive.
121
Axel Rauschmayer (also on 🦣) @dr-axel.de · 27/08/2026
Two interesting new Node.js modules (h/t @pipobscure.com): Zlib: “provides compression functionality implemented using Gzip, Deflate/Inflate, Brotli, and Zstd.” nodejs.org/api/zlib.html Virtual File System: “provides a virtual file system with a node:fs-like API.” nodejs.org/api/vfs.html
nodejs.org
Zlib | Node.js v26.8.1 Documentation
0102
Axel Rauschmayer (also on 🦣) @dr-axel.de · 27/08/2026
1/ “Does this menu work with keyboard? The surprising number of big brands that fail” a11yblog.com/2026/08/18/d...
a11yblog.com
Does this menu work with keyboard? The surprising number of big brands that fail
One of the simplest accessibility checks when landing on a website is to Tab through and see if the website works with keyboard. Let’s look at some major brands and see which ones pass this simple tes...
131
Reposted by Axel Rauschmayer (also on 🦣)
AriPerkkio @ariperkkio.dev · 27/08/2026
The @vitest/istanbuljs fork is now ready and will ship in the next version of Vitest. Compared to the original istanbuljs packages it's ESM-only, ships its own typings, drops unnecessary runtime deps, and moves Node 8→22, Babel 7→8 (lib-instrument), React→Preact (html-spa reporter), and more!
github.com
Release v1.0.0 · vitest-dev/istanbuljs
v1.0.0 First stable release of @vitest/istanbuljs, a fork of istanbuljs/istanbuljs maintained by the Vitest team. The fork starts at upstream commit 28ffdbc (see vitest-dev/vitest#9433 for backgrou...
24411
Axel Rauschmayer (also on 🦣) @dr-axel.de · 26/08/2026
Instead of our syncing being cloud-based, it would nice if it were P2P-based. Benefits: • More robust: Works even when the server is down, the internet is down (e.g. local connection problems) or no internet is available (in remote areas) • Can be used to back up the synchronized data.
010
Axel Rauschmayer (also on 🦣) @dr-axel.de · 23/08/2026
Even with all of Unicode’s warts, it still feels like magic being able to easily mix various scripts (Latin, Greek, Cyrillic, Chinese, etc.) within a single plain text file.
060
Axel Rauschmayer (also on 🦣) @dr-axel.de · 21/08/2026
Teaching beginners how to install npm packages: What’s the simplest way to stay safe-ish w.r.t. supply chain attacks? Switching from npm to pnpm should already help quite a bit because you get delayed updates and more.
550
Axel Rauschmayer (also on 🦣) @dr-axel.de · 21/08/2026
YouTube web app: • Right-click once to get YouTube’s context menu with interesting commands such as “Copy video URL at current time”. • Right-click twice to get the browser’s context menu. Many browsers now let you copy the current video frame.
010