Life is about deciding who you are: Join us and decide to be for environmental protection, free education and generous social security, human rights and international law, and, of course, action against oppression and violence (starting with helping the people of occupied Palestine 🇵🇸). Hide

Frontend Dogma

News and Tools for Web Developers

Updated daily

Articles and videos and books, people and projects and processes, tools and tips and tricks from the world of web development and design.

→ Stay up-to-date on all topics by various RSS feeds (main feed: only $12/year), on Mastodon, and on Bluesky (other channels)

Entry (Sources) and TopicsDate#
Date Math in Javascript: The Hidden Trap You’ll Eventually Hit (phi/hac)20,123
javascript, time, math, apis
Finding an Accessibility-First Culture in npmx (abb/pic)20,122
accessibility, culture
Get Features Faster With Chrome’s Two-Week Release Cycle (dev)20,121
chrome, google, browsers
1995: From Batman Forever’s Cinematic Design to HTML Tables (ric)20,120
web, history, design, netscape, mosaic, browsers, tables, layout, html, wysiwyg, code-editors
Google’s Chrome Browser Moves to a Two-Week Release Cycle (fre/the)20,119
chrome, google, browsers
Why React 19’s Compiler Changes Everything for Senior Devs20,118
react, compiling
Get Your War On: AI Chatbots in the Kill Chain (dav)20,117
ai, anthropic, openai
External Import Maps, Today (lea)20,116
javascript, import-maps
How OpenAI Caved to the Pentagon on AI Surveillance (hay/ver)20,115
openai, ai, privacy
Popover API or Dialog API: Which to Choose? (zel/css)20,114
pop-overs, modals, apis, accessibility, javascript
Quick Tip: Hosting HTML/CSS/JS Demos From Source Code on GitHub Pages (cod)20,113
hosting, github-pages, tips-and-tricks
Configuration Collapse (nat)20,112
figma, components, configuration, props
Define the Theme Color for Safari 26 (gro)20,111
safari, apple, browsers, css
Claude Code vs. Cursor: Which AI IDE Wins for Real Development Work?20,110
claude, anthropic, cursor, ai, code-editors, comparisons
Yet Another Way to Center an (Absolute) Element (mon/css)20,109
css, centering
I Set Up My Own Web Server and Here’s What I Learned About nginx20,108
servers, nginx
CSS Snapshot 2026 (fri+/w3c)20,107
css, standards
Create Pages From JSON Files With Eleventy (san)20,106
eleventy, json, static-site-generation
The Pentagon Is Making a Mistake by Threatening Anthropic (bin)20,105
ai, anthropic
16 Modern JavaScript Features That Might Blow Your Mind20,104
javascript
A Complete Guide to Bookmarklets (val/css)20,103
guides, bookmarklets, javascript, link-lists
The Rise of “Micro-Backends”: Why Frontend Devs Are Adopting Hono20,102
hono, express, comparisons, backend-for-frontend, architecture
Developer Experience at Scale—Lessons From Dropbox20,101
interviews, developer-experience, productivity, tooling, ai, lessons
CSS Masonry Layout Is Finally Coming: Native Grid Support Explained20,100
css, masonry, layout, examples
20,000 (fro)20,099
frontend-dogma
Best Practices for CSS Scope in Angular Applications (ale)20,098
css, scope, angular, best-practices
Oxfmt Beta (bos+)20,097
release-notes, formatting, tooling
x86 CPU Made in CSS (reb)20,096
css, programming, functionality
Firefox 148 Brings Central AI Control and New Web Standards (hei)20,095
firefox, mozilla, browsers
How I Setup Production-Grade Deployment for My (Somewhat) Vibe-Coded App (mar/fro)20,094
deploying, aws
Web AI: Everything You Need to Know About On-Device AI for the Web20,093
ai
From “instanceof” to “Error.isError”: Safer Error Checking in JavaScript20,092
javascript, errors
Upskilling in the AI Age (dac)20,091
ai, tooling, learning
Getting Started With the Vercel AI SDK in Node.js20,090
introductions, nodejs, ai, vercel
Matt May Speaks (mat+)20,089
videos, interviews, accessibility, html, standards
Stop Using “/init” for AGENTS.md (add)20,088
ai, configuration, documentation
Sprites on the Web (jos)20,087
css, images, sprites, techniques
Native HTML Components Don’t Guarantee Good UX (ada)20,086
html, components, user-experience
Standard HTML Video and Audio Lazy-Loading Is Coming (sco)20,085
html, multimedia, lazy-loading, standards, performance
Wasm vs. Javascript: Who Wins at a Million Rows? (the)20,084
webassembly, javascript, comparisons, performance
Why AI Is Exposing Design’s Craft Crisis20,083
ai, design, craft, figma, link-lists
My Malware Story Gets Stolen; Yet Another Argument for the IndieWeb (bre)20,082
malware, indieweb, licensing
Weird Issues With CSS Calculations in Safari 26.2 (cit)20,081
css, functions, safari, apple, browsers
Potentially Coming to a Browser “:near()” You (dxn/css)20,080
css, functions
WordPress 7.0 Beta 1 (wor)20,079
release-notes, wordpress
Big Tech Still Dreams of Mass Surveillance—Now People Are Pushing Back (tro/sal)20,078
privacy, amazon, google, ai
An Official* Logo for HTML (zac)20,077
html
Using the Browser’s “<canvas>” for Data Compression20,076
canvas, compression
A Web Revival: The Internet Didn’t Die, You’re Just Not on It20,075
videos, indieweb, web
An In-Depth Guide to Customising Lists With CSS (ric/pic)20,074
guides, css, lists
8 Things You Didn’t Know About Code Mode (bla)20,073
ai
Fastest Frontend Tooling for Humans and AI20,072
tech-stacks, tooling, typescript, developer-experience, optimization
Suffering From Bugs: How I Almost Deleted My Entire Project20,071
bugs, lessons
“border-shape”: The Future of the Non-Rectangular Web (una)20,070
css, shapes, borders
Vitest vs. Jest 2026: The Migration Guide With Real Benchmarks20,069
guides, migrating, vitest, jest, comparisons
Tailwind CSS v4: Container Queries and the Death of Media Queries20,068
tailwind, container-queries, media-queries, css
Claude Sonnet 4.6 vs. GPT-5: The 2026 Developer Benchmark20,067
claude, anthropic, openai, ai, comparisons, metrics, programming, documentation
Sometimes the Best Accessibility Fix Is a Usability Fix20,066
accessibility, usability
When Accessibility Demand Letters Land on Your Desk: A Framework for Strategic Response (dec)20,065
accessibility, strategies
Why Separate Guest and Logged in States Create Accessibility Barriers20,064
accessibility, authentication
Why You Need to Close Open Objects When Users Navigate Away20,063
accessibility, wcag
AI Is Giving Tech Companies Power That Once Belonged to Governments (res)20,062
ai, economics
5 CSS Fouls That I See Way Too Often (kev)20,061
videos, css
Distinguishing “Components” and “Utilities” in Tailwind (zel/css)20,060
tailwind, terminology
Analyst Reactions: How AI Is Reshaping Engineering Organizations20,059
ai, engineering-management
Web Development Is More Than Frontend and Backend (Here’s What Actually Matters)20,058
programming, career
Selectors Level 5 (fan+/w3c)20,057
css, selectors, standards
5 Source Map Best Practices for Frontend Production Deployments (ele/des)20,056
guest-posts, source-maps, javascript, best-practices
Europe Is Ready to Ditch US Tech for Private Alternatives (pro)20,055
tooling, privacy, security, metrics
Europeans Are Dangerously Reliant on US Tech—Now Is a Good Time to Build Our Own (joh/the)20,054
economics, policies, google, microsoft, amazon
We Cut Node.js’ Memory in Half (mco/pla)20,053
nodejs, v8, javascript, memory, metrics
Interop 2026 (geo/css)20,052
interoperability, web-platform, browsers, support, link-lists
Spiral Scrollytelling in CSS With “sibling-index()” (css)20,051
css, functions, scrolling, gsap
The Hidden Cost of AI Prototypes That Are Made to Die (uxd)20,050
prototyping, ai, design, product-management
How “Liquid Design” Broke the iPhone and Forced Apple’s Great Reset (web)20,049
design, usability, readability, liquid-glass, apple
Why It’s Important to Manually Test for Accessibility20,048
accessibility, testing
Style Headings Using the CSS “:heading” Pseudo-Class (stu)20,047
headings, css, selectors
Why Your CEO Acts Like a Clown: The Tribal Myths of Leadership (uxd)20,046
leadership, culture, engineering-management
Why WebAIM’s Report Only Found 6 Issues on a Million Pages20,045
videos, accessibility, webaim
Justifying “text-wrap: pretty”20,044
css, typography
A Programmer’s Loss of a Social Identity (rat)20,043
programming, career, community
JS-Heavy Approaches Are Not Compatible With Long-Term Performance Goals (ser)20,042
javascript, frameworks, performance, prioritization
Fun With TypeScript Generics (ada/fro)20,041
typescript, generics
Are We Having the Wrong AI Dreams? (jet)20,040
ai, outlooks
The EU Moves to Kill Infinite Scrolling (egr/pol)20,039
social-media, scrolling, legal
How to Debug the “@ starting-style” At-Rule in Polypane (pol)20,038
how-tos, debugging, css, animations, polypane, browsers
Virtual Scrolling for Billions of Rows—Techniques From HighTable (sev)20,037
html, tables, scrolling, performance, react
State of React 2025 [Results] (sac/dev)20,036
surveys, metrics, react
You Might Not Need “role="presentation"” (stv/pic)20,035
html, aria, accessibility
Interop 2026: Continuing to Improve the Web for Developers (rac/dev)20,034
interoperability, web-platform, browsers, support
Evaluating AGENTS.md: Are Repository-Level Context Files Helpful for Coding Agents? (ves+)20,033
studies, research, ai, ai-agents, documentation
Mastering Dialog Accessibility20,032
accessibility, modals, html, aria
Launching Interop 2026 (jaf/moz)20,031
interoperability, web-platform, browsers, support
The Beautiful Web (j9t)20,030
web, indieweb
Radix UI vs. Base UI (sha)20,029
react, libraries, radix, comparisons
The 80% Job: How Design Leads Are Using AI—and It’s Not About Mockups (uxd)20,028
design, ai, prototyping, communication, leadership, product-management, link-lists
What It Really Costs to Run a WordPress Website in 202620,027
wordpress, economics
Life After Figma Is Coming (and It Will Be Glorious) (jon)20,026
design, ai, tooling, figma
Designing for Agentic AI: Practical UX Patterns for Control, Consent, and Accountability (sma)20,025
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,024
traffic, search, chatgpt, google, metrics
How to Create a CSS-Only Elastic Text Effect (css/fro)20,023
how-tos, css, effects
Re-Creating a Pantone Color Deck in CSS (sto)20,022
css
Announcing TypeScript 6.0 Beta (dan/typ)20,021
typescript
Does Your Navigation Need an ARIA Menu? Probably Not (pop)20,020
accessibility, navigation, aria, keyboard-navigation
The Natural Design Process (uxd)20,019
design, processes
Building an Endless Procedural Snake With Three.js and WebGL (suj/cod)20,018
threejs, webgl, javascript
Shades of Halftone (max)20,017
effects, halftone
Polypane 28: Project Improvements, Elements Panel Updates, and Chromium 146 (pol)20,016
release-notes, polypane, browsers
The Software Sovereignty Scale (dri)20,015
foss, licensing, legal
It’s About to Get a Lot Easier for Your JavaScript to Clean Up After Itself (wil/pic)20,014
javascript, garbage-collection
The 2026 Frontend Dogma Survey (fro)20,013
frontend-dogma, surveys
Modern CSS Code Snippets20,012
websites, css, examples, comparisons
Design Is Dead, It’s All Evolution Now (ily)20,011
design, processes
Designing Useful Ads (uxd)20,010
design, monetization, ai
Emotional Design: Let’s Design for Silence (uxd)20,009
design
Background Patterns With CSS “corner-radius” (pre/fro)20,008
css, backgrounds, effects, examples
Vite, Rust, and the Future of JavaScript Tooling (eva+/bet)20,007
videos, interviews, vuejs, rust, javascript, oxc, bundling, tooling, ai
Trying to Make the Perfect Pie Chart in CSS (mon/css)20,006
css, html
Large Tech Companies Don’t Need Heroes (sea)20,005
processes, engineering-management, career
Underlining Links With CSS (stu)20,004
css, links
Definitive Guide to Multi-Threaded Rendering on the Web (hac)20,003
guides, dom, rendering
Why JavaScript Needs Structured Concurrency20,002
javascript, concurrency, asynchronicity
Interop 2025: A Year of Convergence (stu/web)20,001
interoperability, web-platform, browsers, retrospectives, metrics
Why Your Brain Rebels Against Redesigns—Even Good Ones (uxd)20,000
design, redesigning, link-lists
How Generative AI Is Redefining Brand Identity Systems19,999
ai, branding, design
How (and Why) to Stop Users From Selecting Text on Your Website19,998
css
The Browser Hates Surprises (fro)19,997
browsers, performance
The CSS Selection (ven/pro)19,996
css, metrics, studies, research
What to Expect in Angular 2219,995
angular
A New Meta Tag for Respecting Text Scaling on Mobile (mat)19,994
accessibility, metadata, scaling
Your Design System Needs an Enforcer (nng)19,993
design-systems, processes
The Return of the Intuitive Designer in the Age of AI (uxd)19,992
design, user-experience, ai
Git’s Magic Files (and)19,991
git, configuration
How to Use the “Auto” Value With “clamp()” (css)19,990
how-tos, css, functions
Accessibility Conformance Testing (ACT) Rules Format 1.1 (wil+/w3c)19,989
accessibility, compliance, testing, documentation
Minifier Benchmarks (j9t)19,988
minification, tooling, metrics, comparisons, html-minifier, htmlnano
CSS “@ scope”: An Alternative to Naming Conventions and Heavy Abstractions (sma)19,987
css, scope, naming
Measuring SVG Rendering Time (sto)19,986
svg, png, images, rendering, performance, web-vitals, metrics
How to Write Alt Text for News (sta/the)19,985
how-tos, alt-text, accessibility, images
Why Designers Secretly Love Constraints (Even When We Complain About Them) (web)19,984
design
Quick Tip: Do Not Replicate OS Behavior (nat)19,983
accessibility, tips-and-tricks
What’s New in ViteLand: January 2026 Recap (man/voi)19,982
release-notes, vite, vitest, rolldown, oxc
Clarity Is Not the Enemy of Depth (the)19,981
content, writing, accessibility
How to Improve Your HTML Game (j9t)19,980
how-tos, html, conformance, learning, career
AI Will Eliminate the Need for Accessibility Professionals? I Think Not19,979
ai, accessibility, testing, career
You Probably Shouldn’t Be Annotating Focus Order (eri)19,978
accessibility, focus, forms
Stop Installing Libraries: 10 Browser APIs That Already Solve Your Problems19,977
javascript, libraries, apis, web-platform
Introduction to the New HTML Element “<geolocation>” (mat)19,976
introductions, html, geolocation
[Webpack] Roadmap 2026 (eve)19,975
webpack
CSS Properties That Solve Annoying Problems (kev)19,974
videos, css
Building Bulletproof React Components19,973
react, components
How to Shoot a Screen Using a Board of Keys (mwi)19,972
screenshots, keyboard-shortcuts, history, apple
Introducing Deno Sandbox (tin/den)19,971
deno
State of JavaScript 2025 [Results] (sac/dev)19,970
surveys, metrics, javascript
Deno Deploy Is Generally Available (lca+/den)19,969
deno
Combobox vs. Multiselect vs. Listbox: How to Choose the Right One (vit/sma)19,968
how-tos, forms, design-patterns, comparisons
Nice Select (arg)19,967
forms, css
How Eleventy Survived: Funding, Growth, and Open Source Reality (zac+/fon)19,966
podcasts, interviews, eleventy, foss
A Percise Parser (rem)19,965
javascript, parsing
Elastic/Bouncy Text Effect (css)19,964
css, effects
Accessible Inline Collapsible (eri)19,963
accessibility, html, disclosure-widgets
Accessibility Progress and Healthy Engineering Teams (hbu)19,962
accessibility, technical-debt, web-platform, prioritization
Node.js Path Traversal: Prevention and Security Guide (loi)19,961
guides, nodejs, security
Implementing the Temporal Proposal in JavaScriptCore (you/iga)19,960
javascriptcore, javascript-engines, time
Accessible Design Is Digital Infrastructure (ann)19,959
accessibility, design
What’s Missing From the Web Platform? (wes+/syn)19,958
podcasts, web-platform, wish-lists
Performance-Optimized Video Embeds With Zero JavaScript (stf/fro)19,957
multimedia, performance
What Is JPEG XL: Do We Really Need Another Image Format? (aar/deb)19,956
jpeg-xl, images, quality, performance, metrics
Release Notes for Safari Technology Preview 236 (jon/web)19,955
release-notes, safari, apple, browsers
Building an RSS Aggregator With Astro (ray)19,954
astro, rss, syndication, functionality
Explicit Resource Management in JavaScript19,953
javascript
Stop Asking “Is This on Brand?”—It’s Killing Your Creativity (web)19,952
design, branding, creativity
Limiting Work in Progress Is a Superpower19,951
project-management, processes, productivity, agile, scrum
HTML Minifier Next 5, a Quick Upgrade Guide (j9t)19,950
guides, html-minifier
Selfish AI (cre)19,949
ai
The Indie Web Is Not Defined by Its Enemies (khu)19,948
indieweb, ai
Tim Cook Sold Apple’s Soul (kev)19,947
apple
Google Helped Israeli Military Contractor With AI, Whistleblower Alleges (was)19,946
google, ai, ethics, privacy
Repeatable Form Fields Made Simple (aar)19,945
forms, html, web-components
A Broken Heart (api)19,944
performance, fonts, emoji
My Opinionated ESLint Setup for Vue Projects (ale)19,943
eslint, configuration, vuejs
Tickering With Node.js Core on ARM64 Windows (joy)19,942
nodejs, building, windows, microsoft
When Design Stops Asking Why and Starts Asking, “Can AI Do It?” (uxd)19,941
design, ai, processes, quality
The Too Early Breakpoint (sha)19,940
css, layout
“WCAG Is Difficult to Read, Don’t Read It” Is a Self-Fulfilling Prophecy (yat)19,939
wcag, standards, accessibility
AI Agents Explained (tre)19,938
ai-agents, ai
Practical Use of AI Coding Tools for the Responsible Developer (ska/sma)19,937
ai, tooling, prompting
Announcing Rspress 2.019,936
release-notes
New to the Web Platform in January (rac/dev)19,935
release-notes, web-platform, browsers, firefox, mozilla, chrome, google
How the Same Content Always Has Multiple Different Versions19,934
accessibility, content, comparisons
React’s “ViewTransition” Element (chr/fro)19,933
react, view-transitions
Understanding Hydration in Frontend Frameworks: Definition, Challenges, and Optimization Strategies (ele/des)19,932
guest-posts, frameworks, hydration, optimization, concepts, strategies
The Design System Paradox: How Abstraction Can Hollow Out Quality (pjo/zer)19,931
design-systems, quality, training
How to Make an HTTP Request in Node.js (loi)19,930
how-tos, nodejs, http
Is Learning CSS a Waste of Time in 2026?19,929
css, learning, career, discussions
Vibe Prototyping Is a Double-Edged Sword (edd/uxd)19,928
prototyping, vibe-coding, ai, design
OpenJS Foundation Security Program: Annual Report 2025 (ope)19,927
openjs, security
Cryptography Usage in Web Standards (w3c)19,926
standards, cryptography, security
How Rolldown Works: High-Performance Code Splitting With Bitset Logic (atr)19,925
rolldown, bundling, code-splitting, performance
Why I Don’t Call Myself an Accessibility Expert19,924
accessibility, career
How an Accessibility Designer Adds Keyboard Shortcuts to a Web App (eri)19,923
web-apps, keyboard-shortcuts, accessibility
The Next Decade of UX: Why Psychology Matters More Than Ever (tbf/nng)19,922
videos, interviews, user-experience, design, outlooks
How to Design Great Alt Text: An Introduction (deq)19,921
how-tos, introductions, alt-text, images, accessibility
How to Style the New “::search-text” and Other Highlight-y Pseudo-Elements (dxn/css)19,920
how-tos, css, selectors
Introducing ReliCSS: A Tool for Front-End Archaeology (stu)19,919
introductions, tooling, css, auditing
AI’s Text-Trap: Moving Towards a More Interactive Future (uxd)19,918
ai, interaction-design, user-experience
A Year of Creator Wins: Highlights From the JetBrains Content Creators Program 2025 (jet)19,917
jetbrains, community
Are We Doing UX for AI the Right Way? (cxo/uxd)19,916
user-experience, design, conversational-design, ai, link-lists
7 Learnings From Anders Hejlsberg: The Architect Behind C# and TypeScript (git)19,915
lessons, scalability, typescript, foss, ai, collaboration
How AI Is Redefining the Way We Find Content (cle)19,914
ai, crawling, search, content, seo
Some Notes on Starting to Use Django (b0r)19,913
django
More Invoker Commands, and More Reasons Not to Use JavaScript Please (paw)19,912
html, examples
Unstacking CSS Stacking Contexts (sma)19,911
css, positioning
Try Text Scaling Support in Chrome Canary (jos)19,910
chrome, google, browsers, scaling, accessibility
We’re Creating a Knowledge Collapse and No One’s Talking About It19,909
ai, documentation, learning, career
Solving Shrinkwrap: New Experimental Technique (kiz)19,908
css, techniques
On the Need for Neutral Maintained Minifier Metrics (j9t)19,907
minification, tooling, html-minifier, htmlnano
Claude Code for Designers: A Practical Guide19,906
guides, design, claude, anthropic, ai
Design Systems Checklist (tyc)19,905
design-systems, checklists
9 Reasons to Choose Sketch in 2026 (fre/ske)19,904
sketch
Supporting Open Source in 2026: Why It Matters More Than Ever ($50,000) (mar/fro)19,903
foss, web-platform
Drawing Connections With CSS Anchor Positioning19,902
css, anchor-positioning
Improving Single Executable Application Building for Node.js (joy)19,901
nodejs
Density vs. Clarity: The Core Tension in Modern UI Design (web)19,900
design, information-design, minimalism, comparisons, figma
How Web Performance Impacts User Experience (deb)19,899
performance, user-experience, web-vitals, metrics
Why the Future of Design Is Less Flash and More Thought19,898
design, outlooks
There Is No Need to Trap Focus on a “dialog” Element (zel/css)19,897
modals, focus, accessibility
A Security Checklist for Your React and Next.js Apps (the)19,896
security, react, nextjs
Porting 100k Lines From TypeScript to Rust Using Claude Code in a Month (vje)19,895
migrating, typescript, rust, claude, anthropic, ai
SPAs Are a Performance Dead End (yeg)19,894
single-page-apps, performance
Using Maturity Models to Build Accessibility That Lasts (ted)19,893
accessibility
Figma Slots for Repeating Items (nat)19,892
figma, components
How to Use Font Ligatures19,891
how-tos, typography, fonts, tooling, adobe, figma, microsoft, css
npmx (dan/npm)19,890
websites, npm, packages
Software Design Principles That Matter19,889
software-design, principles, examples
6 Ways to Set Better Content Accessibility Goals in 202619,888
accessibility, processes
Anchor Interpolated Morph (AIM) (arg)19,887
css, animations, techniques
Responsive Hexagon Grid Using Modern CSS (css/css)19,886
css, functions, math, responsive-design
CSS Scope and Mixins (chr+/odd)19,885
videos, interviews, css, scope, mixins
Do We All See the Same Colors? (tba)19,884
colors, color-blindness, accessibility
Names Are Hard but They Don’t Have to Be (col)19,883
internationalization, naming, validation
Handling Breaking Changes in a Design System Without Causing Chaos (sha/zer)19,882
design-systems, maintenance, semver, communication
Understanding the Fundamentals of CSS Layout (pol)19,881
fundamentals, css, layout, grids, flexbox, positioning
The Context Collapse Problem19,880
ai, documentation
CSS Optical Illusions (alv)19,879
css, effects, examples
Claude’s New Constitution (ant)19,878
claude, anthropic, ai
Why Webflow Isn’t the Future—Yet (web)19,877
webflow, low-and-no-code
10 Digital Accessibility Predictions for 2026 (ons)19,876
accessibility, outlooks, wcag, career, ai, legal, assistive-tech
When Will CSS Grid Lanes Arrive? How Long Until We Can Use It? (jen/web)19,875
css, grids, masonry, layout
CTA Hierarchy in the Wild (jim)19,874
user-experience, buttons, youtube
10 Tips for Effective User Experience Evaluation19,873
user-experience, usability, content, design, testing, tips-and-tricks
Barriers From Links With ARIA (aar)19,872
accessibility, links, html, aria
The Conditionally Open Web (cor)19,871
open-web
Why Light-Weight Websites May One Day Save Your Life (mah)19,870
performance, accessibility, print, frameworks
How to Diagnose Lighthouse Score Discrepancies Between Tools (deb)19,869
how-tos, performance, lighthouse, google, tooling
Accessibility 101 and Core Concepts (kno)19,868
videos, accessibility, introductions, concepts
Floating Action Buttons Are Bad, and What to Do Instead (eri)19,867
buttons, usability, material-design, google
The Accessibility Manager Moment No One Warns You About19,866
accessibility, leadership, legal, communication
Securing npm Is Table Stakes (nza+/cha)19,865
podcasts, interviews, npm, security, ai
What Makes Generated UI Worth Keeping? (uxd)19,864
design, ai, branding, tooling
Demystifying Screen Reader Use for Manual Testing: Deneb Pulsipher and Kosi Asabere19,863
videos, accessibility, testing, screen-readers
CSS in 2026: The New Features Reshaping Frontend Development (log)19,862
css, functions
How to Favicon in 2026: Three Files That Fit Most Needs (sit/evi)19,861
how-tos, images, favicons
I Learned the First Rule of ARIA the Hard Way (css)19,860
accessibility, aria, semantics, html
Designing Beyond the Happy Path in Design Systems (ste/zer)19,859
design-systems, design
Developing Trustworthy Information (jma)19,858
writing, content, ai
Faking a Fieldset-Legend (tyl/clo)19,857
html, forms, css
Node.js 16 to 25 Performance Benchmarks19,856
nodejs, performance, metrics, comparisons
Lowering the Specificity of Multiple Rules at Once (mat)19,855
css, cascade
Inside Turbopack: Building Faster by Building Less (she+)19,854
turbopack, performance
A Brief History of Programming… (fir)19,853
videos, programming, history
Animating Responsive Grid Layout Transitions With GSAP Flip (cod)19,852
css, grids, layout, animations, gsap, plugins
Rethinking “Pixel Perfect” Web Design (ami/sma)19,851
design, quality
View Transitions and Playing Video (chr/fro)19,850
javascript, view-transitions, multimedia
AI’s Missing Ingredient (cwo)19,849
ai, vibe-coding, creativity, design
Some Thoughts on the Open Web (mno)19,848
open-web, web
Design Tokens With Confidence (luk/uxd)19,847
design-tokens, json, css
What Figma Got Wrong About Design Systems (web)19,846
figma, design-systems
The State of WebAssembly—2025 and 2026 (uno)19,845
webassembly, retrospectives, outlooks
“Code Only” Props in Figma (nat)19,844
figma, props
What Design Leaders Must Unlearn to Lead in an AI-First World (uxd)19,843
design, leadership, ai
Design in Code, Get Praise (ada)19,842
design, processes, communication
How to Build a WordPress Block Theme19,841
how-tos, wordpress, theming
Vercel vs. Netlify vs. Cloudflare: Serverless Cold Starts Compared19,840
vercel, netlify, cloudflare, serverless, comparisons, metrics
jQuery 4.0.0 (tim/jqu)19,839
jquery, release-notes
AdonisJS v7 Is Feature-Complete and Entering Final Validation (vir/ado)19,838
release-notes, adonisjs
ASCII Characters Are Not Pixels: A Deep Dive Into ASCII Rendering19,837
deep-dives, ascii, rendering
When Design Kills Usability—Meet the Custom Cursor (mal)19,836
videos, design, usability, cursors
Chrome 145 Adds Experimental Support for Vertical Tabs (bra)19,835
chrome, google, browsers
Better Defaults for Popovers (mat)19,834
pop-overs, css, resets
State of UX 2026: Design Deeper to Differentiate (nng)19,833
user-experience, design, outlooks, career, ai
PWA (htt)19,832
web-almanac, studies, research, metrics, progressive-web-apps, web-apps, web-workers
Ecommerce (htt)19,831
web-almanac, studies, research, metrics, ecommerce, tooling, performance, web-vitals, lighthouse
The Astro Technology Company Joins Cloudflare (ast)19,830
astro, cloudflare
CMS (htt)19,829
web-almanac, studies, research, metrics, content-management, tooling, wordpress, user-experience, performance, web-vitals, lighthouse, apis
Security (vik+/htt)19,828
web-almanac, studies, research, metrics, security, tls, certificates, cookies, csp, http-headers, apis, sanitization, configuration
On Coding Agents and the Future of Design (jef)19,827
ai, ai-agents, design, outlooks
Software as Fast Fashion (tan)19,826
programming, ai, sustainability, economics
Fonts (htt)19,825
web-almanac, studies, research, metrics, fonts, performance, css
The Missing Link for Web Components (kin/fro)19,824
web-components, typescript, json, mcp, ai, tooling
Building a Scroll-Driven Dual-Wave Text Animation With GSAP (cod)19,823
gsap, animations, scrolling
The Incredible Overcomplexity of the Shadcn Radio Button (pau)19,822
html, forms, complexity
Performance (25p+/htt)19,821
web-almanac, studies, research, metrics, performance, web-vitals, hints, speculation
Third Parties (htt)19,820
web-almanac, studies, research, metrics, embed-code
Using “100vw” Is Now Scrollbar-Aware (in Chrome 145+, Under the Right Conditions) (bra)19,819
css, units, scrolling, chrome, google, browsers
Accessibility (bog+/htt)19,818
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)19,817
design, processes
Accessible Faux-Nested Interactive Controls (eri/pic)19,816
accessibility, conformance, html, nesting
Privacy (htt)19,815
web-almanac, studies, research, metrics, privacy, legal, consent-management, do-not-track
Generative AI (chr+/htt)19,814
web-almanac, studies, research, metrics, ai, robotstxt, llmstxt
WebAssembly (htt)19,813
web-almanac, studies, research, metrics, webassembly
CDN (htt)19,812
web-almanac, studies, research, metrics, content-delivery, http, performance, http-headers, compression, tls, hints
Usability Heuristics and Competition in Games (uxd)19,811
usability, heuristics, design, aesthetics
SEO (htt)19,810
web-almanac, studies, research, metrics, seo, robotstxt, llmstxt, links, content, structured-data, amp, html, internationalization
Cookies (htt)19,809
web-almanac, studies, research, metrics, cookies
Page Weight (bar+/htt)19,808
web-almanac, studies, research, metrics, performance, web-vitals, lighthouse, google
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability (ric/the)19,807
tailwind, comparisons, css-in-js, maintainability, css, javascript
So You Think Your Website Is Doing Great (cit)19,806
html, javascript, css, quality
Beyond Manual Audits: How Automation Strengthens Accessibility (equ)19,805
accessibility, auditing, automation, wcag
Making GitHub Actions Suck a Little Less19,804
github-actions
Node.js January 2026 Security Release: What Changed and Why It Matters (nod)19,803
nodejs, security
The “Senior Developer” Is Now the New “Entry Level”19,802
career, ai
Smashing Animations: Theming Animations Using CSS Relative Colour (mal/sma)19,801
animations, colors, theming, css
The Unhinged World of Tech in 2026… (fir)19,800
videos, outlooks, ai, javascript
Live Region Support (aar)19,799
accessibility, live-regions, support, screen-readers, nvda, jaws, voiceover
Everything You Need to Know About Ruby 4.0 (hon)19,798
ruby
EPUB and HTML—Survey Results and Next Steps (rei/w3c)19,797
surveys, epub, html
ARIA Roles Can Remove Their Children’s Semantics (ste)19,796
html, aria, semantics, accessibility
Traditional Code Review Is Dead: What Comes Next? (the)19,795
code-reviews, ai, processes, infrastructure, scalability
18 Predictions for 202619,794
outlooks, ai, usability, user-experience
Introducing the “<geolocation>” HTML Element (tom+/dev)19,793
introductions, html, geolocation, chrome, google, browsers
The Invisible Work (hvp)19,792
leadership, productivity, processes
Mitigating Denial-of-Service Vulnerability From Unrecoverable Stack Space Exhaustion for React, Next.js, and APM Users (mco+/nod)19,791
nodejs, security, vulnerabilities, react, nextjs, tooling, monitoring, performance
Tuesday, January 13, 2026 Security Releases (nod)19,790
release-notes, nodejs, security
Simulating Crop Marks (chr/fro)19,789
css
Astro 6 Beta (mat)19,788
release-notes, astro
Just the Browser (cor)19,787
websites, browsers, chrome, google, firefox, mozilla, edge, microsoft
Design Systems and Shareable Browser Support (rob)19,786
design-systems, browsers, browserslist, support
A Polyfill for the HTML “switch” Element (tom)19,785
html, forms, polyfills
Solid.js Best Practices (bre)19,784
solidjs, best-practices, examples
Is There Too Much Design in Design Systems? (sha)19,783
design, design-systems
Don’t Start With AI, Start With the Problem (cal/nng)19,782
videos, ai, processes
Aspire for JavaScript Developers (dav/mic)19,781
tooling, javascript, typescript
Manufacturing as Code Is the Future, and the Future Is Now19,780
programming, outlooks
OpenCode vs. Claude Code (bui)19,779
opencode, claude, anthropic, ai, comparisons
Stop Turning Everything Into Arrays (and Do Less Work Instead)19,778
javascript, methods, arrays
SVG Filters Are Just Amazing (ami)19,777
svg, filters
Focus Rings With Nested “contrast-color()”? (dav)19,776
css, selectors, functions, focus, contrast
Stop Using MySQL in 2026, It Is Not True Open Source (ott)19,775
mysql
Don’t Fall Into the Anti-AI Hype (ant)19,774
ai, career
How Wrong Can a JavaScript Date Calculation Go? (phi)19,773
javascript, time, apis
On Abbreviating Accessibility (ons)19,772
accessibility, microcontent
What Is the Minimum Markup Needed to Create a Modal?19,771
modals, minimalism, html, css, accessibility
Prompt Engineering Won’t Fix Your Architecture19,770
architecture, ai
How to Steal Any React Component19,769
react, components
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)19,768
mobile, javascript, animations
Death to Scroll Fade (dbu)19,767
scrolling, effects, performance
How Markdown Took Over the World (ani)19,766
markdown, web
Not All Browser APIs Are “Web” APIs (pol)19,765
apis
Brief Note on Application Keyboard Shortcuts (aar)19,764
accessibility, keyboard-shortcuts, screen-readers
Your Brand Just Evolved: The Rise of AI-Generated Identities (web)19,763
design, branding, ai
Very Good Components (bee)19,762
websites, components, html
Popover Context Menus With Anchor Positioning (chr/fro)19,761
css, tooltips, pop-overs, anchor-positioning
Node.js Package Configuration Guide (nod)19,760
guides, packages, dependencies, configuration, commonjs, esm
Judging Severity in Accessibility Issues (joe)19,759
accessibility
What Makes a Good Tech Meet-Up?19,758
discussions, community
A Data Model for Git (and Other Docs Updates) (b0r)19,757
git
Async React19,756
videos, react, asynchronicity
Exploring React Performance (en-)19,755
videos, react, performance
Profiling With React Performance Tracks19,754
videos, react, profiling, performance
Designing Page Transitions19,753
videos, design, transitions, effects
Software Is Culture (fig)19,752
culture
2026 Accessibility Hiring Looks Busy, Yet the Patterns Show Underlying Weakness19,751
accessibility, career
Common Misconceptions About Testing Accessibility (tet)19,750
accessibility, testing
Modern Emails Using React19,749
videos, email, react
Date Is Out, Temporal Is In (wil/pic)19,748
javascript, time
Ethical and Resilient Blog Hosting (pad)19,747
hosting, blogging, ethics
npm to Implement Staged Publishing After Turbulent Shift Off Classic Tokens (sar/soc)19,746
npm, dependencies, security, github
Web Dependencies Are Broken—Can We Fix Them? (lea)19,745
dependencies, javascript, import-maps, web-platform
4 CSS Features Every Front-End Developer Should Know in 2026 (arg)19,744
css, functions, scrolling
Designing With AI-Readable Design Systems in Cursor (uxd)19,743
design, design-systems, ai, cursor, code-editors
5 Accessibility Checks to Run on Every Component (hdv/zer)19,742
accessibility, components, testing, keyboard-navigation, design-tokens, microcontent, zooming, screen-readers
Google Broke My Heart (per)19,741
google, search, licensing, legal
2025 JavaScript Rising Stars19,740
javascript, frameworks, libraries, react, vuejs, tooling, ai, mobile, desktop, state-management, css-in-js, testing, static-site-generation, graphql, retrospectives
How to Create a Pixel-to-Voxel Video Drop Effect With Three.js and Rapier (cod)19,739
how-tos, javascript, effects, tooling, gsap, threejs
We Fixed a 6-Year-Old JavaScript Memory Leak (deb)19,738
javascript, memory
JavaScript Frameworks—Heading Into 2026 (rya/thi)19,737
javascript, frameworks, outlooks, ai
How I Evaluate an ACR (VPAT) (aar)19,736
accessibility, compliance, vpat-acr, processes
Claude Devs Complain About Surprise Usage Limits, Anthropic Blames Expiring Bonus (tho/the)19,735
claude, anthropic, ai
Eric Bailey’s Predictions for the Future of Accessibility (eri)19,734
accessibility, outlooks
Streaming JSON in Just 200 Lines of JavaScript19,733
streaming, json, javascript
Anna Thielke’s Predictions for the Future of Accessibility19,732
accessibility, outlooks
Damian Sian’s Predictions for the Future of Accessibility19,731
accessibility, outlooks
Kai Wong’s Predictions for the Future of Accessibility19,730
accessibility, outlooks
The Nine Levels of JavaScript Dependency Hell (and)19,729
javascript, dependencies, maintainability
Pre-Tenuring in V8 (win)19,728
v8, javascript-engines
How to “@ scope” CSS Now That It’s Baseline (dxn/fro)19,727
css, scope, examples
I Built an App in Every Frontend Framework19,726
frameworks, libraries, react, vuejs, svelte, angular, lit, marko, jquery, alpinejs, solidjs, astro, qwik, comparisons
How GitHub Monopoly Is Destroying the Open Source Ecosystem (plo)19,725
foss, github, microsoft
WASI 1.0: You Won’t Know When WebAssembly Is Everywhere in 2026 (the)19,724
webassembly, components, standards
The Next Two Years of Software Engineering (add)19,723
programming, career, outlooks, ai
V7: Typographic Scales and Technical Pens19,722
design, typography, css, case-studies
How Browsers Work (dmy)19,721
websites, guides, browsers, urls, http, tcp, html, dom
TIL: Why ARM Has a JavaScript Instruction19,720
javascript
Sounds on the Web19,719
web, multimedia
Being a Colourblind Designer (wpa)19,718
videos, accessibility, color-blindness, colors, design
21 Lessons From 14 Years at Google (add)19,717
lessons, google, career
Web Development Is Fun Again19,716
ai, creativity
The Package Management Landscape (and)19,715
dependencies, tooling, overviews, link-lists
The Code Review That Cost $2 Million19,714
code-reviews, economics, ai
Managing Infrastructure Across Multiple Environments19,713
infrastructure, dev-ops, maintenance
Building a JavaScript Runtime in One Month (the)19,712
javascript, runtimes, functionality
10 UX Design Shifts You Can’t Ignore in 2026 (uxd)19,711
design, user-experience, ai, outlooks
2026: The Year of My Website (the)19,710
indieweb, social-media
Security Basics for Vibe-Coders (owe/pro)19,709
fundamentals, security, vibe-coding, ai
A Website to Destroy All Websites (hen)19,708
web, indieweb
JavaScript’s “for…of” Loops Are Actually Fast19,707
javascript, loops, performance
“!important” and CSS Custom Properties (chr/fro)19,706
css, custom-properties, cascade
On Using IndieWeb Protocols Like Webmentions and Keeping Your Website Separate From Social Media (pat)19,705
indieweb, webmentions, social-media
Teaching Agents About Performance Insights (web/per)19,704
performance, ai, ai-agents
Chrome DevTools Features I Use All the Time (and Why You Should Too) (kee/per)19,703
dev-tools, chrome, google, browsers, performance, accessibility, lighthouse, network, embed-code
What Happened to WebAssembly (emn)19,702
webassembly
More Efficiency, More Demand19,701
efficiency, ai, career
Building the Brain of Your Accessibility AI (ted)19,700
accessibility, ai
The Curious Case of the Shallow Session SPAs (sli/per)19,699
performance, single-page-apps, javascript, frameworks, metrics
From Theory to Tiny: Implementing Compression Dictionaries (rya/per)19,698
performance, compression, content-delivery
How Can You Tell What’s Allowed Inside Each HTML Element?19,697
html, conformance
Touch Targets and Web Accessibility19,696
accessibility, touch
Testing Methods: Status Messages (dec)19,695
accessibility, testing, wcag, notifications, link-lists
What’s !important: Conditional View Transitions, CSS/SVG Text Effects, the Best of CSS Bluesky, and More (dxn/css)19,694
css, retrospectives
8 Predictions for 2026: What Comes Next in AI? (phi)19,693
ai, outlooks
The 8 Trends That Will Define Web Development in 2026 (log)19,692
trends, outlooks, ai, frameworks, tanstack, typescript, edge-computing, presentational-html
Testing Methods: Name, Role, Value (dec)19,691
accessibility, testing, wcag, aria, link-lists
HTML Content Categories19,690
html, semantics
How to Design for (and With) Deaf People (vit/sma)19,689
how-tos, design, accessibility
7 Steps of a Web Performance Journey (ser/per)19,688
performance, processes
Introducing Flint (jos)19,687
introductions, tooling, linting
7 Real Predictions for Web Design in 2026 (web)19,686
design, outlooks, ai, aesthetics
“Why Do You Code?”—a Surprisingly Hard Question19,685
discussions, programming, career
Why Developers Are Ditching Frameworks for Vanilla JavaScript (the)19,684
frameworks, javascript, apis, performance, micro-frontends, architecture
Opening and Closing Dialogs Without JavaScript Using HTML Invoker Commands (sch)19,683
modals, html
Reliability by Design (uxd)19,682
design, ai, link-lists
pnpm in 2025 (koc/pnp)19,681
pnpm, retrospectives
Third Parties and Single Points of Failure (pau/per)19,680
performance, embed-code, metrics
How I Write Custom Elements With “lit-html” (fro)19,679
web-components, lit
How to Dynamically Install Custom Elements (hey)19,678
how-tos, web-components, naming, javascript
Testing Methods: Accessible Authentication (Enhanced) (dec)19,677
accessibility, testing, wcag, authentication, security
The Final Nail in the HTML5 Document Outline Coffin (tem)19,676
html, headings, accessibility
Tests for CSS Generated Content Alternative Text19,675
css, generated-content, alt-text, accessibility, support, voiceover, nvda, jaws, screen-readers
Testing Methods: Accessible Authentication (Minimum) (dec)19,674
accessibility, testing, wcag, authentication, security
Tips for Making the Performance Panel Less Overwhelming (duf/per)19,673
performance, dev-tools, browsers, chrome, google, tips-and-tricks
JavaScript Creator Warns Against “Rushed Web UX Over Native” as Windows 11 Leans Harder on WebView2 and Electron (win)19,672
windows, microsoft, web-apps, electron
Testing Methods: Redundant Entry (dec)19,671
accessibility, testing, wcag, forms
Trends That Defined JavaScript in 2025 (low/the)19,670
javascript, trends, retrospectives, react, frameworks, tooling, ai
Chrome DevTools for Debugging Web Performance (nuc/per)19,669
performance, debugging, dev-tools, chrome, google, browsers
You Can’t Design Software You Don’t Work On (sea)19,668
software-design, architecture
Testing Methods: Error Prevention (All) (dec)19,667
accessibility, testing, wcag, errors
Revisiting HTML Streaming for Modern Web Performance (per)19,666
performance, html, streaming
The Most Dangerous Person on Your Team Is “Dave” (and He Just Quit) (hac)19,665
collaboration, documentation, ai, prompting
The Cost of Consistency: Avoiding Design System Bottlenecks (omi)19,664
design-systems, consistency, lessons, angular
Testing Methods: Help (dec)19,663
accessibility, testing, wcag
Chasing BFCache Navigations (per)19,662
performance, bfcache, caching
How to Stay Ahead of AI as an Early-Career Engineer (gwe/iee)19,661
how-tos, career, ai
Ruby Turns 30: A Celebration of Code, Community, and Creativity (jet)19,660
ruby, ruby-on-rails, history, anniversaries
Nobody Knows How Large Software Products Work (sea)19,659
programming, software-design, complexity, maintainability
TTFB Doesn’t Mean What You Think It Means (pro/per)19,658
performance, concepts, http
The Three Semantics of HTML (mat)19,657
html, semantics
Node.js in 2026 with Rafael Gonzaga (raf)19,656
podcasts, interviews, nodejs, outlooks
Why Object of Arrays (SoA Pattern) Beat Interleaved Arrays: A JavaScript Performance Rabbit Hole19,655
javascript, performance, arrays
Fixing TypeScript Performance Problems: A Case Study (vig)19,654
typescript, performance, case-studies
Testing Methods: Error Suggestion (dec)19,653
accessibility, testing, wcag, errors, link-lists
For the Love of “<details>” (dev/mat)19,652
disclosure-widgets, html
Web Components Are the Comeback Nobody Saw Coming (the)19,651
web-components, frameworks, developer-experience
Fixing the URL Params Performance Penalty (tun/per)19,650
performance, urls, caching, http-headers, examples
The AI Divide19,649
ai, studies, research
The Two Most Important Tools for HTML Developers19,648
tooling, html, conformance, minification, html-minifier, htmlnano
Five Accessibility Trends to Watch in 202619,647
accessibility, trends
Testing Methods: Labels or Instructions (dec)19,646
accessibility, testing, wcag, labels, forms, link-lists
2026 Predictions: The Next Big Shifts in Web Accessibility (web)19,645
accessibility, outlooks, ai, wcag, html
Optimizing for 75% Is Fine—Optimizing for 90% Is Where It Gets Interesting (jor/per)19,644
performance, web-vitals, optimization
The HTML Elements Time Forgot (val/mat)19,643
html, history
A Year of Vibes (mit)19,642
ai, retrospectives, wish-lists
“text-decoration-inset” Is Like Padding for Text Decorations (dxn/css)19,641
css
Did You Know Some ARIA Roles Remove Child Semantics?19,640
html, aria, semantics, accessibility
Testing Methods: Error Identification (dec)19,639
accessibility, testing, wcag, errors, link-lists
Insights From 100 Site Speed Reviews in 2025 (per)19,638
performance, retrospectives
Styling by Language: Using the “lang” Attribute for Multilingual Design (mat)19,637
html, internationalization, css
The Many Lives of the Page Title (kat/mat)19,636
html, user-experience, accessibility, wcag
Optimizing CLS for Infinite Scroll and Load More (ver/per)19,635
performance, web-vitals, scrolling, optimization
8 PostgreSQL Tricks (kem)19,634
postgresql, databases, tips-and-tricks
Testing Methods: Consistent Help (dec)19,633
accessibility, testing, wcag, consistency
Tech Talk: Improving Window Resize Behavior (ele)19,632
electron, resizing, debugging, case-studies
Accessibility Is Personal (css)19,631
accessibility, html
The Anatomy of an Accessible Text Field (ink)19,630
forms, accessibility, html, labels
Early Signs of EAA Enforcement Across Europe (deq)19,629
accessibility, eaa, legal, compliance
Testing Methods: Change on Request (dec)19,628
accessibility, testing, wcag, link-lists
Introducing CSS Grid Lanes (jen+/web)19,627
introductions, css, masonry, layout
Masonry Layout Is Now Grid-Lanes (sun/css)19,626
css, layout, masonry
5 Terminal Commands That Saved Me Hours of Clicking19,625
command-line, productivity
Targeting by Reference in the Shadow DOM (mey)19,624
shadow-dom, html, javascript