Tech is political: The people under attack in Palestine 🇵🇸, Iran 🇮🇷, and Lebanon 🇱🇧 are people like us. They’re our brothers and sisters, too. Read up on their history, scrutinize what you’re told, and demand that they be respected and included. Hide

Frontend Dogma

News and Tools for Web Developers, 1990s to Now (3)

→ Stay up-to-date on all topics by various RSS feeds (main feed with exclusive news: only $1/month), on Mastodon, and on Bluesky

Entry (Sources) and TopicsDate#
How I Setup Production-Grade Deployment for My (Somewhat) Vibe-Coded App (mar/fro)20,515
deploying, aws
Web AI: Everything You Need to Know About On-Device AI for the Web20,514
ai
Stop Using “/init” for AGENTS.md (add)20,513
ai, configuration, agentsmd
AI as Art Director: Can Machines Develop Taste? (web)20,512
ai, design, aesthetics, art-direction
Breakpoints (css)20,511
design, accessibility, mobile, breakpoints, css
How Many AIs Does It Take to Read a PDF? (jos/ver)20,510
ai, pdf, tooling
A Designer’s Guide to Eco-Friendly Interfaces (sma)20,509
guides, design, user-experience, sustainability
Design Systems Are Platform Problems, Not Feature Problems (sha)20,508
design-systems
Virtual Scroll-Driven 3D Scenes (fro)20,507
css, scrolling, animations
“aria-haspopup” Might Not Do What You Think It Does (mat)20,506
html, aria, attributes, navigation, accessibility
On Software Quality (nic/pxl)20,505
quality, apple
Loading Smarter: SVG vs. Raster Loaders in Modern Web Design (hol/css)20,504
images, svg, progress-indicators, performance
How to Publish to npm From GitHub Actions (bah)20,503
how-tos, npm, github-actions
Dictionary Compression Is Finally Here, and It’s Ridiculously Good (pim/htt)20,502
compression, performance, javascript
From “instanceof” to “Error.isError”: Safer Error Checking in JavaScript20,501
javascript, errors
Upskilling in the AI Age (dac)20,500
ai, tooling, learning
Getting Started With the Vercel AI SDK in Node.js20,499
introductions, nodejs, ai, vercel
Matt May Speaks (mat+)20,498
videos, interviews, accessibility, html, standards
Sprites on the Web (jos)20,497
css, images, sprites, techniques
Wasm vs. JavaScript: Who Wins at a Million Rows?20,496
webassembly, javascript, comparisons, performance
The Problem With HTML Reset Buttons (ada)20,495
html, buttons, user-experience
AI Is Locking People Out—at Scale (kc)20,494
accessibility, ai, studies, research, metrics
Native HTML Components Don’t Guarantee Good UX (ada)20,493
html, components, user-experience
Standard HTML Video and Audio Lazy-Loading Is Coming (sco)20,492
html, multimedia, lazy-loading, standards, performance
ACCESSIBILITY.md (mgi)20,491
accessibility, documentation
Why AI Is Exposing Design’s Craft Crisis20,490
ai, design, craft, figma, link-lists
My Malware Story Gets Stolen; Yet Another Argument for the IndieWeb (bre)20,489
malware, indieweb, licensing
Big Tech Still Dreams of Mass Surveillance—Now People Are Pushing Back (tro/sal)20,488
privacy, amazon, google, ai, politics
What Is the IndieWeb? (bre)20,487
indieweb, terminology, concepts
“Made in EU”—It Was Harder Than I Thought20,486
privacy, hosting, tooling, tech-stacks
Everything You Never Wanted to Know About “visually-hidden” (dbu)20,485
html, css, hiding, accessibility
Lil’ Fun Langs (sur)20,484
programming, overviews, link-lists
Git Is the New Code (nec)20,483
ai, git, command-line, code-reviews
The Software Development Lifecycle Is Dead (bor)20,482
processes, ai, ci-cd
Weird Issues With CSS Calculations in Safari 26.2 (cit)20,481
css, functions, safari, apple, browsers
Potentially Coming to a Browser “:near()” You (dxn/css)20,480
css, functions
WordPress 7.0 Beta 1 (wor)20,479
release-notes, wordpress
An Official* Logo for HTML (zac)20,478
html
How to Cut LLM Token Costs and Speed Up AI Apps20,477
how-tos, ai, token-optimization, economics
A Considered Approach to Generative AI in Front-End Development (cle)20,476
ai, processes
Notes on Relying on the ARIA Authoring Practices Guide (ste)20,475
aria, accessibility, html
Design Systems Can’t Automate Away All of Your Accessibility Considerations (eri/zer)20,474
design-systems, components, automation, accessibility, aria
Using the Browser’s “<canvas>” for Data Compression20,473
canvas, compression
A Web Revival: The Internet Didn’t Die, You’re Just Not on It20,472
videos, indieweb, web
An In-Depth Guide to Customising Lists With CSS (ric/pic)20,471
guides, css, lists
8 Things You Didn’t Know About Code Mode (bla)20,470
ai
Fastest Frontend Tooling for Humans and AI20,469
tech-stacks, tooling, typescript, developer-experience, optimization
Suffering From Bugs: How I Almost Deleted My Entire Project20,468
bugs, lessons
“border-shape”: The Future of the Non-Rectangular Web (una)20,467
css, shapes, borders
Vitest vs. Jest 2026: The Migration Guide With Real Benchmarks20,466
guides, migrating, vitest, jest, comparisons
Tailwind CSS v4: Container Queries and the Death of Media Queries20,465
tailwind, container-queries, media-queries, css
Claude Sonnet 4.6 vs. GPT-5: The 2026 Developer Benchmark20,464
claude, anthropic, openai, ai, comparisons, metrics, programming, documentation
Sometimes the Best Accessibility Fix Is a Usability Fix20,463
accessibility, usability
When Accessibility Demand Letters Land on Your Desk: A Framework for Strategic Response (dec)20,462
accessibility, strategies
Why Separate Guest and Logged in States Create Accessibility Barriers20,461
accessibility, authentication
Why You Need to Close Open Objects When Users Navigate Away20,460
accessibility, wcag
AI Is Giving Tech Companies Power That Once Belonged to Governments (res)20,459
ai, economics
5 CSS Fouls That I See Way Too Often (kev)20,458
videos, css
Distinguishing “Components” and “Utilities” in Tailwind (zel/css)20,457
tailwind, terminology
Analyst Reactions: How AI Is Reshaping Engineering Organizations20,456
ai, engineering-management
Editor Improvements: Smooth Caret Animation and New Selection Behavior (jet)20,455
code-editors, jetbrains
Europeans Are Dangerously Reliant on US Tech—Now Is a Good Time to Build Our Own (joh/the)20,454
economics, politics, google, microsoft, amazon
Designing for Transparent Screens20,453
design, transparency+opacity, readability
Preserving the Web Is Not the Problem—Losing It Is (tec)20,452
web, ai
Web Rewind20,451
websites, web, history
Frontend Memory Leaks: A 500-Repository Static Analysis and Five-Scenario Benchmark Study20,450
memory, react, vuejs, angular, studies
From Random Chunks to Real Code—Wiring Up Next.js Source Maps in Sentry (get)20,449
nextjs, source-maps
Design Docs Considered Harmful20,448
documentation, software-design
The Future of Design Is Code and Canvas (zoi/fig)20,447
figma, design, outlooks
Building Typographic Scales in CSS With “:heading()”, “sibling-index()”, and “pow()” (stu)20,446
css, functions, math, typography
Igalia’s Eric Meyer and Ujjwal Sharma Chat With Designer, CSS Developer, and Illustrator Lynn Fisher (lyn+/iga)20,445
podcasts, interviews, css, design
Web Development Is More Than Frontend and Backend (Here’s What Actually Matters)20,444
programming, career
Selectors Level 5 (fan+/w3c)20,443
css, selectors, standards
5 Source Map Best Practices for Frontend Production Deployments (ele/des)20,442
guest-posts, source-maps, javascript, best-practices
Europe Is Ready to Ditch US Tech for Private Alternatives (pro)20,441
tooling, privacy, security, metrics
We Cut Node.js’ Memory in Half (mco/pla)20,440
nodejs, v8, javascript, memory, metrics
Interop 2026 (geo/css)20,439
interoperability, web-platform, browsers, support, link-lists
Spiral Scrollytelling in CSS With “sibling-index()” (css)20,438
css, functions, scrolling, gsap
Agentic UX: 7 Principles for Designing Systems With Agents20,437
ai-agents, ai, design, principles
The Hidden Cost of AI Prototypes That Are Made to Die20,436
prototyping, ai, design, product-management
Why We Hate AI (fal)20,435
ai
Angular Bindings: What Are They and How Do I Use Them? (ato)20,434
angular
Anchored Menus and a Lesson in Scoping (chr/fro)20,433
css, anchor-positioning, scope, lessons
Here’s How to Instruct a LLM to Reference the ARIA Authoring Practices Guide (eri)20,432
how-tos, ai, aria, accessibility
How “Liquid Design” Broke the iPhone and Forced Apple’s Great Reset (web)20,431
design, usability, readability, liquid-glass, apple
Why It’s Important to Manually Test for Accessibility20,430
accessibility, testing
Style Headings Using the CSS “:heading” Pseudo-Class (stu)20,429
headings, css, selectors
Why Your CEO Acts Like a Clown: The Tribal Myths of Leadership20,428
leadership, culture, engineering-management
AI Is Accidentally Making Documentation More Accessible (ger)20,427
ai, accessibility, documentation
Why WebAIM’s Report Only Found 6 Issues on a Million Pages20,426
videos, accessibility, webaim
We Scanned 250 Node.js Repos for Blocking I/O: 76% Had It—and the Benchmarks Explain Why That Matters20,425
nodejs, file-handling, performance, metrics
How Fast Is Fast Enough? Rethinking Web Performance in Pragmagical Terms (tam/spe)20,424
performance, user-experience, concepts
Justifying “text-wrap: pretty”20,423
css, typography
Quick and Dirty Linting (sto)20,422
linting, typescript, javascript, biome
A Programmer’s Loss of a Social Identity (rat)20,421
programming, career, community
JS-Heavy Approaches Are Not Compatible With Long-Term Performance Goals (ser)20,420
javascript, frameworks, performance, prioritization
Fun With TypeScript Generics (ada/fro)20,419
typescript, generics
Evaluating AGENTS.md: Are Repository-Level Context Files Helpful for Coding Agents? (ves+)20,418
studies, research, ai, ai-agents, agentsmd
Are We Having the Wrong AI Dreams? (jet)20,417
ai, outlooks
The EU Moves to Kill Infinite Scrolling (egr)20,416
social-media, scrolling, legal
How to Debug the “@starting-style” At-Rule in Polypane (pol)20,415
how-tos, debugging, css, animations, polypane, browsers
Interop 2026: Continuing to Improve the Web for Developers (rac)20,414
interoperability, web-platform, browsers, support
Virtual Scrolling for Billions of Rows—Techniques From HighTable (sev)20,413
html, tables, scrolling, performance, react
State of React 2025 [Results] (sac/dev)20,412
surveys, metrics, react
You Might Not Need “role="presentation"” (stv/pic)20,411
html, aria, accessibility
Mastering Dialog Accessibility20,410
accessibility, modals, html, aria
Launching Interop 2026 (jaf/moz)20,409
interoperability, web-platform, browsers, support
The 80% Job: How Design Leads Are Using AI—and It’s Not About Mockups20,408
design, ai, prototyping, communication, leadership, product-management, link-lists
Accessibility Contractors Have Their Place-but It’s Not Everywhere20,407
accessibility, business-relations, processes
The Beautiful Web (j9t)20,406
web, indieweb
Radix UI vs. Base UI (sha)20,405
react, libraries, radix, comparisons
What It Really Costs to Run a WordPress Website in 202620,404
wordpress, economics
Life After Figma Is Coming (and It Will Be Glorious) (jon)20,403
design, ai, tooling, figma
Designing for Agentic AI: Practical UX Patterns for Control, Consent, and Accountability (sma)20,402
design, user-experience, design-patterns, ai-agents, ai
ChatGPT Has 12% of Google’s Search Volume but Google Sends 190× More Traffic to Websites (ahr)20,401
traffic, search, chatgpt, google, metrics
How to Create a CSS-Only Elastic Text Effect (css/fro)20,400
how-tos, css, effects
Re-Creating a Pantone Color Deck in CSS (sto)20,399
css
Announcing TypeScript 6.0 Beta (dan/typ)20,398
typescript
Saying No to Good Ideas (kvl)20,397
processes, communication
The Natural Design Process20,396
design, processes
Container Timing: Measuring Web Components Performance (jda/iga)20,395
performance, web-components, chromium
You Know What? Just Don’t Split Words Into Letters (aar)20,394
accessibility, html, screen-readers, support
Does Your Navigation Need an ARIA Menu? Probably Not (pop)20,393
accessibility, navigation, aria, keyboard-navigation
Building an Endless Procedural Snake With Three.js and WebGL (suj/cod)20,392
threejs, webgl, javascript
Shades of Halftone (max)20,391
effects, halftone
Polypane 28: Project Improvements, Elements Panel Updates, and Chromium 146 (pol)20,390
release-notes, polypane, browsers
The Software Sovereignty Scale (dri)20,389
foss, licensing, legal
It’s About to Get a Lot Easier for Your JavaScript to Clean Up After Itself (wil/pic)20,388
javascript, garbage-collection
The 2026 Frontend Dogma Survey (fro)20,387
frontend-dogma, surveys
Designing Useful Ads20,386
design, monetization, ai
Emotional Design: Let’s Design for Silence20,385
design
Fast by Default (den)20,384
performance, architecture, tooling, code-reviews, processes
WebSocket Penetration Testing: A Complete Guide to CSWSH20,383
guides, security, websockets, testing
Webspace Invaders (mat)20,382
ai, traffic
“Design Courage”20,381
design
Modern CSS Code Snippets20,380
websites, css, examples, comparisons
Design Is Dead, It’s All Evolution Now (ily)20,379
design, processes
Background Patterns With CSS “corner-radius” (pre/fro)20,378
css, backgrounds, effects, examples
Vite, Rust, and the Future of JavaScript Tooling (eva+/bet)20,377
videos, interviews, vuejs, rust, javascript, oxc, bundling, tooling, ai
Trying to Make the Perfect Pie Chart in CSS (mon/css)20,376
css, html
AI Fatigue Is Real and Nobody Talks About It20,375
ai, code-reviews
Large Tech Companies Don’t Need Heroes (sea)20,374
processes, engineering-management, career
Underlining Links With CSS (stu)20,373
css, links
Definitive Guide to Multi-Threaded Rendering on the Web (hac)20,372
guides, dom, rendering
Why Your Brain Rebels Against Redesigns—Even Good Ones20,371
design, redesigning, link-lists
The Return of the Intuitive Designer in the Age of AI20,370
design, user-experience, ai
Why JavaScript Needs Structured Concurrency20,369
javascript, concurrency, asynchronicity
Interop 2025: A Year of Convergence (stu/web)20,368
interoperability, web-platform, browsers, retrospectives, metrics
How Generative AI Is Redefining Brand Identity Systems20,367
ai, branding, design
How (and Why) to Stop Users From Selecting Text on Your Website20,366
css
The Browser Hates Surprises (fro)20,365
browsers, performance
The CSS Selection (ven/pro)20,364
css, metrics, studies, research
What to Expect in Angular 2220,363
angular
A New Meta Tag for Respecting Text Scaling on Mobile (mat)20,362
accessibility, metadata, scaling
Your Design System Needs an Enforcer (nng)20,361
design-systems, processes
Minifier Benchmarks (j9t)20,360
minification, tooling, metrics, comparisons, swc, html-minifier, htmlnano
CSS “@scope”: An Alternative to Naming Conventions and Heavy Abstractions (sma)20,359
css, scope, naming
Git’s Magic Files (and)20,358
git, configuration
How to Use the “Auto” Value With “clamp()” (css)20,357
how-tos, css, functions
Accessibility Conformance Testing (ACT) Rules Format 1.1 (wil+/w3c)20,356
accessibility, compliance, testing, documentation
Measuring SVG Rendering Time (sto)20,355
svg, png, images, rendering, performance, web-vitals, metrics
How to Write Alt Text for News (sta/the)20,354
how-tos, alt-text, accessibility, images
Why Designers Secretly Love Constraints (Even When We Complain About Them) (web)20,353
design
Quick Tip: Do Not Replicate OS Behavior (nat)20,352
accessibility, tips-and-tricks
What’s New in ViteLand: January 2026 Recap (man/voi)20,351
release-notes, vite, vitest, rolldown, oxc
Clarity Is Not the Enemy of Depth (the)20,350
content, writing, accessibility
How to Improve Your HTML Game (j9t)20,349
how-tos, html, conformance, learning, career
You Probably Shouldn’t Be Annotating Focus Order (eri)20,348
accessibility, focus, forms, annotations
[Webpack] Roadmap 2026 (eve)20,347
webpack
AI Will Eliminate the Need for Accessibility Professionals? I Think Not20,346
ai, accessibility, testing, career
Stop Installing Libraries: 10 Browser APIs That Already Solve Your Problems20,345
javascript, libraries, apis, web-platform
Introduction to the New HTML Element “<geolocation>” (mat)20,344
introductions, html, geolocation
CSS Properties That Solve Annoying Problems (kev)20,343
videos, css
From Basic Adoption to Meaningful Measurement: How Design System Metrics Evolve (zer)20,342
design-systems
Building Bulletproof React Components20,341
react, components
How to Shoot a Screen Using a Board of Keys (mwi)20,340
screenshots, keyboard-shortcuts, history, apple
Introducing Deno Sandbox (tin/den)20,339
deno
State of JavaScript 2025 [Results] (sac/dev)20,338
surveys, metrics, javascript
Deno Deploy Is Generally Available (lca+/den)20,337
deno
Combobox vs. Multiselect vs. Listbox: How to Choose the Right One (vit/sma)20,336
how-tos, forms, design-patterns, comparisons
Nice Select (arg)20,335
forms, css
How Eleventy Survived: Funding, Growth, and Open Source Reality (zac+/fon)20,334
podcasts, interviews, eleventy, foss
A Percise Parser (rem)20,333
javascript, parsing
Elastic/Bouncy Text Effect (css)20,332
css, effects
Accessible Inline Collapsible (eri)20,331
accessibility, html, disclosure-widgets
Accessibility Progress and Healthy Engineering Teams (hbu)20,330
accessibility, technical-debt, web-platform, prioritization
Node.js Path Traversal: Prevention and Security Guide (loi)20,329
guides, nodejs, security
Implementing the Temporal Proposal in JavaScriptCore (you/iga)20,328
javascriptcore, javascript-engines, time
Accessible Design Is Digital Infrastructure (ann)20,327
accessibility, design
What’s Missing From the Web Platform? (wes+/syn)20,326
podcasts, web-platform, wish-lists
Performance-Optimized Video Embeds With Zero JavaScript (stf/fro)20,325
multimedia, performance
What Is JPEG XL: Do We Really Need Another Image Format? (aar/deb)20,324
jpeg-xl, images, quality, performance, metrics
Release Notes for Safari Technology Preview 236 (jon/web)20,323
release-notes, safari, apple, browsers
Building an RSS Aggregator With Astro (ray)20,322
astro, rss, syndication, functionality
Explicit Resource Management in JavaScript20,321
javascript
Stop Asking “Is This on Brand?”—It’s Killing Your Creativity (web)20,320
design, branding, creativity
Limiting Work in Progress Is a Superpower20,319
project-management, processes, productivity, agile, scrum
HTML Minifier Next 5, a Quick Upgrade Guide (j9t)20,318
guides, html-minifier
Selfish AI (cre)20,317
ai
The Indie Web Is Not Defined by Its Enemies (khu)20,316
indieweb, ai
Tim Cook Sold Apple’s Soul (kev)20,315
apple
Google Helped Israeli Military Contractor With AI, Whistleblower Alleges (was)20,314
google, ai, ethics, privacy
When Design Stops Asking Why and Starts Asking, “Can AI Do It?”20,313
design, ai, processes, quality
The Too Early Breakpoint (sha)20,312
css, layout, breakpoints
Repeatable Form Fields Made Simple (aar)20,311
forms, html, web-components
A Broken Heart (api)20,310
performance, fonts, emoji
My Opinionated ESLint Setup for Vue Projects (ale)20,309
eslint, configuration, vuejs
Tickering With Node.js Core on ARM64 Windows (joy)20,308
nodejs, building, windows, microsoft
New to the Web Platform in January (rac)20,307
release-notes, web-platform, browsers, firefox, mozilla, chrome, google
“WCAG Is Difficult to Read, Don’t Read It” Is a Self-Fulfilling Prophecy (yat)20,306
wcag, standards, accessibility
AI Agents Explained (tre)20,305
ai-agents, ai
Practical Use of AI Coding Tools for the Responsible Developer (ska/sma)20,304
ai, tooling, prompting
Announcing Rspress 2.020,303
release-notes
How the Same Content Always Has Multiple Different Versions20,302
accessibility, content, comparisons
React’s “ViewTransition” Element (chr/fro)20,301
react, view-transitions
Understanding Hydration in Frontend Frameworks: Definition, Challenges, and Optimization Strategies (ele/des)20,300
guest-posts, frameworks, hydration, optimization, concepts, strategies
Vibe Prototyping Is a Double-Edged Sword (edd)20,299
prototyping, vibe-coding, ai, design
The Design System Paradox: How Abstraction Can Hollow Out Quality (pjo/zer)20,298
design-systems, quality, training
How to Make an HTTP Request in Node.js (loi)20,297
how-tos, nodejs, http
Is Learning CSS a Waste of Time in 2026?20,296
css, learning, career, discussions
OpenJS Foundation Security Program: Annual Report 2025 (ope)20,295
openjs, security
Cryptography Usage in Web Standards (w3c)20,294
standards, cryptography, security
llms.txt and robots.txt: Optimizing for AI Bots and Answer Engines20,293
ai, optimization, aiso, robotstxt, llmstxt, comparisons
Why I Use Kirby CMS (jon)20,292
kirby
Making Interesting Borders With CSS “corner-shape” (cas)20,291
css, borders
How Rolldown Works: High-Performance Code Splitting With Bitset Logic (atr)20,290
rolldown, bundling, code-splitting, performance
Why I Don’t Call Myself an Accessibility Expert20,289
accessibility, career
How an Accessibility Designer Adds Keyboard Shortcuts to a Web App (eri)20,288
web-apps, keyboard-shortcuts, accessibility
The Next Decade of UX: Why Psychology Matters More Than Ever (tbf/nng)20,287
videos, interviews, user-experience, design, outlooks
How to Design Great Alt Text: An Introduction (deq)20,286
how-tos, introductions, alt-text, images, accessibility
How to Style the New “::search-text” and Other Highlight-y Pseudo-Elements (dxn/css)20,285
how-tos, css, selectors
Introducing ReliCSS: A Tool for Front-End Archaeology (stu)20,284
introductions, tooling, css, auditing
AI’s Text-Trap: Moving Towards a More Interactive Future20,283
ai, interaction-design, user-experience
Are We Doing UX for AI the Right Way? (cxo)20,282
user-experience, design, conversational-design, ai, link-lists
7 Learnings From Anders Hejlsberg: The Architect Behind C# and TypeScript20,281
lessons, scalability, typescript, foss, ai, collaboration
A Year of Creator Wins: Highlights From the JetBrains Content Creators Program 2025 (jet)20,280
jetbrains, community
How AI Is Redefining the Way We Find Content (cle)20,279
ai, crawling, search, content, seo
Some Notes on Starting to Use Django (b0r)20,278
django
More Invoker Commands, and More Reasons Not to Use JavaScript Please (paw)20,277
html, examples
Unstacking CSS Stacking Contexts (sma)20,276
css, positioning
Try Text Scaling Support in Chrome Canary (jos)20,275
chrome, google, browsers, scaling, accessibility
We’re Creating a Knowledge Collapse and No One’s Talking About It20,274
ai, documentation, learning, career
Solving Shrinkwrap: New Experimental Technique (kiz)20,273
css, techniques
On the Need for Neutral Maintained Minifier Metrics (j9t)20,272
minification, tooling, html-minifier, htmlnano
A Security Checklist for Your React and Next.js Apps20,271
security, react, nextjs
How Web Performance Impacts User Experience (mat/deb)20,270
performance, user-experience, web-vitals, metrics
Claude Code for Designers: A Practical Guide20,269
guides, design, claude, anthropic, ai
Design Systems Checklist (tyc)20,268
design-systems, checklists
9 Reasons to Choose Sketch in 2026 (fre/ske)20,267
sketch
Supporting Open Source in 2026: Why It Matters More Than Ever ($50,000) (mar/fro)20,266
foss, web-platform
Drawing Connections With CSS Anchor Positioning20,265
css, anchor-positioning
Improving Single Executable Application Building for Node.js (joy)20,264
nodejs
Density vs. Clarity: The Core Tension in Modern UI Design (web)20,263
design, information-design, minimalism, comparisons, figma
Why the Future of Design Is Less Flash and More Thought20,262
design, outlooks
There Is No Need to Trap Focus on a “dialog” Element (zel/css)20,261
modals, focus, accessibility
SPAs Are a Performance Dead End (yeg)20,260
single-page-apps, html, performance
How to Implement Rate Limiting in nginx (naw/one)20,259
how-tos, servers, nginx, rate-limiting, security
Porting 100k Lines From TypeScript to Rust Using Claude Code in a Month (vje)20,258
migrating, typescript, rust, claude, anthropic, ai
Vibe Prototyping Isn’t Solving Any Problems—but It’s Creating Many New Ones (pav)20,257
prototyping, design, ai, vibe-coding
Using Maturity Models to Build Accessibility That Lasts (ted)20,256
accessibility
npmx (dan/npm)20,255
websites, npmx, npm, packages
Figma Slots for Repeating Items (nat)20,254
figma, components
How to Use Font Ligatures20,253
how-tos, typography, fonts, tooling, adobe, figma, microsoft, css
Software Design Principles That Matter20,252
software-design, principles, examples
6 Ways to Set Better Content Accessibility Goals in 202620,251
accessibility, processes
Anchor Interpolated Morph (AIM) (arg)20,250
css, animations, techniques
Responsive Hexagon Grid Using Modern CSS (css/css)20,249
css, functions, math, responsive-design
The Context Collapse Problem20,248
ai, documentation
CSS Scope and Mixins (chr+/odd)20,247
videos, interviews, css, scope, mixins
Do We All See the Same Colors? (tba)20,246
colors, color-blindness, accessibility
Names Are Hard but They Don’t Have to Be (col)20,245
internationalization, naming, validation
Handling Breaking Changes in a Design System Without Causing Chaos (sha/zer)20,244
design-systems, maintenance, semver, communication
Understanding the Fundamentals of CSS Layout (pol)20,243
fundamentals, css, layout, grids, flexbox, positioning
CSS Optical Illusions (alv)20,242
css, effects, examples
Claude’s New Constitution (ant)20,241
claude, anthropic, ai
Why Webflow Isn’t the Future—Yet (web)20,240
webflow, low-and-no-code
10 Digital Accessibility Predictions for 2026 (ons)20,239
accessibility, outlooks, wcag, career, ai, legal, assistive-tech
When Will CSS Grid Lanes Arrive? How Long Until We Can Use It? (jen/web)20,238
css, grids, masonry, layout
CTA Hierarchy in the Wild (jim)20,237
user-experience, buttons, youtube
10 Tips for Effective User Experience Evaluation20,236
user-experience, usability, content, design, testing, tips-and-tricks
Barriers From Links With ARIA (aar)20,235
accessibility, links, html, aria
The Conditionally Open Web (cor)20,234
open-web
What Makes Generated UI Worth Keeping?20,233
design, ai, branding, tooling
How to Diagnose Lighthouse Score Discrepancies Between Tools (mat/deb)20,232
how-tos, performance, lighthouse, google, tooling
Floating Action Buttons Are Bad, and What to Do Instead (eri)20,231
buttons, usability, material-design, google
Mobile App Accessibility Under EN 301 549 v4.1.020,230
accessibility, mobile, standards
Why Light-Weight Websites May One Day Save Your Life (mah)20,229
performance, accessibility, print, frameworks
Accessibility 101 and Core Concepts (kno)20,228
videos, accessibility, introductions, concepts
The Accessibility Manager Moment No One Warns You About20,227
accessibility, leadership, legal, communication
Securing npm Is Table Stakes (nza+/cha)20,226
podcasts, interviews, npm, security, ai
Demystifying Screen Reader Use for Manual Testing: Deneb Pulsipher and Kosi Asabere20,225
videos, accessibility, testing, screen-readers
CSS in 2026: The New Features Reshaping Frontend Development (log)20,224
css, functions
How to Favicon in 2026: Three Files That Fit Most Needs (sit/evi)20,223
how-tos, images, favicons
I Learned the First Rule of ARIA the Hard Way (css)20,222
accessibility, aria, semantics, html
Designing Beyond the Happy Path in Design Systems (ste/zer)20,221
design-systems, design
Developing Trustworthy Information (jma)20,220
writing, content, ai
Faking a Fieldset-Legend (tyl/clo)20,219
html, forms, css
Node.js 16 to 25 Performance Benchmarks20,218
nodejs, performance, metrics, comparisons
Lowering the Specificity of Multiple Rules at Once (mat)20,217
css, cascade
Inside Turbopack: Building Faster by Building Less (she+)20,216
turbopack, performance
A Brief History of Programming… (fir)20,215
videos, programming, history
Animating Responsive Grid Layout Transitions With GSAP Flip (cod)20,214
css, grids, layout, animations, gsap, plugins
Rethinking “Pixel Perfect” Web Design (ami/sma)20,213
design, quality
View Transitions and Playing Video (chr/fro)20,212
javascript, view-transitions, multimedia
AI’s Missing Ingredient (cwo)20,211
ai, vibe-coding, creativity, design
Some Thoughts on the Open Web (mno)20,210
open-web, web
Design Tokens With Confidence (luk)20,209
design-tokens, json, css
What Figma Got Wrong About Design Systems (web)20,208
figma, design-systems
The State of WebAssembly—2025 and 2026 (uno)20,207
webassembly, retrospectives, outlooks
What Design Leaders Must Unlearn to Lead in an AI-First World20,206
design, leadership, ai
“Code Only” Props in Figma (nat)20,205
figma, props
Design in Code, Get Praise (ada)20,204
design, processes, communication
How to Build a WordPress Block Theme20,203
how-tos, wordpress, theming
Vercel vs. Netlify vs. Cloudflare: Serverless Cold Starts Compared20,202
vercel, netlify, cloudflare, serverless, comparisons, metrics
jQuery 4.0.0 (tim/jqu)20,201
jquery, release-notes
AdonisJS v7 Is Feature-Complete and Entering Final Validation (vir/ado)20,200
release-notes, adonisjs
ASCII Characters Are Not Pixels: A Deep Dive Into ASCII Rendering20,199
deep-dives, ascii, rendering
The Astro Technology Company Joins Cloudflare20,198
astro, cloudflare
Beyond Compliance: 5 Surprising Ways the UVAC Framework Turns Accessibility Into a Brand Powerhouse (wil)20,197
accessibility, processes, concepts
When Design Kills Usability—Meet the Custom Cursor (mal)20,196
videos, design, usability, cursors
Chrome 145 Adds Experimental Support for Vertical Tabs (bra)20,195
chrome, google, browsers
Better Defaults for Popovers (mat)20,194
pop-overs, css, resets
State of UX 2026: Design Deeper to Differentiate (nng)20,193
user-experience, design, outlooks, career, ai
PWA (htt)20,192
web-almanac, studies, research, metrics, progressive-web-apps, web-apps, web-workers
Ecommerce (htt)20,191
web-almanac, studies, research, metrics, ecommerce, tooling, performance, web-vitals, lighthouse
CMS (htt)20,190
web-almanac, studies, research, metrics, content-management, tooling, wordpress, user-experience, performance, web-vitals, lighthouse, apis
Security (vik+/htt)20,189
web-almanac, studies, research, metrics, security, tls, certificates, cookies, csp, http-headers, apis, sanitization, configuration
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability (ric)20,188
tailwind, comparisons, css-in-js, maintainability, css, javascript
Usability Heuristics and Competition in Games20,187
usability, heuristics, design, aesthetics
The Incredible Overcomplexity of the Shadcn Radio Button (pau)20,186
html, forms, shadcn, complexity
On Coding Agents and the Future of Design (jef)20,185
ai, ai-agents, design, outlooks
Software as Fast Fashion (tan)20,184
programming, ai, sustainability, economics
Fonts (htt)20,183
web-almanac, studies, research, metrics, fonts, performance, css
The Missing Link for Web Components (kin/fro)20,182
web-components, typescript, json, mcp, ai, tooling
Building a Scroll-Driven Dual-Wave Text Animation With GSAP (cod)20,181
gsap, animations, scrolling
Performance (25p+/htt)20,180
web-almanac, studies, research, metrics, performance, web-vitals, hints, speculation
Third Parties (htt)20,179
web-almanac, studies, research, metrics, embed-code
Using “100vw” Is Now Scrollbar-Aware (in Chrome 145+, Under the Right Conditions) (bra)20,178
css, units, scrolling, chrome, google, browsers
Accessibility (bog+/htt)20,177
web-almanac, studies, research, metrics, accessibility, colors, contrast, zooming, scaling, internationalization, keyboard-navigation, skip-links, forms, labels, placeholders, multimedia, images, aria, overlays, ai
Why Designers Are the New Bureaucrats (web)20,176
design, processes
Accessible Faux-Nested Interactive Controls (eri/pic)20,175
accessibility, conformance, html, nesting
Privacy (htt)20,174
web-almanac, studies, research, metrics, privacy, legal, consent-management, do-not-track
Generative AI (chr+/htt)20,173
web-almanac, studies, research, metrics, ai, robotstxt, llmstxt
WebAssembly (htt)20,172
web-almanac, studies, research, metrics, webassembly
CDN (htt)20,171
web-almanac, studies, research, metrics, content-delivery, http, performance, http-headers, compression, tls, hints
SEO (htt)20,170
web-almanac, studies, research, metrics, seo, robotstxt, llmstxt, links, content, structured-data, amp, html, internationalization
Cookies (htt)20,169
web-almanac, studies, research, metrics, cookies
Page Weight (bar+/htt)20,168
web-almanac, studies, research, metrics, performance, web-vitals, lighthouse, google
So You Think Your Website Is Doing Great (cit)20,167
html, javascript, css, quality
Beyond Manual Audits: How Automation Strengthens Accessibility (equ)20,166
accessibility, auditing, automation, wcag
Making GitHub Actions Suck a Little Less20,165
github-actions
Node.js January 2026 Security Release: What Changed and Why It Matters (nod)20,164
nodejs, security
The “Senior Developer” Is Now the New “Entry Level”20,163
career, ai
Smashing Animations: Theming Animations Using CSS Relative Colour (mal/sma)20,162
animations, colors, theming, css
The Unhinged World of Tech in 2026… (fir)20,161
videos, outlooks, ai, javascript
Live Region Support (aar)20,160
accessibility, live-regions, support, screen-readers, nvda, jaws, voiceover
Everything You Need to Know About Ruby 4.0 (hon)20,159
ruby
EPUB and HTML—Survey Results and Next Steps (rei/w3c)20,158
surveys, epub, html
Traditional Code Review Is Dead: What Comes Next?20,157
code-reviews, ai, processes, infrastructure, scalability
How to Use OpenCode: A Practical Guide and Builds20,156
guides, opencode, ai, mcp, tooling, installing
Introducing the “<geolocation>” HTML Element (tom+)20,155
introductions, html, geolocation, chrome, google, browsers
ARIA Roles Can Remove Their Children’s Semantics (ste)20,154
html, aria, semantics, accessibility
18 Predictions for 202620,153
outlooks, ai, usability, user-experience
The Invisible Work (hvp)20,152
leadership, productivity, processes
Mitigating Denial-of-Service Vulnerability From Unrecoverable Stack Space Exhaustion for React, Next.js, and APM Users (mco+/nod)20,151
nodejs, security, vulnerabilities, react, nextjs, tooling, monitoring, performance
Tuesday, January 13, 2026 Security Releases (nod)20,150
release-notes, nodejs, security
Simulating Crop Marks (chr/fro)20,149
css
Astro 6 Beta (mat)20,148
release-notes, astro
Just the Browser (cor)20,147
websites, browsers, chrome, google, firefox, mozilla, edge, microsoft
Aspire for JavaScript Developers (dav)20,146
tooling, javascript, typescript
Design Systems and Shareable Browser Support (rob)20,145
design-systems, browsers, browserslist, support
A Polyfill for the HTML “switch” Element (tom)20,144
html, forms, polyfills
Solid.js Best Practices (bre)20,143
solidjs, best-practices, examples
Is There Too Much Design in Design Systems? (sha)20,142
design, design-systems
Don’t Start With AI, Start With the Problem (cal/nng)20,141
videos, ai, processes
Manufacturing as Code Is the Future, and the Future Is Now20,140
programming, outlooks
OpenCode vs. Claude Code (bui)20,139
opencode, claude, anthropic, ai, comparisons
Stop Turning Everything Into Arrays (and Do Less Work Instead)20,138
javascript, methods, arrays
SVG Filters Are Just Amazing (ami)20,137
svg, filters
Comments Considered Harmful in the Age of LLMs (yeg)20,136
comments, ai, maintainability
Focus Rings With Nested “contrast-color()”? (dav)20,135
css, selectors, functions, focus, contrast
Stop Using MySQL in 2026, It Is Not True Open Source (ott)20,134
mysql
Don’t Fall Into the Anti-AI Hype (ant)20,133
ai, career
How Wrong Can a JavaScript Date Calculation Go? (phi)20,132
javascript, time, apis
On Abbreviating Accessibility (ons)20,131
accessibility, microcontent
What Is the Minimum Markup Needed to Create a Modal? (rus)20,130
modals, minimalism, html, css, accessibility
Prompt Engineering Won’t Fix Your Architecture20,129
architecture, ai
How to Steal Any React Component20,128
react, components
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)20,127
mobile, javascript, animations
Death to Scroll Fade (dbu)20,126
scrolling, effects, performance
How Markdown Took Over the World (ani)20,125
markdown, web
Not All Browser APIs Are “Web” APIs (pol)20,124
apis
Brief Note on Application Keyboard Shortcuts (aar)20,123
accessibility, keyboard-shortcuts, screen-readers
Your Brand Just Evolved: The Rise of AI-Generated Identities (web)20,122
design, branding, ai
Very Good Components (bee)20,121
websites, components, html
Popover Context Menus With Anchor Positioning (chr/fro)20,120
css, tooltips, pop-overs, anchor-positioning
Node.js Package Configuration Guide (nod)20,119
guides, packages, dependencies, configuration, commonjs, esm
Judging Severity in Accessibility Issues (joe)20,118
accessibility
What Makes a Good Tech Meet-Up?20,117
discussions, community
A Data Model for Git (and Other Docs Updates) (b0r)20,116
git
Getting Started With Mistral Vibe CLI and Exploring Devstral 2 Small—Best Local Model?20,115
videos, introductions, mistral, ai
Async React20,114
videos, react, asynchronicity
Exploring React Performance (en-)20,113
videos, react, performance
Profiling With React Performance Tracks20,112
videos, react, profiling, performance
Designing Page Transitions20,111
videos, design, transitions, effects
Software Is Culture (fig)20,110
culture
2026 Accessibility Hiring Looks Busy, Yet the Patterns Show Underlying Weakness20,109
accessibility, career
Common Misconceptions About Testing Accessibility (tet)20,108
accessibility, testing
Modern Emails Using React20,107
videos, email, react
Date Is Out, Temporal Is In (wil/pic)20,106
javascript, time
Ethical and Resilient Blog Hosting (pad)20,105
hosting, blogging, ethics
npm to Implement Staged Publishing After Turbulent Shift Off Classic Tokens (sar/soc)20,104
npm, dependencies, security, github
Web Dependencies Are Broken—Can We Fix Them? (lea)20,103
dependencies, javascript, import-maps, web-platform
4 CSS Features Every Front-End Developer Should Know in 2026 (arg)20,102
css, functions, scrolling
Designing With AI-Readable Design Systems in Cursor20,101
design, design-systems, ai, cursor, code-editors
5 Accessibility Checks to Run on Every Component (hdv/zer)20,100
accessibility, components, testing, keyboard-navigation, design-tokens, microcontent, zooming, screen-readers
Google Broke My Heart (per)20,099
google, search, licensing, legal
2025 JavaScript Rising Stars20,098
javascript, frameworks, libraries, react, vuejs, tooling, ai, mobile, desktop, state-management, css-in-js, testing, static-site-generation, graphql, retrospectives
WASI 1.0: You Won’t Know When WebAssembly Is Everywhere in 202620,097
webassembly, components, standards
We Fixed a 6-Year-Old JavaScript Memory Leak (mat/deb)20,096
javascript, memory
The Text Mode Lie: Why Modern TUIs Are a Nightmare for Accessibility20,095
accessibility, command-line, ai, gemini, nvda, vi+vim, unix-like
How to “@scope” CSS Now That It’s Baseline (dxn/fro)20,094
css, scope, examples
How to Create a Pixel-to-Voxel Video Drop Effect With Three.js and Rapier (cod)20,093
how-tos, javascript, effects, tooling, gsap, threejs
JavaScript Frameworks—Heading Into 2026 (rya/thi)20,092
javascript, frameworks, outlooks, ai
How I Evaluate an ACR (VPAT) (aar)20,091
accessibility, compliance, vpat-acr, processes
Claude Devs Complain About Surprise Usage Limits, Anthropic Blames Expiring Bonus (tho/the)20,090
claude, anthropic, ai
Eric Bailey’s Predictions for the Future of Accessibility (eri)20,089
accessibility, outlooks
Streaming JSON in Just 200 Lines of JavaScript20,088
streaming, json, javascript
Anna Thielke’s Predictions for the Future of Accessibility20,087
accessibility, outlooks
Damian Sian’s Predictions for the Future of Accessibility20,086
accessibility, outlooks
Kai Wong’s Predictions for the Future of Accessibility20,085
accessibility, outlooks
The Nine Levels of JavaScript Dependency Hell (and)20,084
javascript, dependencies, maintainability
Pre-Tenuring in V8 (win)20,083
v8, javascript-engines
I Built an App in Every Frontend Framework20,082
frameworks, libraries, react, vuejs, svelte, angular, lit, marko, jquery, alpinejs, solidjs, astro, qwik, comparisons
How GitHub Monopoly Is Destroying the Open Source Ecosystem (plo)20,081
foss, github, microsoft
The Next Two Years of Software Engineering (add)20,080
programming, career, outlooks, ai
V7: Typographic Scales and Technical Pens20,079
design, typography, css, case-studies
How Browsers Work (dmy)20,078
websites, guides, browsers, urls, http, tcp, html, dom
TIL: Why ARM Has a JavaScript Instruction20,077
javascript
Sounds on the Web20,076
web, multimedia
Being a Colourblind Designer (wpa)20,075
videos, accessibility, color-blindness, colors, design
21 Lessons From 14 Years at Google (add)20,074
lessons, google, career
Web Development Is Fun Again20,073
ai, creativity
The Package Management Landscape (and)20,072
dependencies, tooling, overviews, link-lists
10 UX Design Shifts You Can’t Ignore in 202620,071
design, user-experience, ai, outlooks
The Code Review That Cost $2 Million20,070
code-reviews, economics, ai
Managing Infrastructure Across Multiple Environments20,069
infrastructure, dev-ops, maintenance
Building a JavaScript Runtime in One Month (the)20,068
javascript, runtimes, functionality
2026: The Year of My Website (the)20,067
indieweb, social-media
Security Basics for Vibe-Coders (owe/pro)20,066
fundamentals, security, vibe-coding, ai
A Website to Destroy All Websites (hen)20,065
web, indieweb
JavaScript’s “for…of” Loops Are Actually Fast20,064
javascript, loops, performance
“!important” and CSS Custom Properties (chr/fro)20,063
css, custom-properties, cascade
On Using IndieWeb Protocols Like Webmentions and Keeping Your Website Separate From Social Media (pat)20,062
indieweb, webmentions, social-media
How Can You Tell What’s Allowed Inside Each HTML Element? (rus)20,061
html, conformance
What’s !important: Conditional View Transitions, CSS/SVG Text Effects, the Best of CSS Bluesky, and More (dxn/css)20,060
css, retrospectives, view-transitions, design-systems, firefox, svg
Teaching Agents About Performance Insights (web/per)20,059
performance, ai, ai-agents
Chrome DevTools Features I Use All the Time (and Why You Should Too) (kee/per)20,058
dev-tools, chrome, google, browsers, performance, accessibility, lighthouse, network, embed-code
What Happened to WebAssembly (emn)20,057
webassembly
More Efficiency, More Demand20,056
efficiency, ai, career
Building the Brain of Your Accessibility AI (ted)20,055
accessibility, ai
The Curious Case of the Shallow Session SPAs (sli/per)20,054
performance, single-page-apps, javascript, frameworks, metrics
From Theory to Tiny: Implementing Compression Dictionaries (rya/per)20,053
performance, compression, content-delivery
Touch Targets and Web Accessibility20,052
accessibility, touch
Testing Methods: Status Messages (dec)20,051
accessibility, testing, wcag, notifications, link-lists
8 Predictions for 2026: What Comes Next in AI? (phi)20,050
ai, outlooks
Why Developers Are Ditching Frameworks for Vanilla JavaScript20,049
frameworks, javascript, apis, performance, micro-frontends, architecture
HTML Content Categories (rus)20,048
html, semantics
“require(esm)” in Node.js: From Experiment to Stability (joy)20,047
nodejs, esm
The 8 Trends That Will Define Web Development in 2026 (log)20,046
trends, outlooks, ai, frameworks, tanstack, typescript, edge-computing, presentational-html
Testing Methods: Name, Role, Value (dec)20,045
accessibility, testing, wcag, aria, link-lists
How to Design for (and With) Deaf People (vit/sma)20,044
how-tos, design, accessibility
7 Steps of a Web Performance Journey (ser/per)20,043
performance, processes
Introducing Flint (jos)20,042
introductions, tooling, linting
7 Real Predictions for Web Design in 2026 (web)20,041
design, outlooks, ai, aesthetics
“Why Do You Code?”—a Surprisingly Hard Question20,040
discussions, programming, career
Reliability by Design20,039
design, ai, link-lists
Why AI-Generated UX Still Feels Off20,038
user-experience, ai
Opening and Closing Dialogs Without JavaScript Using HTML Invoker Commands (sch)20,037
modals, html
pnpm in 2025 (koc/pnp)20,036
pnpm, retrospectives
Third Parties and Single Points of Failure (pau/per)20,035
performance, embed-code, metrics
How I Write Custom Elements With “lit-html” (fro)20,034
web-components, lit
How to Dynamically Install Custom Elements (hey)20,033
how-tos, web-components, naming, javascript
Testing Methods: Accessible Authentication (Enhanced) (dec)20,032
accessibility, testing, wcag, authentication, security
The Final Nail in the HTML5 Document Outline Coffin (tem)20,031
html, headings, accessibility
Tests for CSS Generated Content Alternative Text (rus)20,030
css, generated-content, alt-text, accessibility, support, voiceover, nvda, jaws, screen-readers
The Fall of JavaScript (yeg)20,029
javascript, typescript, programming
Testing Methods: Accessible Authentication (Minimum) (dec)20,028
accessibility, testing, wcag, authentication, security
Tips for Making the Performance Panel Less Overwhelming (duf/per)20,027
performance, dev-tools, browsers, chrome, google, tips-and-tricks
Trends That Defined JavaScript in 2025 (low)20,026
javascript, trends, retrospectives, react, frameworks, tooling, ai
Eight Quick Things to Remember When Using “aria-owns” (rus)20,025
accessibility, aria, dom, assistive-tech
JavaScript Creator Warns Against “Rushed Web UX Over Native” as Windows 11 Leans Harder on WebView2 and Electron (win)20,024
windows, microsoft, web-apps, electron
Testing Methods: Redundant Entry (dec)20,023
accessibility, testing, wcag, forms
Chrome DevTools for Debugging Web Performance (nuc/per)20,022
performance, debugging, dev-tools, chrome, google, browsers
You Can’t Design Software You Don’t Work On (sea)20,021
software-design, architecture
Testing Methods: Error Prevention (All) (dec)20,020
accessibility, testing, wcag, errors
Revisiting HTML Streaming for Modern Web Performance (per)20,019
performance, html, streaming
The Most Dangerous Person on Your Team Is “Dave” (and He Just Quit) (hac)20,018
collaboration, documentation, ai, prompting
The Cost of Consistency: Avoiding Design System Bottlenecks (omi)20,017
design-systems, consistency, lessons, angular
Testing Methods: Help (dec)20,016
accessibility, testing, wcag