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

Frontend Dogma

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

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

Entry (Sources) and TopicsDate#
Changes in the World of HTML Minifiers (apo)20371
html, tooling, minification, html-minifier
Hell Is Other People’s Markup (llo/mat)20370
html, auditing, tooling
WebKit Features for Safari 26.2 (jen+/web)20369
release-notes, webkit, safari, browsers
Chrome DevTools Elements Panel Tips and Tricks (zor/css)20368
videos, dev-tools, chrome, browsers, tips-and-tricks
Using the Browser Console for Accessibility Testing (rus)20367
accessibility, testing, console, javascript, examples
Improving Cumulative Layout Shift in WordPress20366
wordpress, web-vitals, performance, optimization, cheat-sheets
New Front-End Framework Ripple Blends React and Svelte Together (inf)20365
frameworks, ripple
The Design System of the Christmas Factory20364
design-systems, accessibility, processes
Testing Methods: Abbreviations (dec)20363
accessibility, testing, wcag, content, link-lists
A11y Considerations in Math on the Web (man/mat)20362
accessibility, mathml, screen-readers, nvda, voiceover, support
The Ultimate Guide to UI Design in 2026 (web)20361
guides, design, user-experience, simplicity, consistency, hierarchy, accessibility
The Vibe Coding Paradox (jun)20360
programming, vibe-coding, ai
Intro to Performance of React Server Components (ade/per)20359
introductions, performance, react, components, server-side-rendering
Eleventy Core Dependency Watch (2025 Edition) (zac/11t)20358
eleventy
What Else Could Container Queries… Query? (dxn/css)20357
css, container-queries
The New “clamp()” Function in PHP 8.6 (ami)20356
php, functions
How Does Chrome DevTools Network Throttling Actually Work? (deb)20355
videos, dev-tools, chrome, browsers, network
JetBrains Junie: AI Coding Without the Chaos (mik)20354
junie, jetbrains, ai
Vote for the Web Features You Want to See (rvi)20353
web-platform, standards, support
Why Are My View Transitions Blinking? (pic)20352
css, view-transitions
Accessibility Updates (w3c)20351
videos, accessibility, wcag, standards
How HTML Changes in EPUB (rob/mat)20350
epub, html, standards
Testing Methods: Unusual Words (dec)20349
accessibility, testing, wcag, content, link-lists
Thoughts on Native CSS Mixins (chr/fro)20348
css, mixins
Denial of Service and Source Code Exposure in React Server Components (rea)20347
react, components, security
HTML Minifier Next: Presets, New Config Options, Minification Sharing, and Type Definitions (j9t)20346
release-notes, html-minifier
How We Automate Accessibility Testing With Playwright and Axe (boj)20345
accessibility, testing, automation, playwright, axe
Common Misconceptions About WCAG (tet)20344
accessibility, wcag, standards
Useful Patterns for Building HTML Tools (sim)20343
html, ai, tooling
Testing Methods: Language of Parts (dec)20342
accessibility, testing, wcag, internationalization
React 19.2: Further Advances INP Optimization (per)20341
react, web-vitals, performance, optimization
The “Two-Brain” Advantage: Why You Should Never Trust Just One AI (owe/pro)20340
ai, processes, quality
A11y Freedom Beaver (ste/mat)20339
accessibility, aria, html
Creating Scroll-Based Animations in Full view() (pre/css)20338
css, animations, scrolling, functions
Anthropic Donates the MCP Protocol to the Agentic AI Foundation20337
anthropic, mcp, protocols, foss, ai
The Slow Death of Magic20336
product-management, simplicity
Making Complex Web Apps Faster (pat)20335
performance, web-apps, apis, time, complexity
Frontend News #19: CSS “overscroll-behavior”, “scrollbar-gutter”, “text-grow” Properties, and More (zor/css)20334
videos, css, scrolling
Why RSS Matters (wer)20333
rss, syndication, social-media
“aria-busy” Is Not Your Friend (ger)20332
accessibility, aria, nvda, jaws, voiceover, screen-readers
Testing Methods: Language of Page (dec)20331
accessibility, testing, wcag, internationalization
Meeting WCAG Is an Achievement (yat)20330
accessibility, wcag, compliance
Why Every Conference Needs a Nursing Room (bla)20329
community, dei
The Inconvenient Truth: How Web Performance Case Studies Undermine Our Relationship With Business (mac/per)20328
performance, metrics, economics
Discover Dialog (sar/mat)20327
html, modals, javascript, css
Did You Know Your Browser Has Two Accessibility Trees? (rus)20326
accessibility, browsers, chrome, blink
CSS Wrapped 2025 (una)20325
css, standards, retrospectives
Type-Aware Linting Alpha (cam/bos)20324
linting, tooling, oxc
Comparing HTML Minifiers (j9t)20323
html, minification, tooling, html-minifier, htmlnano, metrics, comparisons
Why Federated Design Systems Keep Failing (sha)20322
design-systems, collaboration
Design Accessible Animation and Movement With Code Examples (pop)20321
design, accessibility, animations, css, javascript, examples
Getting a Close Button to Hang Off of a Dialog (dar)20320
modals, buttons, css, anchor-positioning
Blogging Is Dead. Long Live the Blog. (web)20319
blogging, seo, ai, social-media, web
Thursday, December 18, 2025 Security Releases (nod)20318
release-notes, nodejs, security
What’s Wrong With This HTML, and Is It Valid? (pat/mat)20317
html, standards, conformance, web-platform
The Anatomy of a Web Performance Report (web/per)20316
performance, documentation, web-vitals, lighthouse
That Time I Tried Explaining HTML and CSS to My 5-Year Old Niece (css)20315
html, css, learning
Web Performance 2025: The Shift From Optimization to Prediction (fab/per)20314
performance, optimization, retrospectives
Testing Methods: Dragging Movements (dec)20313
accessibility, testing, wcag
Controlling Dialogs and Popovers With the Invoker Commands API (sta/mat)20312
modals, pop-overs, apis, attributes, html
A Guide to Token-Efficient Data Prep for LLM Workloads20311
guides, ai, token-optimization, economics
Testing Methods: Concurrent Input Mechanisms (dec)20310
accessibility, testing, wcag
NoLoJS: Reducing the JS Workload With HTML and CSS (aar/per)20309
html, disclosure-widgets, forms, modals, pop-overs, navigation, scrolling, positioning
Accessible by Design: The Role of the “lang” Attribute (col/mat)20308
accessibility, internationalization, html, attributes, metrics
2025 in Review: What’s New in Web Performance? (mat/deb)20307
performance, web-vitals, lighthouse, apis, speculation, chrome, firefox, browsers, dev-tools, tooling, testing, mcp, ai, retrospectives, outlooks
What Are DOM Mutations? (rus)20306
accessibility, dom, javascript
Dealbreaker Bugs in Native Popovers (mat)20305
accessibility, pop-overs, bugs
Lies, Damned Lies, and Design System Adoption Statistics (ikn)20304
design-systems
How We’re Protecting Our Newsroom From npm Supply Chain Attacks (rya/pnp)20303
npm, dependencies, security, case-studies
Testing Methods: Target Size (Enhanced) (dec)20302
accessibility, testing, wcag, touch
How I Built a Form Management Platform With Angular 17 and SurveyJS20301
functionality, forms, angular, tooling
Non-Blocking Cross-Browser Image Rendering on the Canvas (mys/per)20300
canvas, javascript, images, performance
10 Usability Heuristics20299
usability, heuristics
IDREFs: What They Are and How to Use Them (kil/mat)20298
html, forms, aria, accessibility
No More Tokens—Locking Down npm Publish Workflows (zac)20297
npm, dependencies, security, processes
Why You Need Design Maturity in a Product Organisation, and How to Get It20296
design, product-management
Fast by Default (den/per)20295
performance, processes
I Studied 50+ Engineers Who Got Promoted Fast: They All Did One Thing I’d Been Ignoring20294
career, collaboration
Testing Methods: Motion Actuation (dec)20293
accessibility, testing, wcag, mobile
Standards Queues (bka)20292
standards, web-platform, collaboration
In 1995, a Netscape Employee Wrote a Hack in 10 Days That Now Runs the Internet (ben/ars)20291
netscape, javascript, history
The Web Runs on Tolerance (ede)20290
web-platform, standards, principles
Referencing HTML Elements Inside Shadow DOM (meh/mat)20289
html, shadow-dom, web-components
Getting Creative With “the Measure” (mal/css)20288
css, typography, readability
The Timing Problem in Design Systems (mur)20287
design-systems, components
End-to-End Browser and Accessibility Event Architecture (rus)20286
accessibility, browsers, event-loop, browser-engines, javascript-engines, assistive-tech
During Helene, I Just Wanted a Plain Text Website (spa)20285
content
The Downsides of “scrollbar-gutter: stable;” (and One Weird Trick) (chr/fro)20284
css, scrolling
A Little Bit Uncomfortable20283
career, learning
Solving Small Text and Contrast Issues for Large-Screen Readability (a11)20282
accessibility, contrast, readability, typography
Common Misconceptions About Disability (tet)20281
accessibility, concepts
Public Design Systems Are Worth It (pjo)20280
design-systems
TypeScript Strictness Is Non-Monotonic: Strict-Null-Checks and No-Implicit-Any Interact (huo)20279
typescript, arrays
Intopia Launches Assistive Technology Survey 2025 (int)20278
surveys, assistive-tech
Speculation Rules Improvements (tun/mat)20277
performance, speculation, apis
Testing Methods: Label in Name (dec)20276
accessibility, testing, wcag, labels, aria
HTML Semantics: The Short Descriptions of All 113 Elements (j9t)20275
html, semantics, overviews
Critical Security Vulnerability in React Server Components (rea)20274
react, components, security
[Next.js] Security Advisory: CVE-2025-66478 (seb)20273
nextjs, security
Get the Core Right and the Resilient Code Will Follow (bel/btc)20272
videos, resilience, design, communication
How Does Amazon’s Kiro Differ From Traditional IDEs? (ele/des)20271
guest-posts, kiro, code-editors
Understanding “aria-live” Timing: A Two-Layer Model (rus)20270
accessibility, aria, live-regions, notifications
Designing Decisions: Behavioral Psychology That Moves Users20269
design, interaction-design, user-experience
A Pragmatic Guide to Modern CSS Colours II (kev/pic)20268
guides, css, colors, examples
From Reactive to Proactive: Building a Sustainable Accessibility Program (equ)20267
accessibility, processes, culture, w3c
Scrollytelling on Steroids With Scroll-State Queries (css)20266
css, scrolling
Masonry: Things You Won’t Need a Library for Anymore (pat/sma)20265
css, masonry, layout, examples, web-platform
Exploring Large HTML Documents on the Web (per)20264
performance, html, metrics
Progress on TypeScript 7—December 2025 (dan/typ)20263
typescript
You Can’t Make Something Accessible to Everyone (aar)20262
accessibility, design
Testing Methods: Pointer Cancellation (dec)20261
accessibility, testing, wcag
Web Backstories: Shadow DOM (ada+/iga)20260
podcasts, interviews, shadow-dom, web-components, standards, history
Using the Ancient Evils for Debugging (bol/mat)20259
html, debugging
The Nuances of JavaScript Typing Using JSDoc (jar/van)20258
javascript, jsdoc, typescript, developer-experience
Bun Is Joining Anthropic (jar/bun)20257
bun, anthropic
Decreasing [Let’s Encrypt] Certificate Lifetimes to 45 Days (mat/let)20256
http, security, certificates, lets-encrypt
Anchor Positioning and the Inset-Modified Containing Block (IMCB) (bra)20255
css, anchor-positioning, concepts
What Sam Altman Just Taught Us About OKRs (Without Meaning To) (cwo)20254
okr, prioritization, processes, openai
The Practical Guide to LLM Cost Optimization20253
guides, ai, token-optimization, economics
Building Agentic Design Systems: The Future of AI-Enhanced Design20252
design-systems, design, ai, processes
The Next Revolution in Design: Emotional Accessibility (fas)20251
design, accessibility, outlooks
“Sloppy” Code and Accessibility Issues: The Trouble With Trump’s Silicon Valley-Inspired Web Design Project (not)20250
design, accessibility, quality, case-studies
Non-Square Image Blur Extensions (ana/fro)20249
images, css, effects
The Evolution of Web Development: From Static Pages to AI-Driven Experiences (web)20248
history, web, web-2.0, web-apps, ai
Improve TTFB and UX With HTTP Streaming (mb2/per)20247
performance, user-experience, http, streaming, optimization
React Has Changed, Your Hooks Should Too20246
react, hooks
Top Layer Troubles: Popover vs. Dialog (5t3/mat)20245
css, positioning, pop-overs, modals
Nobody Writes Clean Code—We All Just Pretend20244
quality, craft
Testing Methods: Pointer Gestures (dec)20243
accessibility, wcag, testing
Prevent a Page From Scrolling While a Dialog Is Open (geo/css)20242
scrolling, css
Web Design / Dev Advent Calendars for 2025 (aar)20241
link-lists, learning
Is Using Command Line AI an Option for Helping You Code?20240
ai, command-line, cursor, claude, code-editors
Can You Make Toast Messages Accessible? (ada)20239
accessibility, notifications
Testing Methods: Focus Appearance (dec)20238
accessibility, testing, wcag, focus, keyboard-navigation, link-lists
How to Unit Test a Vue Composable With TypeScript (joh)20237
how-tos, testing, vuejs, functions, typescript
Using CSS to Fix the Irradiation Illusion (arg)20236
css, readability, fonts
The Junior Hiring Crisis (ann/peo)20235
hiring, engineering-management, career, community
How Modern Browsers Work (add)20234
browsers, chromium, network, parsing, painting, rendering, javascript-engines, v8, memory, modules, javascript, html, css
Testing Methods: Focus Not Obscured (Enhanced) (dec)20233
accessibility, testing, wcag, focus, keyboard-navigation
How Fast Can Browsers Process Base64 Data? (lem)20232
performance, encoding, base64, browsers, metrics, comparisons
How Good Engineers Write Bad Code at Big Companies (sea)20231
quality, career, culture
The Era of Personal Software20230
programming, ai
CSS-in-JS: The Great Betrayal of Frontend Sanity20229
css-in-js, css, javascript, performance, developer-experience
How Microfrontends Work: 3 Integration Strategies20228
micro-frontends, strategies, routing, iframes, javascript, ai
EAA Deadlines, Why You Probably Can’t Wait Another 5 Years20227
accessibility, eaa, legal, compliance
Category Theory for JavaScript/TypeScript Developers (ibr)20226
javascript, typescript, programming, craft
Who Wins When We Filter the Open Web Through an Opaque System? (hdv)20225
open-web
Web Application Architecture: The Enterprise Framework Powering Modern Digital Experiences (elu)20224
architecture, web-apps
Testing Methods: Focus Not Obscured (Minimum) (dec)20223
accessibility, testing, wcag, focus, keyboard-navigation
Understanding ECDSA [Elliptic Curve Digital Signature Algorithm]20222
cryptography, algorithms, math
Eleventy: How to Set Up Effective HTML Minification (in 24 Seconds) (j9t)20221
how-tos, eleventy, html, html-minifier, minification, optimization
One CSS Trick to Eliminate Scrollbar Layout Shifts (ami)20220
css, scrolling, tips-and-tricks
How to Create an Adaptive SVG Favicon Using the “prefers-color-scheme” Media Query (zor/css)20219
videos, how-tos, favicons, svg, css, images
The Idiot Sandwich—on Embedding Alt Text (ede)20218
images, alt-text, accessibility
5 Reasons Why WCAG AA Compliance Does Not Mean Your Website Is Accessible (cra)20217
accessibility, wcag, compliance, colors, readability, performance, content, multimedia, quality
AI for Good Accessibility (ala)20216
slides, ai, accessibility
The Accessibility Problem With Authentication Methods Like CAPTCHA (sma)20215
accessibility, captcha
Testing Methods: Section Headings (dec)20214
accessibility, testing, wcag, headings
Best of the Pod: Would You Shut Down Your Most Successful Product? the Arc to Dia Story20213
videos, the-browser-company, arc, dia, browsers, history, product-management
New to the Web Platform in November (rac)20212
release-notes, web-platform, browsers, firefox, safari
Ripple Over React? Evaluating the Newest JS Framework (log)20211
ripple, react, frameworks, comparisons
Saumya Majumder on How Cloudflare Outages Impact the Web and WordPress Performance Solutions (nat)20210
podcasts, interviews, cloudflare, wordpress, performance
Taking Down Next.js Servers for 0.0001 Cents a Pop20209
servers, nextjs, vulnerabilities, security
Testing Methods: Link Purpose (Link Only) (dec)20208
accessibility, testing, wcag, links, microcontent, link-lists
Accessibility and Usability: Inline Field Validation vs. Constantly Active Submit Button20207
forms, buttons, validation, accessibility, usability, comparisons
The End of Dashboards and Design Systems20206
design, design-systems
Critique20205
design, craft, collaboration, processes
What an Accessibility Conference Taught Me About Designing for All20204
design, accessibility
How to Add and Remove Items From a Native CSS Carousel (…With CSS) (dxn/fro)20203
how-tos, css, carousels, scrolling
Why Use React? (ada)20202
react, frameworks
What Are Invokers? Interactivity Without JavaScript (tol/syn)20201
videos, javascript, html, pop-overs
Migrating From GitHub to Codeberg (and/zig)20200
migrating, github, codeberg
Updating CSS Border Radius When a Container Is Overflowing (rik)20199
css, borders, overflow, scrolling
A New Navigation Paradigm20198
ai, navigation, design
Applying AI Where It Matters20197
studies, research, ai
Becoming Unblockable (sea)20196
career, prioritization, tooling, collaboration
Orion 1.0—Browse Beyond (kag)20195
browsers, orion, ai
“<dialog>” and Popover: Baseline Layered UI Patterns20194
modals, pop-overs, css
WebGPU Is Now Supported in Major Browsers20193
webgpu, browsers, support, web-platform
What Actually Makes You Senior (ter)20192
career
Thoughts on Kagi’s Orion Browser vs. AI Browsers (dra)20191
orion, kagi, browsers, ai
Animation and Carousels (web)20190
accessibility, animations, carousels, css, reduced-motion
Design Tokens Aren’t Enough—Architecture Decisions Need a Place in Your Design System (sam)20189
design-systems, design-tokens, architecture, documentation
Direction-Aware Arrow Shape Using Corner-Shape (css)20188
css, shapes
Testing Methods: Location (dec)20187
accessibility, testing, wcag, navigation
The Shai-Hulud 2.0 npm Worm: Analysis, and What You Need to Know20186
npm, security, dependencies
A Minimal CSS Starter (j9t)20185
css, templates, minimalism
Tech Predictions for 2026 and Beyond20184
outlooks, web
Design System Culture: What It Is and Why It Matters (ari/sma)20183
design-systems, culture
CSS Backgrounds Module Level 4 (fan+/w3c)20182
standards, css, backgrounds
93% Faster Next.js in (Your) Kubernetes (mco/pla)20181
nextjs, nodejs, performance, kubernetes
Web Browser Status Bars Are Nuts (lap)20180
browsers, comparisons
Brand New Layouts With CSS Subgrid (jos)20179
layout, css, grids, examples
GitLab Discovers Widespread npm Supply Chain Attack20178
npm, dependencies, security, gitlab, aws, gcp, azure
The Future of AWS CodeCommit20177
aws, tooling, git, outlooks
Replacing “glob-all” With “fs.promises.glob” in Node.js (cto)20176
refactoring, nodejs
How to Easily Create Modern, CSS-First Forms in WordPress (zor/css)20175
how-tos, videos, css, forms, wordpress
“light-dark()” Isn’t Always the Same as “prefers-color-scheme” (ste)20174
css, functions, dark-mode, colors
UX Is Your Moat (and You’re Ignoring It) (cwo)20173
user-experience, economics
Managing Side Effects: A JavaScript Effect System in 30 Lines or Less (ayc)20172
javascript
Introduction to CSS “if” Statements and Conditional Logic (mar)20171
introductions, css, functions, conditionals
The State of Tanstack, Two Years of Full-Time OSS (tan/tan)20170
tanstack, foss
The Performance Inequality Gap, 2026 (sli)20169
performance, javascript, metrics
Web Monetization Is Still Inching Along, but Still Too Difficult (chr/fro)20168
monetization
On Inheriting and Sharing Property Values (dxn/css)20167
css, cascade, techniques
Why Does AI Devour So Much Water? (ger)20166
ai, sustainability
Testing Methods: Focus Visible (dec)20165
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
You’re Doing JavaScript Testing Wrong (cfe)20164
javascript, testing
Shuffling a CSS Grid Using Custom Properties (cod)20163
css, grids, custom-properties
WCAG 2.1 Addition—Success Criterion 1.4.10: Reflow (Level AA)20162
accessibility, wcag, standards, reflow
Testing Methods: Headings and Labels (dec)20161
accessibility, wcag, testing, headings, labels, forms
If You Think Your Commit Messages Are Bad, Just Wait…20160
commit-messages
You’re Not Building Netflix: Stop Coding Like You Are20159
programming, architecture, prioritization
AI Will Soon Deliver Code That Will Pass Automatic Testing by Default (cer)20158
ai, testing, accessibility
Testing Methods: Multiple Ways (dec)20157
accessibility, wcag, testing, navigation, sitemaps, link-lists
Unifying [Wikipedia’s] Mobile and Desktop Domains (kri/wik)20156
wikipedia, refactoring, mobile, desktop, performance, seo, user-experience, infrastructure, case-studies, link-lists
The PHP 8.5 Pipe Operator (“|>”): Useful, but Watch for These Gotchas20155
php, operators
How Designers Gaslight Users With Microcopy (web)20154
design, microcontent, dark-patterns
WCAG 2.1 Addition—Success Criterion 1.3.5: Identify Input Purpose (Level AA)20153
accessibility, wcag, standards, forms
Keyframes Tokens: Standardizing Animation Across Projects (ami/sma)20152
css, animations, consistency
Testing Methods: Link Purpose (in Context) (dec)20151
accessibility, wcag, testing, links, microcontent
WCAG 3 Update (kno)20150
videos, accessibility, wcag, standards
Critical Thinking During the Age of AI (add)20149
ai, processes, career
The Value of Selecting Selects by Value (aar)20148
accessibility, wcag, forms
How to Create 3D Images in CSS With the Layered Pattern (sun/fro)20147
how-tos, images, 3d, css, transforms
5 Engineering Skills to Prioritize in the AI-Driven Era20146
ai, writing, architecture, debugging, communication, career
Testing Methods: Focus Order (dec)20145
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
WCAG 2.1 Addition—Success Criterion 1.3.4: Orientation (Level AA)20144
accessibility, wcag, standards, mobile
Cross-Browser Anchor Positioning (mey+/odd)20143
videos, interviews, css, anchor-positioning
The Rosetta Stone of Design Engineering (yan)20142
design, processes, collaboration
Responsive Letter Spacing (tyl/clo)20141
responsive-design, typography, css
Grid: How “grid-template-areas” Offer a Visual Solution for Your Code (sar/web)20140
css, grids, layout
Should We Even Have “:closed”? (sun/css)20139
css, selectors, disclosure-widgets
The Engineer You Never Met: Why Interview Processes Systematically Reject Qualified Engineers20138
hiring, economics, case-studies
Automated Accessibility Testing for React—Tools and Best Practices You Can Use20137
accessibility, testing, react, tooling, best-practices
These Queries Cover 80% of SQL20136
sql, databases
Testing Methods: Page Titled (dec)20135
accessibility, wcag, testing, html
Good Enough Is a Strategy (tre)20134
strategies, technical-debt, quality
State of React 2025 (sac/dev)20133
surveys, react
A Guided Tour of Copenhagen (fre/ske)20132
guides, sketch
Announcing Angular v21 (mar/ang)20131
release-notes, angular
Why Web Design Must Finally Break Free From Its Graphic Design Roots (web)20130
design, print, ai, career
Using esbuild in Eleventy (db)20129
eleventy, esbuild
Anchoring to a Containing Block (kiz)20128
css, anchor-positioning
When the Dark Pattern Is a Glaring Green Checkmark20127
design, user-experience, dark-patterns
Cloudflare Outage on November 18, 2025 (eas)20126
cloudflare
Web Development: On the Size and Output of and the Growth Opportunities Within the Field (j9t)20125
guest-posts, training, career, frontend-dogma
To Be a Leader of Systems (haz)20124
leadership
The Cloudflare Outage Was a Good Thing20123
cloudflare, resilience, infrastructure
Testing Methods: Bypass Blocks (dec)20122
accessibility, wcag, testing, keyboard-navigation
Experiment: Making TypeScript Immutable-by-Default (eva)20121
experiments, typescript
WCAG 2.1 Addition—Success Criterion 2.5.4: Motion Actuation (Level A)20120
accessibility, wcag, standards
More CSS “random()” Learning Through Experiments (chr/fro)20119
css, functions, randomness, experiments
Do Not Put Your Site Behind Cloudflare if You Don’t Need To20118
cloudflare
Firefox Is Adding Support for a Feature That Users Requested Since 200420117
firefox, browsers, keyboard-shortcuts
How to Successfully Migrate Your App With an AI Agent (bla/ope)20116
how-tos, migrating, refactoring, ai
WCAG 2.1 Addition—Success Criterion 2.5.3: Label in Name (Level A)20115
accessibility, wcag, standards, labels, forms
Ethical Defaults: Why Designers Must Stop Hiding Behind Settings (web)20114
design, ethics
10 Git Tricks That Made Me a Way Better Developer20113
git, command-line, tips-and-tricks
Tooltip Components Should Not Exist (tkd)20112
tooltips, components
A11y 101: 2.4.7 Focus Visible (nat)20111
introductions, accessibility, wcag, focus, keyboard-navigation
The “Most Hated” CSS Feature: “asin()”, “acos()”, “atan()”, and “atan2()” (mon/css)20110
css, functions, math
Testing Methods: Animation From Interactions (dec)20109
accessibility, wcag, testing, animations
How to Prepare for the Future of Programming (jet)20108
how-tos, programming, learning
Automated npm Secret Rotation in GitHub Actions (mhe)20107
npm, security, automation, github-actions
Top 10 Branding Trends to Watch Out for in 2026 (des)20106
branding, design, trends, outlooks
Testing Methods: Three Flashes or Below Threshold (dec)20105
accessibility, wcag, testing
How to “Officially” Deprecate Methods With Node.js Utilities (ste)20104
how-tos, deprecation, nodejs, developer-experience
Wrangling My Email With Claude Code (jlo)20103
email, claude, ai, efficiency
Testing Methods: Timeouts (dec)20102
accessibility, wcag, testing, time
Accessible Names and Labels: Understanding What Works and What Doesn’t (tpg)20101
accessibility, labels, naming, forms
“display: masonry” Is Officially Dead (kev)20100
videos, css, masonry, layout
It Is OK to Say “CSS Variables” Instead of (or Alongside) “Custom Properties” (kiz)20099
css, variables, custom-properties, terminology
Good Visual Design, Explained (nng)20098
design, principles, quality
A Complete Guide to the HTML Number Input (oll)20097
guides, html, attributes, forms
“Technical Debt Will Bite Us in the Ass”: How to Make Non-Technical Stakeholders Actually Care20096
how-tos, technical-debt, communication, prioritization
Monotype Font Licencing Shake-Down (ame)20095
fonts, licensing
“Move Fast and Don’t Break Things”—What Four Startups Taught Me About Execution20094
design, career, product-management, engineering-management
What’s New in PHP 8.5 (bre)20093
php
Animating CSS “width” or “height” No Longer Forces a Main Thread Animation (in Chrome, Under the Right Conditions) (bra)20092
css, animations, chrome, browsers
Is Server-Side Rendering React’s Holy Grail?20091
react, server-side-rendering
A Suggestion for Your Community Terms and Policies (j9t)20090
community, collaboration, politics
What’s New in the Design Tokens Spec: From Static to Living Design Data (res/zer)20089
design-tokens, design-systems
Browserslist and Baseline (chr/fro)20088
browsers, support, web-platform, browserslist
Older Tech in the Browser Stack (sma)20087
xpath, css, techniques
Writing Is Probably the Worst Use Case of AI20086
ai, writing
Testing Methods: Re-Authenticating (dec)20085
accessibility, wcag, testing, authentication
What’s Coming in TypeScript 6/7 (dan+/typ)20084
podcasts, interviews, typescript, ecmascript, outlooks
From Tokens to Touchpoints: Powering a Successful Rebrand With Your Design System (zer)20083
design-systems, design-tokens, collaboration
The Last Couple Years in V8’s Garbage Collector (win)20082
v8, javascript-engines, garbage-collection, memory, retrospectives, javascript
The Hard Truth About Learning to Code (That No One Tells You)20081
learning, career
Do Newer AI-Native IDEs Outperform Other AI Coding Assistants? (lau)20080
ai, code-editors, efficiency, metrics, comparisons
What Developers Really Mean by “Bad Code” (jet)20079
maintainability, scalability, consistency, security, quality
How We Catch UI Bugs Early With Visual Regression Testing20078
testing, regressions, playwright, javascript
Range Syntax for Style Queries (una)20077
css, style-queries
CSS “:interest-invoker” and “:interest-target” Pseudo-Classes (tre)20076
css, selectors, forms
Testing Methods: Interruptions (dec)20075
accessibility, wcag, testing
Netflix’s Engineering Culture (ger)20074
podcasts, interviews, netflix, culture, ai
Firefox 147 Release Notes for Developers (mdn)20073
release-notes, firefox, browsers
Guiding the Future of Ethical Design20072
design, ethics
Why Headings Are Important in HTML: Structure, Accessibility, and SEO20071
html, headings, accessibility, seo
Programming Principles for Self Taught Front-End Developers (kil/pic)20070
programming, principles
Effectively Monitoring Web Performance (sma)20069
performance, monitoring, tooling
“::details-content”: Style Expandable Content Without Wrapper Divs (tre)20068
disclosure-widgets, css, html
Using “chrome-devtools-mcp” With Polypane (pol)20067
polypane, browsers, dev-tools, mcp, chrome, ai
Rust vs. Python: Finding the Right Balance Between Speed and Simplicity (jet)20066
rust, python, performance, simplicity, programming, comparisons
Error Chaining in JavaScript: Cleaner Debugging With “Error.cause”20065
javascript, errors, debugging
Perfectly Pointed Tooltips: To the Corners (css/fro)20064
css, tooltips
10 Smart Performance Hacks for Faster Python Code (did/jet)20063
python, performance, techniques
My CSS Selector Strategy (mal)20062
css, selectors, principles
20 Best CSS Preprocessor Tools and Comparison for 2025: Complete Guide to Active Tools20061
guides, css, tooling, preprocessors, comparisons, link-lists
Crafting Generative CSS Worlds (cod)20060
css, transforms
Testing Methods: Pause, Stop, Hide (dec)20059
accessibility, wcag, testing, multimedia, animations, link-lists
Link vs. Button: Choosing the Right Element for the Right Job (tpg)20058
html, links, buttons, accessibility, wcag, comparisons
“aria-labels” and Privacy: A Word of Caution (hom)20057
accessibility, aria, privacy
“AI” Browsers: The Price of Admission Is Too High (bru/viv)20056
ai, browsers
Headings: Semantics, Fluidity, and Styling—Oh My! (geo/css)20055
headings, html, css
Six Things I Bet You Didn’t Know You Could Do With Chrome’s DevTools20054
chrome, dev-tools, browsers
3 User-Friendly Technical Ways to Respond to Genocidistan (j9t)20053
politics, traffic, censorship, community
How to Rate-Limit Requests With nginx20052
how-tos, nginx, servers, rate-limiting
Building a Multi-Stage Timetable With Modern CSS Using Grid, Subgrid, “round()”, and “mod()” (nil)20051
css, grids, layout, functions
Testing Methods: Timing Adjustable (dec)20050
accessibility, wcag, testing, time, link-lists
Why CSS Is So Hard for Generative AIs to Understand?20049
css, ai
Frontend News #17: Why Pseudo-Elements Don’t Work With “:is()”, the Advantages of OKLCH, and More (zor/css)20048
videos, css, selectors, oklch
Testing Methods: Character Key Shortcuts (dec)20047
accessibility, wcag, testing, keyboard-shortcuts
Material 3 Expressive: Building on the Failures of Flat Design20046
material-design, flat-design, design, link-lists
Slots in Design Systems (nat)20045
design-systems, figma
A Practical Guide to Flutter Accessibility: The Basics (kor)20044
guides, fundamentals, flutter, accessibility
Fix “width: 100%” Overflow Easily (zor/css)20043
videos, css, overflow
Sustainable Accessibility in Complex Organisations: Strategic Foundations (ihe/tet)20042
accessibility, leadership, dei, processes
When Everyone’s a Developer, How Do We Promote the Web Platform Over React? (ric)20041
web-platform, react, ai, link-lists
When to Use CSS “text-wrap: balance” vs. “text-wrap: pretty” (dxn/log)20040
css, typography
Tailwind CSS Won the War… but We’re the Losers20039
tailwind, css, html, web-platform
Sustainable Accessibility in Complex Organisations: Organisational Realities (ihe/tet)20038
accessibility
Staggered Animation With CSS “sibling-*” Functions (pre/fro)20037
animations, css, functions
Smashing Animations: Magnificent SVGs With “<use>” and CSS Custom Properties (mal/sma)20036
animations, transforms, svg, css, custom-properties
Monorepo vs. Multi-Repo vs. Git Submodule vs. Git Subtree: A Complete Guide for Developers20035
guides, architecture, monorepos, git, version-control, comparisons
JavaScript Just Leveled Up: ES2025—You’ll Fall in Love With (jsd)20034
javascript, ecmascript, standards
It Ain’t Easy to Move a Side Project Off Big Tech (thi)20033
migrating, vercel, sveltekit
Is Figma in Its Accessibility Era?20032
figma, accessibility
10 Tiny UI Fixes That Make a Big Difference20031
design, forms, spacing, alignment, consistency, hierarchy, usability, best-practices
TypeScript’s Rise in the AI Era: Insights From Lead Architect, Anders Hejlsberg (aar)20030
typescript, ai
Combining Scroll-Driven Animations With “@starting-style” (bra)20029
css, scrolling, animations
Advanced Beginner’s Guide to ClojureScript (rom)20028
guides, javascript
Now Available: “On Web Development II”! (j9t)20027
books, html, css, engineering-management, maintainability, quality
100, 150, or 200? Debunking the Alt Text Character Limit20026
alt-text, accessibility, images, link-lists
A (Kind of) Farewell to the Web (joh)20025
web-platform, frameworks, ai, career
Explaining the Accessible Benefits of Using Semantic HTML Elements (geo/css)20024
html, semantics, accessibility
Brutalism in the AI Era: Why Ugly Might Be the Only Honest Aesthetic Left (web)20023
design, aesthetics, brutalism
You Are Going to Get Priced Out of the Best AI Coding Tools (dpa)20022
ai, tooling, economics
Why Separate Guest and Logged in States Create Accessibility Barriers20021
accessibility
Introducing the OWASP Top 10:2025 (she+/owa)20020
introductions, owasp, security, vulnerabilities
Why 44% of Your Audience Might Not Understand You: An Interview With Jamila Savoy20019
interviews, content, writing, accessibility
Six Key Components of UX Strategy (vit/sma)20018
user-experience, strategies
The Web Animation Performance Tier List (cit)20017
animations, performance, javascript, css, apis
The Weird Parts of “position: sticky;” (ada/fro)20016
css, positioning
No Close Quote? (css)20015
css
How to Throttle Specific Requests in Chrome DevTools (mat/deb)20014
how-tos, dev-tools, browsers, chrome, throttling
Using Composability Over Inheritance to Scale Design Systems (ase/zer)20013
design-systems, components, inheritance, scalability
Real Performance Benchmarks of PHP 8.5 vs. PHP 8.3 and Node.js20012
performance, php, nodejs, comparisons
Why Big Tech Won’t Hire Flutter Developers (and Why You Should Care) (ala)20011
career, flutter, economics
Top 10 Essential Productivity Software for 202520010
tooling, productivity, collaboration, communication
Some Software Bloat Is OK20009
quality, technical-debt, performance
How I Use AI to Build Frontend Apps: My Candid, Messy Process (bla)20008
ai, processes, debugging, claude
The Inner Workings of JavaScript Source Maps (man/pol)20007
javascript, typescript, source-maps
Learn React Server Components (jad)20006
videos, tutorials, react, components
WebKit Features for Safari 26.1 (jen/web)20005
release-notes, webkit, safari, browsers
What’s New in ViteLand: October 2025 Recap (man)20004
release-notes, vite, vitest, rolldown, oxc
Making a Design System That Gets Adopted (cle)20003
design-systems, case-studies
What Is Detached State in Git and How Do You Recover From It?20002
git, command-line
Dark Mode Is the New Comic Sans (and You Know It) (web)20001
dark-mode, design, accessibility
You Need to Become a Full Stack Person (loc)20000
ai, career
The Fundamentals Problem (chr)19999
fundamentals, design, prioritization
Why Most Developers Stay “Mid” Forever19998
career
“pathLength” Makes Makes SVG Path Animations Easier to Manage (ste)19997
svg, images, animations
Why We Migrated From Python to Node.js19996
migrating, python, nodejs
Grayscale Testing: The Missing Step in Color Accessibility (pop)19995
accessibility, testing, colors
The “Most Hated” CSS Feature: “tan()” (mon/css)19994
css, functions, math
Running Node.js in a Hugging Face Space (tom)19993
nodejs, hugging-face
I’ve Reviewed 500 Java Projects—Everyone Makes This Same Dumb Mistake19992
java, mistakes, strings
Why I Don’t Test Different Designs at the Same Time (ada)19991
design, testing
TL;DR: How Your Advantage Becomes Your Achilles Heel (ste)19990
product-management, ai
Top 100 Domains on Frontend Dogma (fro)19989
frontend-dogma
Reduce LLM Costs: Token Optimization Strategies (ros)19988
ai, token-optimization, economics
Global Digital Accessibility Salary Survey (web)19987
surveys, accessibility, career
AI Broke Interviews19986
ai, interviewing, hiring
It’s Almost 2026: Why Are We Still Arguing About CSS vs. Tailwind19985
tailwind, css, comparisons
12 Essential Java Best Practices Every Developer Should Follow19984
programming, java, best-practices, principles
Context Engineering for Non-Engineers (cwo)19983
ai, prompting, claude
Node.js 24 Becomes LTS: What You Need to Know (nod)19982
nodejs, nsolid
Your URL Is Your State (ahm)19981
urls, state-management
AI and Alt Text (ted+/web)19980
videos, ai, alt-text, images, accessibility
Evergreen Web Design Is a Lie (but Maybe That’s Okay) (web)19979
design, creativity
The Hidden Cost of Projects: Why Latency Kills Value19978
project-management, processes
Architectural Debt Is Not Just Technical Debt (may)19977
architecture, technical-debt
Just Use a Button (cfe)19976
html, buttons, semantics
Testing Methods: Keyboard (No Exception) (dec)19975
accessibility, testing, keyboard-navigation
Use Cases for Field Sizing (sha)19974
forms, css, examples
New to the Web Platform in October (rac)19973
release-notes, web-platform, browsers, firefox, chrome
After the AWS Outage19972
aws, cloud-computing
Comparing Interviews at 8 Large Tech Companies (ger)19971
interviewing, google, amazon, atlassian, comparisons
Self-Hosting Versus Lots of Small IndieWeb Providers19970
self-hosting, indieweb
HTML Minifier: A 12-Year Journey Building and Maintaining an Open Source Tool19969
html, minification, tooling, windows, asp-net, retrospectives
The Real Problem With AI Coding19968
ai
Developers Shouldn’t Learn Design—Designers Shouldn’t Code (phi)19967
design, programming, processes, collaboration, project-management
How to Use CSS “line-clamp” to Trim Lines of Text (dxn/log)19966
how-tos, css, typography
Removing XSLT for a More Secure Browser (dro)19965
chromium, chrome, browsers, xsl, web-platform, security
AI Frontend Generator Comparison: Claude Code vs. v0 vs. Cursor vs. Replit (hcr)19964
ai, code-editors, claude, vercel, cursor, tooling, comparisons
Blogging Gets Serious in 2001 With Warblogs and Movable Type (ric)19963
web, history, blogging, examples, movable-type
Amazon’s Return to Office Mandates Backfire (jpr)19962
amazon, aws, culture, economics
Getting Creative With Small Screens (mal/css)19961
design, responsive-design, mobile, css
The Coming War of AI Browsers: Why the Web Will Never Be the Same Again (web)19960
ai, browsers, open-web, personalization
Flutter’s Silent UI Killers19959
flutter
Arnas Donauskas on AI-Powered Troubleshooting for Websites (nat)19958
podcasts, interviews, ai, debugging, tooling
Sometimes the Best Accessibility Fix Is a Usability Fix19957
accessibility, usability
Get Started With Manual Testing (pop)19956
introductions, accessibility, testing
I Built the Same App 10 Times: Evaluating Frameworks for Mobile Performance (che)19955
frameworks, mobile, performance, comparisons, nextjs, tanstack, nuxt, angular, marko, solidstart, solidjs, sveltekit, qwik, astro, htmx
Will npm’s New Security Steps Stop Attacks? (rev)19954
security, npm, maintenance, foss
HTTPS by Default (jde+)19953
http, security, chrome, browsers
ChatGPT Sez Build With Semantics First (ste)19952
chatgpt, chatgpt-atlas, ai, browsers, html, semantics, accessibility
Octoverse: A New Developer Joins GitHub Every Second as AI Leads TypeScript to #119951
github, metrics, productivity, ai, foss, security, programming
Import JavaScript Like It’s 2026 (sto)19950
javascript, performance
Mastering “URLPattern” for Cross-Platform Routing (jsd)19949
nodejs, routing
Node.js v22 to v24 (aug+/nod)19948
nodejs, migrating
Start Implementing View Transitions on Your Websites Today (cyd/pic)19947
css, view-transitions, javascript, apis
Perfectly Pointed Tooltips: A Foundation (css/fro)19946
tooltips, css, anchor-positioning
Agentic AI and Security (ksi/mfo)19945
ai, architecture, security
Springs and Bounces in Native CSS (jos)19944
css, animations, transitions, effects, functions
Parenthetical Asidenotes (mey)19943
html, css
Who Rules AI Search? What 3 Months of AI Visibility Data Tells Us (sem)19942
search, ai, domains, metrics
Google Kills Privacy Sandbox (pro)19941
google, privacy, apis
Inlining Critical CSS: Does It Make Your Website Faster? (mat/deb)19940
css, critical-path, performance, lazy-loading
16 Charts That Explain the AI Boom (bin)19939
ai, metrics, economics, openai, anthropic, facebook+meta, oracle, google, microsoft, aws
What I Learned Porting Mastro From Deno to Node.js (mas)19938
lessons, migrating, deno, nodejs
Why Do We Need Dithering?19937
images, dithering
Your Accessibility Score Is Lying to You19936
accessibility, metrics, testing
The State of Django 2025 (wsv/jet)19935
surveys, metrics, django
A11y 101: 2.4.5 Multiple Ways (nat)19934
introductions, accessibility, wcag
JavaScript for Everyone: Iterators (wil/sma)19933
javascript
Express.js 6 and Beyond: Modernizing the Most Popular Node.js Framework (nod)19932
nodejs, express, frameworks, modernization
The JavaScript Feature You’ve Probably Never Used Allows Running Untrusted JavaScript Safely19931
javascript
Alt Text or Image Description?19930
accessibility, images, alt-text, comparisons, terminology
AI for War: Big Tech Empowering Israel’s Crimes and Occupation (mar)19929
ai, legal, google, aws, microsoft, palantir
“Good Engineering Management” Is a Fad (let)19928
engineering-management, prioritization
Don’t Forget These Tags to Make HTML Work Like You Expect (jim)19927
html
Testing Methods: No Keyboard Trap (dec)19926
accessibility, testing, wcag, keyboard-navigation
The Origin Story of JavaScript (ann/cas)19925
videos, history, web, javascript, ecmascript, browsers, browser-wars, browser-engines, standards
What’s New in Next.js 16 (tre)19924
nextjs
The Sky Is Falling, the Web Is Dead (ern/ted)19923
web, history
Mistakes I See Engineers Making in Their Code Reviews (sea)19922
code-reviews, processes, communication, mistakes
How to Write Clear and Effective Bug Reports That Everyone Loves19921
how-tos, bugs, documentation
The Edge Cases That Break Hearts (and Products) (lau/nng)19920
design, usability, accessibility, user-experience
The Curse of the Custom Cursor (mal)19919
cursors, design, accessibility
How Designers Become Builders and the Future of Tooling19918
videos, design, github
Directives and the Platform Boundary (tan/tan)19917
javascript, frameworks
High-Performance Syntax Highlighting With [the] CSS Highlights API19916
css, apis, syntax-highlighting
You Already Have a Git Server19915
git, servers, command-line
Code Like a Surgeon (geo)19914
ai
The Layered Aesthetic: Depth, Complexity, and Chaos Done Right (web)19913
design
CSS Animations That Leverage the Parent–Child Relationship (pre/css)19912
css, animations
What’s an Interactive Element? (mat)19911
html, focus, concepts
Introducing TanStack Start Middleware (ada/fro)19910
introductions, tanstack
Scrum Mistakes: What Teams Get Wrong and How to Fix It19909
scrum, agile, processes, releasing, mistakes
Atlas Ableism (ste)19908
chatgpt-atlas, browsers, accessibility, compliance
Your Tokens Have Become Infrastructure (mur)19907
design-tokens, design-systems
How to Create a Strong Design System and Survive: Case Study19906
how-tos, design-systems, case-studies, lessons
Container Queries and Units in Action (mia)19905
css, container-queries, units
Preparing for Verso and Beyond: Future-Proofing Your Frontend for New Browser Engines (ele/des)19904
guest-posts, verso, servo, browsers, browser-engines
Retrofitting a Design System Into an Existing Product19903
design-systems, consistency
A Brief History of Domains (pet)19902
web, history, domains, dns
Is It Time to Regulate React? (dbu)19901
react
NaN, the Not-a-Number Number That Isn’t NaN (wil/pic)19900
javascript
Does Your Site Need a /ai Page?19899
ai
Yes, Let’s Teach LLMs Accessibility, but Also Provide the Companies Using Them With Better Strategies (hdv)19898
ai, accessibility, advocacy
Meetings and Interruptions Are Still the Biggest Obstacles for Developers, Even With AI19897
productivity, collaboration
React vs. Backbone in 202519896
react, backbone, comparisons, frameworks
“Their History Is Just Erased”: Google Drops a Key Program for Boosting Women in Tech (cnn)19895
google, community
React and Remix Choose Different Futures19894
react, remix, simplicity, complexity, comparisons
Solved by Modern CSS: Section Layout (sha)19893
css, layout, grids, typography, liquid-design
Error Handling—UX Design Patterns19892
user-experience, design, errors, forms
An Introduction to JavaScript Expressions (wil/css)19891
introductions, javascript
OpenAI, ARIA, and SEO: Making the Web Worse (aar)19890
chatgpt-atlas, openai, browsers, accessibility, aria, seo
The Charm of JavaScript: Boom Mics and Clown Shoes (wil+/iga)19889
podcasts, interviews, javascript
Build Your Own Database (nan)19888
guides, databases
The Hidden Costs of Bad Client Communication in Design Projects (and How to Fix Them)19887
business-relations, communication, collaboration, design
4 Unconventional Ways to Cast in TypeScript (pol)19886
typescript
Importing vs. Fetching JSON (jaf)19885
json, javascript, data-fetching, comparisons
CSS Layout: Flexbox, Grid, Media Queries, and Container Queries (rau)19884
css, layout, flexbox, grids, media-queries, container-queries, introductions
Challenging the Idea of “Optional HTML” (mar)19883
guest-posts, html, minimalism
Solved by CSS Scroll State Queries: Hide a Header When Scrolling Down, Show It Again When Scrolling Up (bra)19882
css, scrolling
Introducing ChatGPT Atlas19881
introductions, chatgpt-atlas, browsers
Introducing ChatGPT Atlas (sim)19880
introductions, chatgpt-atlas, browsers
Fixing Temporal Input Styling in Safari (cfe)19879
forms, time, safari, browsers, css
CSS “@starting-style” Debugging Is Available in Chrome DevTools (bra)19878
css, transitions, debugging, dev-tools, chrome, browsers
Designers Often Do Invisible Work That Matters—Here’s How to Show It19877
design, user-experience, communication
Chasing “Done”: Why Software Never Ends—and Why That Matters (emb)19876
programming, maintenance, economics, processes
W3C Web Content Accessibility Guidelines 2.2 Approved as ISO/IEC International Standard (w3c)19875
accessibility, wcag, standards, w3c
How AI Works and How Users Think About It: Study Guide (nng)19874
guides, ai, training, link-lists
Next.js 16 (fee+)19873
release-notes, nextjs
My Highlights From the New Deno Deploy (phi/den)19872
deno, deploying