---
title: Week 19
date: 2026-05-05
---

title: "Frontend & JS Digest — Week 17"date: 2026-04-21T18:00:00.000+01:00week_number: 17links:

tag: news  title: "Bun v1.3.12 — Headless Browser Automation"  url: https://bun.com/blog/bun-v1.3.12#bun-webview-headless-browser-automation  comment: "Bun 1.3.12 ships Bun.WebView—native headless browser automation with WebKit (macOS default) and Chrome (cross-platform) backends. Navigate, click, screenshot, evaluate JS; input is dispatched as OS-level events so sites see isTrusted: true. Real alternative to Playwright for basic scraping and testing."
tag: news  title: "TanStack RSC — React Server Components Done Differently"  url: https://tanstack.com/blog/react-server-components  comment: TanStack Start takes a different angle on RSC—treats server components as client-controlled data primitives you fetch, cache, and render like JSON, not server-owned architecture. Explicit server functions instead of implicit 'use server'. Looks like a saner model for those burned by Next.js opinions.
tag: news  title: "Encore — Rust Runtime for TypeScript"  url: https://encore.dev/blog/rust-runtime  comment: Encore moved infrastructure (routing, databases, pub/sub, tracing) out of Node's event loop into a Rust runtime—121K req/s, 2.3ms P99 latency, 9x Express throughput with 80% less latency. 67K lines of Rust handling the hot path; TypeScript still writes your handlers.
tag: library&tools  title: "react-infinite-scroll-component"  url: https://github.com/ankeetmaini/react-infinite-scroll-component  comment: Tiny React infinite scroll at 4.15 kB with pull-to-refresh and IntersectionObserver-based triggering; zero runtime deps. 3.1K stars, used by 109K+ projects—quiet workhorse.
tag: library&tools  title: "officeParser"  url: https://officeparser.harshankur.com/  comment: Node and browser library that parses DOCX, PPTX, XLSX, ODT, ODP, ODS, PDF, and RTF into a structured AST; extracts metadata, tables, lists, images with OCR, and Base64 embedded attachments. CLI and programmatic API, callback or async/await.
tag: library&tools  title: "FluidCAD"  url: https://fluidcad.io/  comment: Parametric 3D CAD platform where you design geometry in JavaScript—interactive prototyping, feature history navigation, STEP file export. Targets both CAD pros and developers who would rather write code than click through menus.
tag: library&tools  title: "phantom-ui"  url: https://aejkatappaja.github.io/phantom-ui/frameworks/react/  comment: Framework-agnostic skeleton loading library for React—drops in a phantom-ui component via JSX and auto-generates TypeScript types through a postinstall script. Handles the loading-to-rendered transition without manual wireframing.
tag: library&tools  title: "QR Genny"  url: https://tools.rmv.fyi/tools/qr-genny  comment: Browser QR generator with custom colors, shapes (rounded, dotted, calligraphic), logos, and error correction tuning. Supports URLs, email, phone, WiFi, SMS, and geo inputs; exports PNG or SVG. No backend, no account.
tag: library&tools  title: "micro-ml"  url: https://github.com/AdamPerlinski/micro-ml  comment: 16 ML algorithms (regression, classification, clustering, smoothing, forecasting) in ~56KB gzipped, built with Rust/WASM and zero deps. For web apps that need ML without dragging in TensorFlow.js.
tag: article  title: "Parse, Don't Validate — TypeScript Edition"  url: https://cekrem.github.io/posts/parse-dont-validate-typescript/  comment: Applies the classic "parse, don't validate" idea to TypeScript using branded types and discriminated union Result types—validate at boundaries, encode the proof in the type system, and let the compiler block unvalidated data from reaching trusted code. Kills scattered defensive checks.
tag: article  title: "The Uphill Climb of Mamking Diff Lines Performant"  url: https://github.blog/engineering/architecture-optimization/the-uphill-climb-of-making-diff-lines-performant/  comment: GitHub cut pull request diff INP by ~78% by reducing React components per line from 8 to 2, trimming DOM nodes by 10%, and adding window virtualization—10x less JS heap on massive PRs. Refreshing to see "render less" beat "render smarter" again.
tag: article  title: "CSS position: sticky Per-Axis"  url: https://www.bram.us/2026/03/30/css-sticky-per-axis/  comment: "position: sticky can now track a different scrolling container per axis—sticky table headers and sticky first columns simultaneously, no JS, no duplicated markup. Long-standing data-table pain point finally solved at the spec level."
tag: article  title: "Agentic Engine Optimization"  url: https://addyosmani.com/blog/agentic-engine-optimization/  comment: Addy Osmani on structuring docs so coding agents can actually consume them—llms.txt indexes, skill.md capability files, token counting per page, separate agent-traffic analytics, and robots.txt audits so you don't accidentally block Claude or Cursor. SEO's younger, weirder sibling.
tag: article  title: "Squash and Stretch in UI Animation"  url: https://www.joshwcomeau.com/animation/squash-and-stretch/  comment: Josh Comeau applies Disney's squash-and-stretch principle to SVG icons—CSS transitions on the d attribute (79% browser support) or Motion library with spring physics for that rubbery elastic feel. Key insight—subtlety wins, and event-based triggers feel better than state-based ones.
tag: article  title: "SVG Filters Guide — Getting Started"  url: https://frontendmasters.com/blog/svg-filters-guide-getting-started-with-the-basics/  comment: Frontend Masters beginner guide to SVG filters—filter containers, fe-prefixed primitives, filter regions, and primitive input/output chaining. If you've avoided <filter> because of the cryptic element names, this is the entry point.
tag: other  title: "windows95"  url: https://github.com/felixrieseberg/windows95  comment: Windows 95 running in an Electron app on macOS, Linux, and Windows via the v86 virtualization engine. 24K+ stars. The author admits it "should have been a native app"—the most honest Electron take I've seen.notes: |TL;DR: Bun ships headless browser automation, TanStack rethinks RSC as client-controlled data, and Encore's Rust runtime hits 9x Express throughput. Plus position: sticky per-axis in CSS, parsing over validating in TypeScript, and documentation for AI agents as the new SEO.


My favorite from this week is the micro-ml, but I'm still not sure how can I use it, but the idea of having a ML library in browser sounds really interesting.

