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, 1990s to Now

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#
There Is No “Wrong” in CSS (j9t)20,293
css, quality
SVG Favicons That Respect Theme Preference (paw)20,292
svg, favicons, images, dark-mode
How Can Governments Pay Open Source Maintainers? (ede)20,291
foss, economics
What Is Content Decay? (And How to Fix It Before It Tanks Your Traffic) (lou/ahr)20,290
how-tos, content, maintenance, seo
Supply-Chain Attack Using Invisible Code Hits GitHub and Other Repositories (dan/ars)20,289
security, github, dependencies
The Emerging AI Agents War20,288
ai-agents, ai, scraping, amazon, ecommerce
Avoiding “z-index” (don)20,287
css, positioning
The Dark Side of AI No One Talks About (jam/moz)20,286
ai, seo, robotstxt
Useful CSS Properties That Don’t Get Enough Attention (kev)20,285
videos, css
Abusing Customizable Selects (pat/css)20,284
forms, html, css, functions
AI Productivity Gains Are 10%, Not 10×20,283
ai, productivity, studies, research, metrics
Nominal Types in WebAssembly (win)20,282
webassembly, types
Source Maps: Shipping Features Through Standards (jon/blo)20,281
source-maps, javascript
What’s New in DevTools (Chrome 146) (mat/dev)20,280
release-notes, dev-tools, chrome, google, browsers
Building Dynamic Forms in React and Next.js (sma)20,279
forms, react, nextjs, javascript
Amazon Calls Engineers for a “Deep Dive” Internal Meeting to Discuss “GenAI”-Related Outages (the)20,278
amazon, aws, ai, quality
How Much Do Keywords Matter in 2026? (moz)20,277
keywords, seo, search, google
Persuasive Design: Ten Years Later (sma)20,276
design, hci, retrospectives
The Value of “z-index” (ami/css)20,275
css, positioning
View Transitions Can Swoop‽ (arg)20,274
css, view-transitions, effects
How Internet Sovereignty Is Reshaping Company Tech Stacks20,273
web, tech-stacks
What Are Secondary Keywords? (And How to Use Them) (ahr)20,272
how-tos, keywords, seo
Hardening Firefox With Anthropic’s Red Team (moz)20,271
firefox, mozilla, browsers, ai, anthropic
AdonisJS 7 Transformers: A Deep Dive (mez)20,270
deep-dives, adonisjs, type-safety
Product Ethics Have Never Mattered More (uxd)20,269
product-management, ethics, ai, anthropic, openai, link-lists
Request for Developer Feedback: “focusgroup” (jac/dev)20,268
html, attributes, chromium, browsers
A GitHub Issue Title Compromised 4,000 Developer Machines20,267
security, github, ai
One CSS Property That Makes Numbers Look Instantly Better (ami)20,266
css
The Different Ways to Select “<html>” in CSS (dxn/css)20,265
html, css, selectors
[SolidJS] v2.0.0 Beta—the “<suspense>” Is Over Pre-Release (rya/sol)20,264
release-notes, solidjs
“display: green;”—Applying the Web Sustainability Guidelines (hdv/per)20,263
videos, sustainability
How to Steal npm Publish Tokens by Opening GitHub Issues (nec)20,262
npm, github, security, ai
Building a New Flash20,261
flash, tooling
Big Tech’s War on Democracy20,260
ai, anthropic
Announcing the Node.js LTS Upgrade and Modernization Program (ope)20,259
nodejs
Date Math in Javascript: The Hidden Trap You’ll Eventually Hit (phi/hac)20,258
javascript, time, math, apis
Nobody Gets Promoted for Simplicity (ter)20,257
simplicity, complexity, career
W3C Accessibility Guidelines (WCAG) 3.0 (ala+/w3c)20,256
w3c, accessibility, guidelines, wcag
OpenAI Alters Deal With Pentagon as Critics Sound Alarm Over Surveillance (kev+/nbc)20,255
ai, openai, privacy, legal
What I Like About WCAG 3.0 (kar)20,254
accessibility, wcag
Eleventy Is Now Build Awesome (zac/11t)20,253
eleventy
Proxying Fetch Requests in Server-Side JavaScript (nza)20,252
javascript, data-fetching, nodejs, deno, bun, cloudflare
Seven Years to TypeScript: Migrating 11,000 Files at Patreon20,251
migrating, javascript, typescript, case-studies
Finding an Accessibility-First Culture in npmx (abb/pic)20,250
accessibility, culture
Get Features Faster With Chrome’s Two-Week Release Cycle (dev)20,249
chrome, google, browsers
1995: From Batman Forever’s Cinematic Design to HTML Tables (ric)20,248
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,247
chrome, google, browsers
Getting Started With the Popover API (sma)20,246
introductions, pop-overs, tooltips, apis, javascript
Microsoft Banned the Word “Microslop” in Its Copilot Discord Server, Then Began Restricting Access After Users Started Posting “Microsl0p” and Other Funnies (pcg)20,245
microsoft, ai, slop
Sticky Grid Scroll: Building a Scroll-Driven Animated Grid (the/cod)20,244
tutorials, css, grids, layout, scrolling, gsap
MCP Servers and the Return of the Service Account Problem (aem)20,243
servers, mcp, ai, security
Web Sustainability Guidelines Update (tzv/w3c)20,242
videos, w3c, sustainability, guidelines
A11y 101: 2.5.2 Pointer Cancellation (nat)20,241
introductions, accessibility
Palestinians Call for Increased Pressure on the Tech Companies Powering Israel’s Occupation and Gaza Genocide That Also Enable ICE Violence in the US (bds)20,240
privacy, ethics, microsoft, google, amazon
The Odometer Effect (Without JavaScript) (pre/fro)20,239
css, functions, effects
January 2026 Baseline Monthly Digest (mal/dev)20,238
browsers, support, web-platform, css, view-transitions, javascript, web-workers, apis, units
Why React 19’s Compiler Changes Everything for Senior Devs20,237
react, compiling
Get Your War On: AI Chatbots in the Kill Chain (dav)20,236
ai, anthropic, openai
External Import Maps, Today (lea)20,235
javascript, import-maps
How OpenAI Caved to the Pentagon on AI Surveillance (hay/ver)20,234
openai, ai, privacy
Popover API or Dialog API: Which to Choose? (zel/css)20,233
pop-overs, modals, apis, accessibility, javascript
Expose Your Design System to LLMs (hvp)20,232
design-systems, ai
Figcaptions Versus Alt Text (tem)20,231
html, images, alt-text, accessibility, comparisons
Quick Tip: Hosting HTML/CSS/JS Demos From Source Code on GitHub Pages (cod)20,230
hosting, github-pages, tips-and-tricks
The Most-Seen UI on the Internet? Redesigning Turnstile and Challenge Pages (clo)20,229
cloudflare
Configuration Collapse (nat)20,228
figma, components, configuration, props
Define the Theme Color for Safari 26 (gro)20,227
safari, apple, browsers, css
Claude Code vs. Cursor: Which AI IDE Wins for Real Development Work?20,226
claude, anthropic, cursor, ai, code-editors, comparisons
Yet Another Way to Center an (Absolute) Element (mon/css)20,225
css, centering
I Set Up My Own Web Server and Here’s What I Learned About nginx20,224
servers, nginx
Eleventy: How to Work Around the “Git Last Modified” Performance Bottleneck (j9t)20,223
how-tos, eleventy, git, performance
Why Is WebAssembly a Second-Class Language on the Web? (eqr/moz)20,222
webassembly
A Design Turn20,221
design, ai, career
Release Notes for Safari Technology Preview 238 (jon/web)20,220
release-notes, safari, apple, browsers
When Building Is Free, What’s Worth Building? (uxd)20,219
ai, vibe-coding, prototyping, user-experience, usability
New to the Web Platform in February (rac/dev)20,218
release-notes, web-platform, browsers, chrome, google, firefox, mozilla, safari, apple
Lessons Learned From Failed Demos: Pure CSS Nav Thumb Flip on Scroll (ana/fro)20,217
lessons, css, effects
CSS Snapshot 2026 (fri+/w3c)20,216
css, standards
Create Pages From JSON Files With Eleventy (san)20,215
eleventy, json, static-site-generation
The Pentagon Is Making a Mistake by Threatening Anthropic (bin)20,214
ai, anthropic
An Exploit… in CSS?! (css)20,213
css, security
When Is a Link Not a Link? (dec)20,212
html, links, semantics, accessibility
AdonisJS v7 Is Here (vir/ado)20,211
release-notes, adonisjs
“Harmless” Website Updates Can Create Serious Problems for Your Users—Here’s How It Happens20,210
maintenance, accessibility
Accessibility Considerations for Off-Site Navigation and Downloads20,209
accessibility, navigation
16 Modern JavaScript Features That Might Blow Your Mind20,208
javascript
A Complete Guide to Bookmarklets (val/css)20,207
guides, bookmarklets, javascript, link-lists
The Rise of “Micro-Backends”: Why Frontend Devs Are Adopting Hono20,206
hono, express, comparisons, backend-for-frontend, architecture
Developer Experience at Scale—Lessons From Dropbox20,205
interviews, developer-experience, productivity, tooling, ai, lessons
CSS Masonry Layout Is Finally Coming: Native Grid Support Explained20,204
css, masonry, layout, examples
20,000 (fro)20,203
frontend-dogma
If Code Is Cheap, Intent Is the Currency20,202
ai-agents, ai, code-reviews, documentation
How We Rebuilt Next.js With AI in One Week (sou/clo)20,201
nextjs, ai, cloudflare, deploying
The React Foundation: A New Home for React Hosted by the Linux Foundation (mat/rea)20,200
react, facebook+meta
Best Practices for CSS Scope in Angular Applications (ale)20,199
css, scope, angular, best-practices
Oxfmt Beta (bos+)20,198
release-notes, formatting, tooling
x86 CPU Made in CSS (reb)20,197
css, programming, functionality
Firefox 148 Brings Central AI Control and New Web Standards (hei)20,196
firefox, mozilla, browsers
How I Setup Production-Grade Deployment for My (Somewhat) Vibe-Coded App (mar/fro)20,195
deploying, aws
Web AI: Everything You Need to Know About On-Device AI for the Web20,194
ai
On Software Quality (nic/pxl)20,193
quality, apple
Breakpoints (css)20,192
design, accessibility, mobile, css
AI as Art Director: Can Machines Develop Taste? (web)20,191
ai, design, aesthetics
Loading Smarter: SVG vs. Raster Loaders in Modern Web Design (hol/css)20,190
images, svg, progress-indicators, performance
How to Publish to npm From GitHub Actions (bah)20,189
how-tos, npm, github-actions
Dictionary Compression Is Finally Here, and It’s Ridiculously Good (pim/htt)20,188
compression, performance, javascript
From “instanceof” to “Error.isError”: Safer Error Checking in JavaScript20,187
javascript, errors
Upskilling in the AI Age (dac)20,186
ai, tooling, learning
Getting Started With the Vercel AI SDK in Node.js20,185
introductions, nodejs, ai, vercel
Matt May Speaks (mat+)20,184
videos, interviews, accessibility, html, standards
Stop Using “/init” for AGENTS.md (add)20,183
ai, configuration, documentation
Sprites on the Web (jos)20,182
css, images, sprites, techniques
Native HTML Components Don’t Guarantee Good UX (ada)20,181
html, components, user-experience
Standard HTML Video and Audio Lazy-Loading Is Coming (sco)20,180
html, multimedia, lazy-loading, standards, performance
Wasm vs. Javascript: Who Wins at a Million Rows? (the)20,179
webassembly, javascript, comparisons, performance
ACCESSIBILITY.md (mgi)20,178
accessibility, documentation
Why AI Is Exposing Design’s Craft Crisis20,177
ai, design, craft, figma, link-lists
My Malware Story Gets Stolen; Yet Another Argument for the IndieWeb (bre)20,176
malware, indieweb, licensing
“Made in EU”—It Was Harder Than I Thought20,175
privacy, hosting, tooling, tech-stacks
Everything You Never Wanted to Know About “visually-hidden” (dbu)20,174
html, css, hiding, accessibility
Lil’ Fun Langs (sur)20,173
programming, overviews, link-lists
Git Is the New Code (nec)20,172
ai, git, command-line, code-reviews
The Software Development Lifecycle Is Dead (bor)20,171
processes, ai, ci-cd
Weird Issues With CSS Calculations in Safari 26.2 (cit)20,170
css, functions, safari, apple, browsers
Potentially Coming to a Browser “:near()” You (dxn/css)20,169
css, functions
WordPress 7.0 Beta 1 (wor)20,168
release-notes, wordpress
Big Tech Still Dreams of Mass Surveillance—Now People Are Pushing Back (tro/sal)20,167
privacy, amazon, google, ai
An Official* Logo for HTML (zac)20,166
html
Notes on Relying on the ARIA Authoring Practices Guide (ste)20,165
aria, accessibility, html
Design Systems Can’t Automate Away All of Your Accessibility Considerations (eri/zer)20,164
design-systems, components, automation, accessibility, aria
Using the Browser’s “<canvas>” for Data Compression20,163
canvas, compression
A Web Revival: The Internet Didn’t Die, You’re Just Not on It20,162
videos, indieweb, web
An In-Depth Guide to Customising Lists With CSS (ric/pic)20,161
guides, css, lists
8 Things You Didn’t Know About Code Mode (bla)20,160
ai
Fastest Frontend Tooling for Humans and AI20,159
tech-stacks, tooling, typescript, developer-experience, optimization
Suffering From Bugs: How I Almost Deleted My Entire Project20,158
bugs, lessons
“border-shape”: The Future of the Non-Rectangular Web (una)20,157
css, shapes, borders
Vitest vs. Jest 2026: The Migration Guide With Real Benchmarks20,156
guides, migrating, vitest, jest, comparisons
Tailwind CSS v4: Container Queries and the Death of Media Queries20,155
tailwind, container-queries, media-queries, css
Claude Sonnet 4.6 vs. GPT-5: The 2026 Developer Benchmark20,154
claude, anthropic, openai, ai, comparisons, metrics, programming, documentation
Sometimes the Best Accessibility Fix Is a Usability Fix20,153
accessibility, usability
When Accessibility Demand Letters Land on Your Desk: A Framework for Strategic Response (dec)20,152
accessibility, strategies
Why Separate Guest and Logged in States Create Accessibility Barriers20,151
accessibility, authentication
Why You Need to Close Open Objects When Users Navigate Away20,150
accessibility, wcag
AI Is Giving Tech Companies Power That Once Belonged to Governments (res)20,149
ai, economics
5 CSS Fouls That I See Way Too Often (kev)20,148
videos, css
Distinguishing “Components” and “Utilities” in Tailwind (zel/css)20,147
tailwind, terminology
Analyst Reactions: How AI Is Reshaping Engineering Organizations20,146
ai, engineering-management
From Random Chunks to Real Code—Wiring Up Next.js Source Maps in Sentry (get)20,145
nextjs, source-maps
Design Docs Considered Harmful20,144
documentation, software-design
The Future of Design Is Code and Canvas (zoi/fig)20,143
figma, design, outlooks
Building Typographic Scales in CSS With “:heading()”, “sibling-index()”, and “pow()” (stu)20,142
css, functions, math, typography
Igalia’s Eric Meyer and Ujjwal Sharma Chat With Designer, CSS Developer, and Illustrator Lynn Fisher (lyn+/iga)20,141
podcasts, interviews, css, design
Designing for Transparent Screens20,140
design, transparency, readability
Web Development Is More Than Frontend and Backend (Here’s What Actually Matters)20,139
programming, career
Selectors Level 5 (fan+/w3c)20,138
css, selectors, standards
5 Source Map Best Practices for Frontend Production Deployments (ele/des)20,137
guest-posts, source-maps, javascript, best-practices
Europe Is Ready to Ditch US Tech for Private Alternatives (pro)20,136
tooling, privacy, security, metrics
Europeans Are Dangerously Reliant on US Tech—Now Is a Good Time to Build Our Own (joh/the)20,135
economics, policies, google, microsoft, amazon
We Cut Node.js’ Memory in Half (mco/pla)20,134
nodejs, v8, javascript, memory, metrics
Interop 2026 (geo/css)20,133
interoperability, web-platform, browsers, support, link-lists
Spiral Scrollytelling in CSS With “sibling-index()” (css)20,132
css, functions, scrolling, gsap
Why We Hate AI (fal)20,131
ai
Angular Bindings: What Are They and How Do I Use Them? (ato)20,130
angular
Agentic UX: 7 Principles for Designing Systems With Agents (uxd)20,129
ai-agents, ai, design, principles
Anchored Menus and a Lesson in Scoping (chr/fro)20,128
css, anchor-positioning, scope, lessons
Here’s How to Instruct a LLM to Reference the ARIA Authoring Practices Guide (eri)20,127
how-tos, ai, aria, accessibility
The Hidden Cost of AI Prototypes That Are Made to Die (uxd)20,126
prototyping, ai, design, product-management
How “Liquid Design” Broke the iPhone and Forced Apple’s Great Reset (web)20,125
design, usability, readability, liquid-glass, apple
Why It’s Important to Manually Test for Accessibility20,124
accessibility, testing
Style Headings Using the CSS “:heading” Pseudo-Class (stu)20,123
headings, css, selectors
Why Your CEO Acts Like a Clown: The Tribal Myths of Leadership (uxd)20,122
leadership, culture, engineering-management
Why WebAIM’s Report Only Found 6 Issues on a Million Pages20,121
videos, accessibility, webaim
We Scanned 250 Node.js Repos for Blocking I/O: 76% Had It—and the Benchmarks Explain Why That Matters20,120
nodejs, file-handling, performance, metrics
How Fast Is Fast Enough? Rethinking Web Performance in Pragmagical Terms (tam/spe)20,119
performance, user-experience, concepts
Justifying “text-wrap: pretty”20,118
css, typography
Quick and Dirty Linting (sto)20,117
linting, typescript, javascript, biome
A Programmer’s Loss of a Social Identity (rat)20,116
programming, career, community
JS-Heavy Approaches Are Not Compatible With Long-Term Performance Goals (ser)20,115
javascript, frameworks, performance, prioritization
Fun With TypeScript Generics (ada/fro)20,114
typescript, generics
Are We Having the Wrong AI Dreams? (jet)20,113
ai, outlooks
The EU Moves to Kill Infinite Scrolling (egr/pol)20,112
social-media, scrolling, legal
How to Debug the “@ starting-style” At-Rule in Polypane (pol)20,111
how-tos, debugging, css, animations, polypane, browsers
Virtual Scrolling for Billions of Rows—Techniques From HighTable (sev)20,110
html, tables, scrolling, performance, react
State of React 2025 [Results] (sac/dev)20,109
surveys, metrics, react
You Might Not Need “role="presentation"” (stv/pic)20,108
html, aria, accessibility
Interop 2026: Continuing to Improve the Web for Developers (rac/dev)20,107
interoperability, web-platform, browsers, support
Evaluating AGENTS.md: Are Repository-Level Context Files Helpful for Coding Agents? (ves+)20,106
studies, research, ai, ai-agents, documentation
Mastering Dialog Accessibility20,105
accessibility, modals, html, aria
Launching Interop 2026 (jaf/moz)20,104
interoperability, web-platform, browsers, support
Accessibility Contractors Have Their Place-but It’s Not Everywhere20,103
accessibility, business-relations, processes
The Beautiful Web (j9t)20,102
web, indieweb
Radix UI vs. Base UI (sha)20,101
react, libraries, radix, comparisons
The 80% Job: How Design Leads Are Using AI—and It’s Not About Mockups (uxd)20,100
design, ai, prototyping, communication, leadership, product-management, link-lists
What It Really Costs to Run a WordPress Website in 202620,099
wordpress, economics
Life After Figma Is Coming (and It Will Be Glorious) (jon)20,098
design, ai, tooling, figma
Designing for Agentic AI: Practical UX Patterns for Control, Consent, and Accountability (sma)20,097
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,096
traffic, search, chatgpt, google, metrics
How to Create a CSS-Only Elastic Text Effect (css/fro)20,095
how-tos, css, effects
Re-Creating a Pantone Color Deck in CSS (sto)20,094
css
Announcing TypeScript 6.0 Beta (dan/typ)20,093
typescript
Container Timing: Measuring Web Components Performance (jda/iga)20,092
performance, web-components, chromium
You Know What? Just Don’t Split Words Into Letters (aar)20,091
accessibility, html, screen-readers, support
Does Your Navigation Need an ARIA Menu? Probably Not (pop)20,090
accessibility, navigation, aria, keyboard-navigation
The Natural Design Process (uxd)20,089
design, processes
Building an Endless Procedural Snake With Three.js and WebGL (suj/cod)20,088
threejs, webgl, javascript
Shades of Halftone (max)20,087
effects, halftone
Polypane 28: Project Improvements, Elements Panel Updates, and Chromium 146 (pol)20,086
release-notes, polypane, browsers
The Software Sovereignty Scale (dri)20,085
foss, licensing, legal
It’s About to Get a Lot Easier for Your JavaScript to Clean Up After Itself (wil/pic)20,084
javascript, garbage-collection
The 2026 Frontend Dogma Survey (fro)20,083
frontend-dogma, surveys
Webspace Invaders (mat)20,082
ai, traffic
“Design Courage”20,081
design
Modern CSS Code Snippets20,080
websites, css, examples, comparisons
Design Is Dead, It’s All Evolution Now (ily)20,079
design, processes
Designing Useful Ads (uxd)20,078
design, monetization, ai
Emotional Design: Let’s Design for Silence (uxd)20,077
design
Background Patterns With CSS “corner-radius” (pre/fro)20,076
css, backgrounds, effects, examples
Vite, Rust, and the Future of JavaScript Tooling (eva+/bet)20,075
videos, interviews, vuejs, rust, javascript, oxc, bundling, tooling, ai
Trying to Make the Perfect Pie Chart in CSS (mon/css)20,074
css, html
Large Tech Companies Don’t Need Heroes (sea)20,073
processes, engineering-management, career
Underlining Links With CSS (stu)20,072
css, links
Definitive Guide to Multi-Threaded Rendering on the Web (hac)20,071
guides, dom, rendering
Why JavaScript Needs Structured Concurrency20,070
javascript, concurrency, asynchronicity
Interop 2025: A Year of Convergence (stu/web)20,069
interoperability, web-platform, browsers, retrospectives, metrics
Why Your Brain Rebels Against Redesigns—Even Good Ones (uxd)20,068
design, redesigning, link-lists
How Generative AI Is Redefining Brand Identity Systems20,067
ai, branding, design
How (and Why) to Stop Users From Selecting Text on Your Website20,066
css
The Browser Hates Surprises (fro)20,065
browsers, performance
The CSS Selection (ven/pro)20,064
css, metrics, studies, research
What to Expect in Angular 2220,063
angular
A New Meta Tag for Respecting Text Scaling on Mobile (mat)20,062
accessibility, metadata, scaling
Your Design System Needs an Enforcer (nng)20,061
design-systems, processes
The Return of the Intuitive Designer in the Age of AI (uxd)20,060
design, user-experience, ai
Git’s Magic Files (and)20,059
git, configuration
How to Use the “Auto” Value With “clamp()” (css)20,058
how-tos, css, functions
Accessibility Conformance Testing (ACT) Rules Format 1.1 (wil+/w3c)20,057
accessibility, compliance, testing, documentation
Minifier Benchmarks (j9t)20,056
minification, tooling, metrics, comparisons, html-minifier, htmlnano
CSS “@ scope”: An Alternative to Naming Conventions and Heavy Abstractions (sma)20,055
css, scope, naming
Measuring SVG Rendering Time (sto)20,054
svg, png, images, rendering, performance, web-vitals, metrics
How to Write Alt Text for News (sta/the)20,053
how-tos, alt-text, accessibility, images
Why Designers Secretly Love Constraints (Even When We Complain About Them) (web)20,052
design
Quick Tip: Do Not Replicate OS Behavior (nat)20,051
accessibility, tips-and-tricks
What’s New in ViteLand: January 2026 Recap (man/voi)20,050
release-notes, vite, vitest, rolldown, oxc
Clarity Is Not the Enemy of Depth (the)20,049
content, writing, accessibility
How to Improve Your HTML Game (j9t)20,048
how-tos, html, conformance, learning, career
AI Will Eliminate the Need for Accessibility Professionals? I Think Not20,047
ai, accessibility, testing, career
You Probably Shouldn’t Be Annotating Focus Order (eri)20,046
accessibility, focus, forms
Stop Installing Libraries: 10 Browser APIs That Already Solve Your Problems20,045
javascript, libraries, apis, web-platform
Introduction to the New HTML Element “<geolocation>” (mat)20,044
introductions, html, geolocation
[Webpack] Roadmap 2026 (eve)20,043
webpack
CSS Properties That Solve Annoying Problems (kev)20,042
videos, css
From Basic Adoption to Meaningful Measurement: How Design System Metrics Evolve (zer)20,041
design-systems
Building Bulletproof React Components20,040
react, components
How to Shoot a Screen Using a Board of Keys (mwi)20,039
screenshots, keyboard-shortcuts, history, apple
Introducing Deno Sandbox (tin/den)20,038
deno
State of JavaScript 2025 [Results] (sac/dev)20,037
surveys, metrics, javascript
Deno Deploy Is Generally Available (lca+/den)20,036
deno
Combobox vs. Multiselect vs. Listbox: How to Choose the Right One (vit/sma)20,035
how-tos, forms, design-patterns, comparisons
Nice Select (arg)20,034
forms, css
How Eleventy Survived: Funding, Growth, and Open Source Reality (zac+/fon)20,033
podcasts, interviews, eleventy, foss
A Percise Parser (rem)20,032
javascript, parsing
Elastic/Bouncy Text Effect (css)20,031
css, effects
Accessible Inline Collapsible (eri)20,030
accessibility, html, disclosure-widgets
Accessibility Progress and Healthy Engineering Teams (hbu)20,029
accessibility, technical-debt, web-platform, prioritization
Node.js Path Traversal: Prevention and Security Guide (loi)20,028
guides, nodejs, security
Implementing the Temporal Proposal in JavaScriptCore (you/iga)20,027
javascriptcore, javascript-engines, time
Accessible Design Is Digital Infrastructure (ann)20,026
accessibility, design
What’s Missing From the Web Platform? (wes+/syn)20,025
podcasts, web-platform, wish-lists
Performance-Optimized Video Embeds With Zero JavaScript (stf/fro)20,024
multimedia, performance
What Is JPEG XL: Do We Really Need Another Image Format? (aar/deb)20,023
jpeg-xl, images, quality, performance, metrics
Release Notes for Safari Technology Preview 236 (jon/web)20,022
release-notes, safari, apple, browsers
Building an RSS Aggregator With Astro (ray)20,021
astro, rss, syndication, functionality
Explicit Resource Management in JavaScript20,020
javascript
Stop Asking “Is This on Brand?”—It’s Killing Your Creativity (web)20,019
design, branding, creativity
Limiting Work in Progress Is a Superpower20,018
project-management, processes, productivity, agile, scrum
HTML Minifier Next 5, a Quick Upgrade Guide (j9t)20,017
guides, html-minifier
Selfish AI (cre)20,016
ai
The Indie Web Is Not Defined by Its Enemies (khu)20,015
indieweb, ai
Tim Cook Sold Apple’s Soul (kev)20,014
apple
Google Helped Israeli Military Contractor With AI, Whistleblower Alleges (was)20,013
google, ai, ethics, privacy
Repeatable Form Fields Made Simple (aar)20,012
forms, html, web-components
A Broken Heart (api)20,011
performance, fonts, emoji
My Opinionated ESLint Setup for Vue Projects (ale)20,010
eslint, configuration, vuejs
Tickering With Node.js Core on ARM64 Windows (joy)20,009
nodejs, building, windows, microsoft
When Design Stops Asking Why and Starts Asking, “Can AI Do It?” (uxd)20,008
design, ai, processes, quality
The Too Early Breakpoint (sha)20,007
css, layout
“WCAG Is Difficult to Read, Don’t Read It” Is a Self-Fulfilling Prophecy (yat)20,006
wcag, standards, accessibility
AI Agents Explained (tre)20,005
ai-agents, ai
Practical Use of AI Coding Tools for the Responsible Developer (ska/sma)20,004
ai, tooling, prompting
Announcing Rspress 2.020,003
release-notes
New to the Web Platform in January (rac/dev)20,002
release-notes, web-platform, browsers, firefox, mozilla, chrome, google
How the Same Content Always Has Multiple Different Versions20,001
accessibility, content, comparisons
React’s “ViewTransition” Element (chr/fro)20,000
react, view-transitions
Understanding Hydration in Frontend Frameworks: Definition, Challenges, and Optimization Strategies (ele/des)19,999
guest-posts, frameworks, hydration, optimization, concepts, strategies
The Design System Paradox: How Abstraction Can Hollow Out Quality (pjo/zer)19,998
design-systems, quality, training
How to Make an HTTP Request in Node.js (loi)19,997
how-tos, nodejs, http
Is Learning CSS a Waste of Time in 2026?19,996
css, learning, career, discussions
Vibe Prototyping Is a Double-Edged Sword (edd/uxd)19,995
prototyping, vibe-coding, ai, design
OpenJS Foundation Security Program: Annual Report 2025 (ope)19,994
openjs, security
Cryptography Usage in Web Standards (w3c)19,993
standards, cryptography, security
Making Interesting Borders With CSS “corner-shape” (cas)19,992
css, borders
How Rolldown Works: High-Performance Code Splitting With Bitset Logic (atr)19,991
rolldown, bundling, code-splitting, performance
Why I Don’t Call Myself an Accessibility Expert19,990
accessibility, career
How an Accessibility Designer Adds Keyboard Shortcuts to a Web App (eri)19,989
web-apps, keyboard-shortcuts, accessibility
The Next Decade of UX: Why Psychology Matters More Than Ever (tbf/nng)19,988
videos, interviews, user-experience, design, outlooks
How to Design Great Alt Text: An Introduction (deq)19,987
how-tos, introductions, alt-text, images, accessibility
How to Style the New “::search-text” and Other Highlight-y Pseudo-Elements (dxn/css)19,986
how-tos, css, selectors
Introducing ReliCSS: A Tool for Front-End Archaeology (stu)19,985
introductions, tooling, css, auditing
AI’s Text-Trap: Moving Towards a More Interactive Future (uxd)19,984
ai, interaction-design, user-experience
A Year of Creator Wins: Highlights From the JetBrains Content Creators Program 2025 (jet)19,983
jetbrains, community
Are We Doing UX for AI the Right Way? (cxo/uxd)19,982
user-experience, design, conversational-design, ai, link-lists
7 Learnings From Anders Hejlsberg: The Architect Behind C# and TypeScript (git)19,981
lessons, scalability, typescript, foss, ai, collaboration
How AI Is Redefining the Way We Find Content (cle)19,980
ai, crawling, search, content, seo
Some Notes on Starting to Use Django (b0r)19,979
django
More Invoker Commands, and More Reasons Not to Use JavaScript Please (paw)19,978
html, examples
Unstacking CSS Stacking Contexts (sma)19,977
css, positioning
Try Text Scaling Support in Chrome Canary (jos)19,976
chrome, google, browsers, scaling, accessibility
We’re Creating a Knowledge Collapse and No One’s Talking About It19,975
ai, documentation, learning, career
Solving Shrinkwrap: New Experimental Technique (kiz)19,974
css, techniques
On the Need for Neutral Maintained Minifier Metrics (j9t)19,973
minification, tooling, html-minifier, htmlnano
Claude Code for Designers: A Practical Guide19,972
guides, design, claude, anthropic, ai
Design Systems Checklist (tyc)19,971
design-systems, checklists
9 Reasons to Choose Sketch in 2026 (fre/ske)19,970
sketch
Supporting Open Source in 2026: Why It Matters More Than Ever ($50,000) (mar/fro)19,969
foss, web-platform
Drawing Connections With CSS Anchor Positioning19,968
css, anchor-positioning
Improving Single Executable Application Building for Node.js (joy)19,967
nodejs
Density vs. Clarity: The Core Tension in Modern UI Design (web)19,966
design, information-design, minimalism, comparisons, figma
How Web Performance Impacts User Experience (deb)19,965
performance, user-experience, web-vitals, metrics
Why the Future of Design Is Less Flash and More Thought19,964
design, outlooks
There Is No Need to Trap Focus on a “dialog” Element (zel/css)19,963
modals, focus, accessibility
A Security Checklist for Your React and Next.js Apps (the)19,962
security, react, nextjs
Porting 100k Lines From TypeScript to Rust Using Claude Code in a Month (vje)19,961
migrating, typescript, rust, claude, anthropic, ai
SPAs Are a Performance Dead End (yeg)19,960
single-page-apps, performance
Vibe Prototyping Isn’t Solving Any Problems—but It’s Creating Many New Ones (pav)19,959
prototyping, design, ai, vibe-coding
Using Maturity Models to Build Accessibility That Lasts (ted)19,958
accessibility
Figma Slots for Repeating Items (nat)19,957
figma, components
How to Use Font Ligatures19,956
how-tos, typography, fonts, tooling, adobe, figma, microsoft, css
npmx (dan/npm)19,955
websites, npm, packages
Software Design Principles That Matter19,954
software-design, principles, examples
6 Ways to Set Better Content Accessibility Goals in 202619,953
accessibility, processes
Anchor Interpolated Morph (AIM) (arg)19,952
css, animations, techniques
Responsive Hexagon Grid Using Modern CSS (css/css)19,951
css, functions, math, responsive-design
CSS Scope and Mixins (chr+/odd)19,950
videos, interviews, css, scope, mixins
Do We All See the Same Colors? (tba)19,949
colors, color-blindness, accessibility
Names Are Hard but They Don’t Have to Be (col)19,948
internationalization, naming, validation
Handling Breaking Changes in a Design System Without Causing Chaos (sha/zer)19,947
design-systems, maintenance, semver, communication
Understanding the Fundamentals of CSS Layout (pol)19,946
fundamentals, css, layout, grids, flexbox, positioning
The Context Collapse Problem19,945
ai, documentation
CSS Optical Illusions (alv)19,944
css, effects, examples
Claude’s New Constitution (ant)19,943
claude, anthropic, ai
Why Webflow Isn’t the Future—Yet (web)19,942
webflow, low-and-no-code
10 Digital Accessibility Predictions for 2026 (ons)19,941
accessibility, outlooks, wcag, career, ai, legal, assistive-tech
When Will CSS Grid Lanes Arrive? How Long Until We Can Use It? (jen/web)19,940
css, grids, masonry, layout
CTA Hierarchy in the Wild (jim)19,939
user-experience, buttons, youtube
10 Tips for Effective User Experience Evaluation19,938
user-experience, usability, content, design, testing, tips-and-tricks
Barriers From Links With ARIA (aar)19,937
accessibility, links, html, aria
The Conditionally Open Web (cor)19,936
open-web
Why Light-Weight Websites May One Day Save Your Life (mah)19,935
performance, accessibility, print, frameworks
How to Diagnose Lighthouse Score Discrepancies Between Tools (deb)19,934
how-tos, performance, lighthouse, google, tooling
Accessibility 101 and Core Concepts (kno)19,933
videos, accessibility, introductions, concepts
Floating Action Buttons Are Bad, and What to Do Instead (eri)19,932
buttons, usability, material-design, google
The Accessibility Manager Moment No One Warns You About19,931
accessibility, leadership, legal, communication
Securing npm Is Table Stakes (nza+/cha)19,930
podcasts, interviews, npm, security, ai
What Makes Generated UI Worth Keeping? (uxd)19,929
design, ai, branding, tooling
Demystifying Screen Reader Use for Manual Testing: Deneb Pulsipher and Kosi Asabere19,928
videos, accessibility, testing, screen-readers
CSS in 2026: The New Features Reshaping Frontend Development (log)19,927
css, functions
How to Favicon in 2026: Three Files That Fit Most Needs (sit/evi)19,926
how-tos, images, favicons
I Learned the First Rule of ARIA the Hard Way (css)19,925
accessibility, aria, semantics, html
Designing Beyond the Happy Path in Design Systems (ste/zer)19,924
design-systems, design
Developing Trustworthy Information (jma)19,923
writing, content, ai
Faking a Fieldset-Legend (tyl/clo)19,922
html, forms, css
Node.js 16 to 25 Performance Benchmarks19,921
nodejs, performance, metrics, comparisons
Lowering the Specificity of Multiple Rules at Once (mat)19,920
css, cascade
Inside Turbopack: Building Faster by Building Less (she+)19,919
turbopack, performance
A Brief History of Programming… (fir)19,918
videos, programming, history
Animating Responsive Grid Layout Transitions With GSAP Flip (cod)19,917
css, grids, layout, animations, gsap, plugins
Rethinking “Pixel Perfect” Web Design (ami/sma)19,916
design, quality
View Transitions and Playing Video (chr/fro)19,915
javascript, view-transitions, multimedia
AI’s Missing Ingredient (cwo)19,914
ai, vibe-coding, creativity, design
Some Thoughts on the Open Web (mno)19,913
open-web, web
Design Tokens With Confidence (luk/uxd)19,912
design-tokens, json, css
What Figma Got Wrong About Design Systems (web)19,911
figma, design-systems
The State of WebAssembly—2025 and 2026 (uno)19,910
webassembly, retrospectives, outlooks
“Code Only” Props in Figma (nat)19,909
figma, props
What Design Leaders Must Unlearn to Lead in an AI-First World (uxd)19,908
design, leadership, ai
Design in Code, Get Praise (ada)19,907
design, processes, communication
How to Build a WordPress Block Theme19,906
how-tos, wordpress, theming
Vercel vs. Netlify vs. Cloudflare: Serverless Cold Starts Compared19,905
vercel, netlify, cloudflare, serverless, comparisons, metrics
jQuery 4.0.0 (tim/jqu)19,904
jquery, release-notes
AdonisJS v7 Is Feature-Complete and Entering Final Validation (vir/ado)19,903
release-notes, adonisjs
ASCII Characters Are Not Pixels: A Deep Dive Into ASCII Rendering19,902
deep-dives, ascii, rendering
When Design Kills Usability—Meet the Custom Cursor (mal)19,901
videos, design, usability, cursors
Chrome 145 Adds Experimental Support for Vertical Tabs (bra)19,900
chrome, google, browsers
Better Defaults for Popovers (mat)19,899
pop-overs, css, resets
State of UX 2026: Design Deeper to Differentiate (nng)19,898
user-experience, design, outlooks, career, ai
PWA (htt)19,897
web-almanac, studies, research, metrics, progressive-web-apps, web-apps, web-workers
Ecommerce (htt)19,896
web-almanac, studies, research, metrics, ecommerce, tooling, performance, web-vitals, lighthouse
The Astro Technology Company Joins Cloudflare (ast)19,895
astro, cloudflare
CMS (htt)19,894
web-almanac, studies, research, metrics, content-management, tooling, wordpress, user-experience, performance, web-vitals, lighthouse, apis
Security (vik+/htt)19,893
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,892
ai, ai-agents, design, outlooks
Software as Fast Fashion (tan)19,891
programming, ai, sustainability, economics
Fonts (htt)19,890
web-almanac, studies, research, metrics, fonts, performance, css
The Missing Link for Web Components (kin/fro)19,889
web-components, typescript, json, mcp, ai, tooling
Building a Scroll-Driven Dual-Wave Text Animation With GSAP (cod)19,888
gsap, animations, scrolling
The Incredible Overcomplexity of the Shadcn Radio Button (pau)19,887
html, forms, complexity
Performance (25p+/htt)19,886
web-almanac, studies, research, metrics, performance, web-vitals, hints, speculation
Third Parties (htt)19,885
web-almanac, studies, research, metrics, embed-code
Using “100vw” Is Now Scrollbar-Aware (in Chrome 145+, Under the Right Conditions) (bra)19,884
css, units, scrolling, chrome, google, browsers
Accessibility (bog+/htt)19,883
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,882
design, processes
Accessible Faux-Nested Interactive Controls (eri/pic)19,881
accessibility, conformance, html, nesting
Privacy (htt)19,880
web-almanac, studies, research, metrics, privacy, legal, consent-management, do-not-track
Generative AI (chr+/htt)19,879
web-almanac, studies, research, metrics, ai, robotstxt, llmstxt
WebAssembly (htt)19,878
web-almanac, studies, research, metrics, webassembly
CDN (htt)19,877
web-almanac, studies, research, metrics, content-delivery, http, performance, http-headers, compression, tls, hints
Usability Heuristics and Competition in Games (uxd)19,876
usability, heuristics, design, aesthetics
SEO (htt)19,875
web-almanac, studies, research, metrics, seo, robotstxt, llmstxt, links, content, structured-data, amp, html, internationalization
Cookies (htt)19,874
web-almanac, studies, research, metrics, cookies
Page Weight (bar+/htt)19,873
web-almanac, studies, research, metrics, performance, web-vitals, lighthouse, google
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability (ric/the)19,872
tailwind, comparisons, css-in-js, maintainability, css, javascript
So You Think Your Website Is Doing Great (cit)19,871
html, javascript, css, quality
Beyond Manual Audits: How Automation Strengthens Accessibility (equ)19,870
accessibility, auditing, automation, wcag
Making GitHub Actions Suck a Little Less19,869
github-actions
Node.js January 2026 Security Release: What Changed and Why It Matters (nod)19,868
nodejs, security
The “Senior Developer” Is Now the New “Entry Level”19,867
career, ai
Smashing Animations: Theming Animations Using CSS Relative Colour (mal/sma)19,866
animations, colors, theming, css
The Unhinged World of Tech in 2026… (fir)19,865
videos, outlooks, ai, javascript
Live Region Support (aar)19,864
accessibility, live-regions, support, screen-readers, nvda, jaws, voiceover
Everything You Need to Know About Ruby 4.0 (hon)19,863
ruby
EPUB and HTML—Survey Results and Next Steps (rei/w3c)19,862
surveys, epub, html
ARIA Roles Can Remove Their Children’s Semantics (ste)19,861
html, aria, semantics, accessibility
Traditional Code Review Is Dead: What Comes Next? (the)19,860
code-reviews, ai, processes, infrastructure, scalability
18 Predictions for 202619,859
outlooks, ai, usability, user-experience
Introducing the “<geolocation>” HTML Element (tom+/dev)19,858
introductions, html, geolocation, chrome, google, browsers
The Invisible Work (hvp)19,857
leadership, productivity, processes
Mitigating Denial-of-Service Vulnerability From Unrecoverable Stack Space Exhaustion for React, Next.js, and APM Users (mco+/nod)19,856
nodejs, security, vulnerabilities, react, nextjs, tooling, monitoring, performance
Tuesday, January 13, 2026 Security Releases (nod)19,855
release-notes, nodejs, security
Simulating Crop Marks (chr/fro)19,854
css
Astro 6 Beta (mat)19,853
release-notes, astro
Just the Browser (cor)19,852
websites, browsers, chrome, google, firefox, mozilla, edge, microsoft
Design Systems and Shareable Browser Support (rob)19,851
design-systems, browsers, browserslist, support
A Polyfill for the HTML “switch” Element (tom)19,850
html, forms, polyfills
Solid.js Best Practices (bre)19,849
solidjs, best-practices, examples
Is There Too Much Design in Design Systems? (sha)19,848
design, design-systems
Don’t Start With AI, Start With the Problem (cal/nng)19,847
videos, ai, processes
Aspire for JavaScript Developers (dav/mic)19,846
tooling, javascript, typescript
Manufacturing as Code Is the Future, and the Future Is Now19,845
programming, outlooks
OpenCode vs. Claude Code (bui)19,844
opencode, claude, anthropic, ai, comparisons
Stop Turning Everything Into Arrays (and Do Less Work Instead)19,843
javascript, methods, arrays
SVG Filters Are Just Amazing (ami)19,842
svg, filters
Focus Rings With Nested “contrast-color()”? (dav)19,841
css, selectors, functions, focus, contrast
Stop Using MySQL in 2026, It Is Not True Open Source (ott)19,840
mysql
Don’t Fall Into the Anti-AI Hype (ant)19,839
ai, career
How Wrong Can a JavaScript Date Calculation Go? (phi)19,838
javascript, time, apis
On Abbreviating Accessibility (ons)19,837
accessibility, microcontent
What Is the Minimum Markup Needed to Create a Modal?19,836
modals, minimalism, html, css, accessibility
Prompt Engineering Won’t Fix Your Architecture19,835
architecture, ai
How to Steal Any React Component19,834
react, components
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)19,833
mobile, javascript, animations
Death to Scroll Fade (dbu)19,832
scrolling, effects, performance
How Markdown Took Over the World (ani)19,831
markdown, web
Not All Browser APIs Are “Web” APIs (pol)19,830
apis
Brief Note on Application Keyboard Shortcuts (aar)19,829
accessibility, keyboard-shortcuts, screen-readers
Your Brand Just Evolved: The Rise of AI-Generated Identities (web)19,828
design, branding, ai
Very Good Components (bee)19,827
websites, components, html
Popover Context Menus With Anchor Positioning (chr/fro)19,826
css, tooltips, pop-overs, anchor-positioning
Node.js Package Configuration Guide (nod)19,825
guides, packages, dependencies, configuration, commonjs, esm
Judging Severity in Accessibility Issues (joe)19,824
accessibility
What Makes a Good Tech Meet-Up?19,823
discussions, community
A Data Model for Git (and Other Docs Updates) (b0r)19,822
git
Async React19,821
videos, react, asynchronicity
Exploring React Performance (en-)19,820
videos, react, performance
Profiling With React Performance Tracks19,819
videos, react, profiling, performance
Designing Page Transitions19,818
videos, design, transitions, effects
Software Is Culture (fig)19,817
culture
2026 Accessibility Hiring Looks Busy, Yet the Patterns Show Underlying Weakness19,816
accessibility, career
Common Misconceptions About Testing Accessibility (tet)19,815
accessibility, testing
Modern Emails Using React19,814
videos, email, react
Date Is Out, Temporal Is In (wil/pic)19,813
javascript, time
Ethical and Resilient Blog Hosting (pad)19,812
hosting, blogging, ethics
npm to Implement Staged Publishing After Turbulent Shift Off Classic Tokens (sar/soc)19,811
npm, dependencies, security, github
Web Dependencies Are Broken—Can We Fix Them? (lea)19,810
dependencies, javascript, import-maps, web-platform
4 CSS Features Every Front-End Developer Should Know in 2026 (arg)19,809
css, functions, scrolling
Designing With AI-Readable Design Systems in Cursor (uxd)19,808
design, design-systems, ai, cursor, code-editors
5 Accessibility Checks to Run on Every Component (hdv/zer)19,807
accessibility, components, testing, keyboard-navigation, design-tokens, microcontent, zooming, screen-readers
Google Broke My Heart (per)19,806
google, search, licensing, legal
2025 JavaScript Rising Stars19,805
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,804
how-tos, javascript, effects, tooling, gsap, threejs
We Fixed a 6-Year-Old JavaScript Memory Leak (deb)19,803
javascript, memory
JavaScript Frameworks—Heading Into 2026 (rya/thi)19,802
javascript, frameworks, outlooks, ai
How I Evaluate an ACR (VPAT) (aar)19,801
accessibility, compliance, vpat-acr, processes
Claude Devs Complain About Surprise Usage Limits, Anthropic Blames Expiring Bonus (tho/the)19,800
claude, anthropic, ai
Eric Bailey’s Predictions for the Future of Accessibility (eri)19,799
accessibility, outlooks
Streaming JSON in Just 200 Lines of JavaScript19,798
streaming, json, javascript
Anna Thielke’s Predictions for the Future of Accessibility19,797
accessibility, outlooks
Damian Sian’s Predictions for the Future of Accessibility19,796
accessibility, outlooks
Kai Wong’s Predictions for the Future of Accessibility19,795
accessibility, outlooks
The Nine Levels of JavaScript Dependency Hell (and)19,794
javascript, dependencies, maintainability