Frontend Weekly Digest #417 (2–9 June 2025)
Web Dev
• How to Create Responsive and SEO-friendly WebGL Text
• Complete Monorepo Guide: pnpm + Workspace + Changesets (2025)
• Master Image Processing in Node.js Using Sharp for Fast Web Apps
• HTMX served from static as a SPA?
• Using Local Storage in OutSystems Web Applications
- Tools
• Storybook 9
• Improving frontend workflows with in-browser database tools - Accessibility
• Where to Put Focus When Opening a Modal Dialog - Demo
• Building a Real-Time Dithering Shader
• Smashing Animations Part 4: Optimising SVGs
• Getting Creative With HTML Dialog
• Elastic Grid Scroll: Creating Lag-Based Layout Animations with GSAP ScrollSmoother
CSS
• Better CSS Shapes Using shape() — Part 3: Curves
• State of CSS 2025
• Exploring the CSS contrast-color() Function… a Second Time
• Modern CSS carousels: No JavaScript required
• When to use Flexbox and when to use CSS Grid
• Using CSS breakpoints for fluid, future-proof layouts
• An Auto-Filling CSS Grid With Max Columns of a Minimum Size
• Printing the web: making webpages look good on paper
JavaScripts
• firstChild can be white space
• `document.currentScript` is more useful than I thought.
• JavaScript promises: 4 gotchas and how to avoid them
- React
• Towards React Server Components in Clojure, Part 3
• How Imports Work in RSC
• React forwardRef explained: Usage, alternatives, and React 19 update
• How to consume APIs in React using Fetch and Async/Await
• How to use the useEffect hook in React: A complete guide