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

Featured on Frontend Dogma? Help us help you, and whitelist your domain!

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 with exclusive news: only $12/year), on Mastodon, and on Bluesky (other channels)

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