Pooya Parsa

@pi0.io

Building opensource stuff ◦ @unjs.io ◦ @nitro.build ◦ @nuxt.com 🌱 github.com/pi0 ❌ x.com/_pi0_

Zigbee2MQTT is migrating to srvx to serve its static assets, dropping 22 transitive dependencies! It feels so good when libraries I work on every day power tools I use every day. ♥️

Bild

Humanity built: ✅ Fast machines: computers ✅ Fast communication: the internet ⏳ Fast intelligence: AI Even the thought that, in just a few years, I could do what I do today in the blink of an eye is fascinating!

mountx 0.0.2: - New transports: S3 API, 9P2000L, and NFSv4 - Lots of fixes and performance improvements With the new 9P and NFSv4 transports, we can now mount JavaScript virtual filesystems inside VMs such as QEMU and Firecracker! Link to the Docs below 👇

Bild
Pooya Parsa@pi0.io · last wk.

⛰️ mountx :: mount JavaScript as a real filesystem! Write ~6 lines of JS, get a real directory any process can read & write: editors, CLIs, AI agents. Rootless on Linux (FUSE) and macOS (NFSv3 with no kernel extensions). ~Pure JS, zero deps. mountx.vercel.app

⛰️ mountx :: mount JavaScript as a real filesystem! Write ~6 lines of JS, get a real directory any process can read & write: editors, CLIs, AI agents. Rootless on Linux (FUSE) and macOS (NFSv3 with no kernel extensions). ~Pure JS, zero deps. mountx.vercel.app

Bild

I’ve been exclusively coding in containers for a while now. no dev tools on my Laptop and PC. Today, I needed to test something and remembered that getutm.app can natively virtualize MacOS in MacOS. BTW Dropping this mini pkg shortly 😁

Bild

IPX 4 βeta is out! - Customizable parseURL - Faster etag revalidation - New unflatten and opacity operators - 16MB smaller than v3 - Security hardenings: symlink sandboxing, opt-in blockPrivateIPs, validated redirects, forced SVG sanitization, clamped dimensions, nosniff header, ...

BildBild

My new recipe for harder tasks: Prompt → slop → digested spec → clean implementation → reinforced spec 🔁

H3 v2 RC.26 is out! 🚀 - New onDispose hook - Faster setCookie; sessions now use SameSite=Lax - Faster precomposed middleware, cutting dispatch overhead by 9–18% - Return an EventStream directly as a response - 20+ bug fixes and security hardening improvements - Redesigned docs

Bild

Side quest of the day: 🧹mermaid-compact Mermaid is great for diagrams… until noticed this cute thing, pulls in 100+ dependencies (140 MB install), and Vite emits 100+ chunks from the mermaid.esm.min import 😅 No more! The whole thing now bundles into a single ~2.7 MB chunk.

Bild

srvx 0.12 landed 🎉 🔧 25+ fixes in the Node.js adapter ⚡ Precomputed middleware: +18-25% faster ⚡ Faster logger middleware: +34.3% faster 📁 Static middleware w/ conditional caching + streaming + stronge security hardenings Strongly recommend upgrading!

Working on something very exciting! I’ve rebuilt the whole thing from scratch three or four times already. It has now been extracted to a new RFC, and I’m aligning it with the specs all over again. Getting close to the final implementation. Wish me luck!

Today @kane.tw told me that unwasm has issues parsing some opcodes. It wasn’t the first time with this issue. Now the parser is replaced with a tiny one that extracts only what unwasm needs. A few more changes, the install size is down to 38.7kB/329kB from 417kB/2.44 MB 🚀

Bild

The latest version of VS Code (1.129) has a new experimental Modern UI (the one on the right) with rounded corners everywhere. I am enabling it in Coderaft to try! How do you like it?

Bild

New hook in H3: onDispose(event, cb). Fires when a request is truly done: response finished, client disconnected, or the stream errored. Works identically on all runtimes!

Bild

Did you know that even a simple console.log() per request can hugely hurt performance? The built-in logger in the next h3/srvx release batches writes and caches the timestamp (Intl), cutting logging overhead ~60–85%.

Bild

🍦 unjs/unctx v3: - Zero dependencies, with optional transformer - Faster transformers (thnx @thealexlichter.com) - Uses oxc parser for transform - AsyncLocalStorage doesn't needs to be polyfilled - Fixes memory leak with resources like timers in context

Bild

nowadays i work on multiple projects, in multiple branch worktrees, across multiple sessions all in parallel. zigpty has a built-in attention detection system that tells me when an agent is done. and i can close my laptop and pick up sessions from my phone while cooking!

BildBild

Nitro’s routeRules engine will be 9–110× faster in the next release (over 250x when new security guards kick-in). This is powered by a new complex pattern-overlapping analyzer in rou3, enabling route rules to be pre-merged at compile time. And that’s not all 😜

BildBild