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 (4)

→ 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#
Names Are Hard but They Don’t Have to Be (col)20458
internationalization, naming, validation
Handling Breaking Changes in a Design System Without Causing Chaos (sha/zer)20457
design-systems, maintenance, semver, communication
Understanding the Fundamentals of CSS Layout (pol)20456
fundamentals, css, layout, grids, flexbox, positioning
CSS Optical Illusions (alv)20455
css, effects, examples
Why Webflow Isn’t the Future—Yet (web)20454
webflow, low-and-no-code
10 Digital Accessibility Predictions for 2026 (ons)20453
accessibility, outlooks, wcag, career, ai, legal, assistive-tech
When Will CSS Grid Lanes Arrive? How Long Until We Can Use It? (jen/web)20452
css, grids, masonry, layout
CTA Hierarchy in the Wild (jim)20451
user-experience, buttons, youtube
10 Tips for Effective User Experience Evaluation20450
user-experience, usability, content, design, testing, tips-and-tricks
Barriers From Links With ARIA (aar)20449
accessibility, links, html, aria
The Conditionally Open Web (cor)20448
open-web
Mobile App Accessibility Under EN 301 549 v4.1.020447
accessibility, mobile, en-301-549, standards
What Makes Generated UI Worth Keeping?20446
design, ai, branding, tooling
How to Diagnose Lighthouse Score Discrepancies Between Tools (mat/deb)20445
how-tos, performance, lighthouse, google, tooling
Floating Action Buttons Are Bad, and What to Do Instead (eri)20444
buttons, usability, material-design, google
Why Light-Weight Websites May One Day Save Your Life (mah)20443
performance, accessibility, print, frameworks
Accessibility 101 and Core Concepts (kno)20442
videos, accessibility, introductions, concepts
The Accessibility Manager Moment No One Warns You About20441
accessibility, leadership, legal, communication
Securing npm Is Table Stakes (nza+/cha)20440
podcasts, interviews, npm, security, ai
Demystifying Screen Reader Use for Manual Testing: Deneb Pulsipher and Kosi Asabere20439
videos, accessibility, testing, screen-readers
CSS in 2026: The New Features Reshaping Frontend Development (log)20438
css, functions
How to Favicon in 2026: Three Files That Fit Most Needs (sit/evi)20437
how-tos, images, favicons
I Learned the First Rule of ARIA the Hard Way (css)20436
accessibility, aria, semantics, html
Designing Beyond the Happy Path in Design Systems (ste/zer)20435
design-systems, design
Developing Trustworthy Information (jma)20434
writing, content, ai
Faking a Fieldset-Legend (tyl/clo)20433
html, forms, css
Node.js 16 to 25 Performance Benchmarks20432
nodejs, performance, metrics, comparisons
Lowering the Specificity of Multiple Rules at Once (mat)20431
css, cascade
Inside Turbopack: Building Faster by Building Less (she+)20430
turbopack, performance
A Brief History of Programming… (fir)20429
videos, programming, history
Animating Responsive Grid Layout Transitions With GSAP Flip (cod)20428
css, grids, layout, animations, gsap, plugins
Rethinking “Pixel Perfect” Web Design (ami/sma)20427
design, quality
View Transitions and Playing Video (chr/fro)20426
javascript, view-transitions, multimedia
AI’s Missing Ingredient (cwo)20425
ai, vibe-coding, creativity, design
Some Thoughts on the Open Web (mno)20424
open-web, web
Design Tokens With Confidence (luk)20423
design-tokens, json, css
What Figma Got Wrong About Design Systems (web)20422
figma, design-systems
The State of WebAssembly—2025 and 2026 (uno)20421
webassembly, retrospectives, outlooks
What Design Leaders Must Unlearn to Lead in an AI-First World20420
design, leadership, ai
“Code Only” Props in Figma (nat)20419
figma, props
Design in Code, Get Praise (ada)20418
design, processes, communication
How to Build a WordPress Block Theme20417
how-tos, wordpress, theming
Vercel vs. Netlify vs. Cloudflare: Serverless Cold Starts Compared20416
vercel, netlify, cloudflare, serverless, comparisons, metrics
jQuery 4.0.0 (tim/jqu)20415
jquery, release-notes
AdonisJS v7 Is Feature-Complete and Entering Final Validation (vir/ado)20414
release-notes, adonisjs
ASCII Characters Are Not Pixels: A Deep Dive Into ASCII Rendering20413
deep-dives, ascii, rendering
The Astro Technology Company Joins Cloudflare20412
astro, cloudflare
Beyond Compliance: 5 Surprising Ways the UVAC Framework Turns Accessibility Into a Brand Powerhouse (wil)20411
accessibility, processes, concepts
When Design Kills Usability—Meet the Custom Cursor (mal)20410
videos, design, usability, cursors
Chrome 145 Adds Experimental Support for Vertical Tabs (bra)20409
chrome, google, browsers
Better Defaults for Popovers (mat)20408
pop-overs, css, resets
State of UX 2026: Design Deeper to Differentiate (nng)20407
user-experience, design, outlooks, career, ai
PWA (htt)20406
web-almanac, studies, research, metrics, progressive-web-apps, web-apps, web-workers
Ecommerce (htt)20405
web-almanac, studies, research, metrics, ecommerce, tooling, performance, web-vitals, lighthouse
CMS (htt)20404
web-almanac, studies, research, metrics, content-management, tooling, wordpress, user-experience, performance, web-vitals, lighthouse, apis
Security (vik+/htt)20403
web-almanac, studies, research, metrics, security, tls, certificates, cookies, csp, http-headers, apis, sanitization, configuration
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability20402
tailwind, comparisons, css-in-js, maintainability, css, javascript
Usability Heuristics and Competition in Games20401
usability, heuristics, design, aesthetics
The Incredible Overcomplexity of the Shadcn Radio Button (pau)20400
html, forms, shadcn, complexity
On Coding Agents and the Future of Design (jef)20399
ai, ai-agents, design, outlooks
Software as Fast Fashion (tan)20398
programming, ai, sustainability, economics
Fonts (htt)20397
web-almanac, studies, research, metrics, fonts, performance, css
The Missing Link for Web Components (kin/fro)20396
web-components, typescript, json, mcp, ai, tooling
Building a Scroll-Driven Dual-Wave Text Animation With GSAP (cod)20395
gsap, animations, scrolling
Performance (25p+/htt)20394
web-almanac, studies, research, metrics, performance, web-vitals, hints, speculation
Third Parties (htt)20393
web-almanac, studies, research, metrics, embed-code
Using “100vw” Is Now Scrollbar-Aware (in Chrome 145+, Under the Right Conditions) (bra)20392
css, units, scrolling, chrome, google, browsers
Accessibility (bog+/htt)20391
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)20390
design, processes
Accessible Faux-Nested Interactive Controls (eri/pic)20389
accessibility, conformance, html, nesting
Privacy (htt)20388
web-almanac, studies, research, metrics, privacy, legal, consent-management, do-not-track
Generative AI (chr+/htt)20387
web-almanac, studies, research, metrics, ai, robotstxt, llmstxt
WebAssembly (htt)20386
web-almanac, studies, research, metrics, webassembly
CDN (htt)20385
web-almanac, studies, research, metrics, content-delivery, http, performance, http-headers, compression, tls, hints
SEO (htt)20384
web-almanac, studies, research, metrics, seo, robotstxt, llmstxt, links, content, structured-data, amp, html, internationalization
Cookies (htt)20383
web-almanac, studies, research, metrics, cookies
Page Weight (bar+/htt)20382
web-almanac, studies, research, metrics, performance, web-vitals, lighthouse, google
So You Think Your Website Is Doing Great (cit)20381
html, javascript, css, quality
Beyond Manual Audits: How Automation Strengthens Accessibility (equ)20380
accessibility, auditing, automation, wcag
Making GitHub Actions Suck a Little Less20379
github-actions
Node.js January 2026 Security Release: What Changed and Why It Matters (nod)20378
nodejs, security
The “Senior Developer” Is Now the New “Entry Level”20377
career, ai
Smashing Animations: Theming Animations Using CSS Relative Colour (mal/sma)20376
animations, colors, theming, css
The Unhinged World of Tech in 2026… (fir)20375
videos, outlooks, ai, javascript
Live Region Support (aar)20374
accessibility, live-regions, support, screen-readers, nvda, jaws, voiceover
Everything You Need to Know About Ruby 4.0 (hon)20373
ruby
EPUB and HTML—Survey Results and Next Steps (rei/w3c)20372
surveys, epub, html
Traditional Code Review Is Dead: What Comes Next?20371
code-reviews, ai, processes, infrastructure, scalability
How to Use OpenCode: A Practical Guide and Builds20370
guides, opencode, ai, mcp, tooling, installing
Introducing the “<geolocation>” HTML Element (tom+)20369
introductions, html, geolocation, chrome, google, browsers
ARIA Roles Can Remove Their Children’s Semantics (ste)20368
html, aria, semantics, accessibility
18 Predictions for 202620367
outlooks, ai, usability, user-experience
The Invisible Work (hvp)20366
leadership, productivity, processes
Mitigating Denial-of-Service Vulnerability From Unrecoverable Stack Space Exhaustion for React, Next.js, and APM Users (mco+/nod)20365
nodejs, security, vulnerabilities, react, nextjs, tooling, monitoring, performance
Tuesday, January 13, 2026 Security Releases (nod)20364
release-notes, nodejs, security
Simulating Crop Marks (chr/fro)20363
css
Astro 6 Beta (mat)20362
release-notes, astro
Just the Browser (cor)20361
websites, browsers, chrome, google, firefox, mozilla, edge, microsoft
Aspire for JavaScript Developers (dav)20360
tooling, javascript, typescript
Design Systems and Shareable Browser Support (rob)20359
design-systems, browsers, browserslist, support
A Polyfill for the HTML “switch” Element (tom)20358
html, forms, polyfills
Solid.js Best Practices (bre)20357
solidjs, best-practices, examples
Is There Too Much Design in Design Systems? (sha)20356
design, design-systems
Don’t Start With AI, Start With the Problem (cal/nng)20355
videos, ai, processes
Manufacturing as Code Is the Future, and the Future Is Now20354
programming, outlooks
OpenCode vs. Claude Code (bui)20353
opencode, claude, anthropic, ai, comparisons
Stop Turning Everything Into Arrays (and Do Less Work Instead)20352
javascript, methods, arrays
SVG Filters Are Just Amazing (ami)20351
svg, filters
Comments Considered Harmful in the Age of LLMs (yeg)20350
comments, ai, maintainability
Focus Rings With Nested “contrast-color()”? (dav)20349
css, selectors, functions, focus, contrast
Stop Using MySQL in 2026, It Is Not True Open Source (ott)20348
mysql
Don’t Fall Into the Anti-AI Hype (ant)20347
ai, career
How Wrong Can a JavaScript Date Calculation Go? (phi)20346
javascript, time, apis
On Abbreviating Accessibility (ons)20345
accessibility, microcontent
What Is the Minimum Markup Needed to Create a Modal? (rus)20344
modals, minimalism, html, css, accessibility
Prompt Engineering Won’t Fix Your Architecture20343
architecture, ai
How to Steal Any React Component20342
react, components
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)20341
mobile, javascript, animations
Death to Scroll Fade (dbu)20340
scrolling, effects, performance
How Markdown Took Over the World (ani)20339
markdown, web
Not All Browser APIs Are “Web” APIs (pol)20338
apis
Brief Note on Application Keyboard Shortcuts (aar)20337
accessibility, keyboard-shortcuts, screen-readers
Your Brand Just Evolved: The Rise of AI-Generated Identities (web)20336
design, branding, ai
Very Good Components (bee)20335
websites, components, html
Popover Context Menus With Anchor Positioning (chr/fro)20334
css, tooltips, pop-overs, anchor-positioning
Node.js Package Configuration Guide (nod)20333
guides, packages, dependencies, configuration, commonjs, esm
Judging Severity in Accessibility Issues (joe)20332
accessibility
What Makes a Good Tech Meet-Up?20331
discussions, community
A Data Model for Git (and Other Docs Updates) (b0r)20330
git
Getting Started With Mistral Vibe CLI and Exploring Devstral 2 Small—Best Local Model?20329
videos, introductions, mistral, ai
Async React20328
videos, react, asynchronicity
Exploring React Performance (en-)20327
videos, react, performance
Profiling With React Performance Tracks20326
videos, react, profiling, performance
Designing Page Transitions20325
videos, design, transitions, effects
Software Is Culture (fig)20324
culture
2026 Accessibility Hiring Looks Busy, Yet the Patterns Show Underlying Weakness20323
accessibility, career
Common Misconceptions About Testing Accessibility (tet)20322
accessibility, testing
Modern Emails Using React20321
videos, email, react
Date Is Out, Temporal Is In (wil/pic)20320
javascript, time
Ethical and Resilient Blog Hosting (pad)20319
hosting, blogging, ethics
npm to Implement Staged Publishing After Turbulent Shift Off Classic Tokens (sar/soc)20318
npm, dependencies, security, github
Web Dependencies Are Broken—Can We Fix Them? (lea)20317
dependencies, javascript, import-maps, web-platform
4 CSS Features Every Front-End Developer Should Know in 2026 (arg)20316
css, functions, scrolling
Designing With AI-Readable Design Systems in Cursor20315
design, design-systems, ai, cursor, code-editors
5 Accessibility Checks to Run on Every Component (hdv/zer)20314
accessibility, components, testing, keyboard-navigation, design-tokens, microcontent, zooming, screen-readers
Google Broke My Heart (per)20313
google, search, licensing, legal
2025 JavaScript Rising Stars20312
javascript, frameworks, libraries, react, vuejs, tooling, ai, mobile, desktop, state-management, css-in-js, testing, static-site-generation, graphql, retrospectives
WASI 1.0: You Won’t Know When WebAssembly Is Everywhere in 202620311
webassembly, components, standards
We Fixed a 6-Year-Old JavaScript Memory Leak (mat/deb)20310
javascript, memory
The Text Mode Lie: Why Modern TUIs Are a Nightmare for Accessibility20309
accessibility, command-line, ai, gemini, nvda, vi+vim, unix-like
How to “@scope” CSS Now That It’s Baseline (dxn/fro)20308
css, scope, examples
How to Create a Pixel-to-Voxel Video Drop Effect With Three.js and Rapier (cod)20307
how-tos, javascript, effects, tooling, gsap, threejs
JavaScript Frameworks—Heading Into 2026 (rya/thi)20306
javascript, frameworks, outlooks, ai
How I Evaluate an ACR (VPAT) (aar)20305
accessibility, compliance, vpat-acr, processes
Claude Devs Complain About Surprise Usage Limits, Anthropic Blames Expiring Bonus (tho/the)20304
claude, anthropic, ai
Eric Bailey’s Predictions for the Future of Accessibility (eri)20303
accessibility, outlooks
Streaming JSON in Just 200 Lines of JavaScript20302
streaming, json, javascript
Anna Thielke’s Predictions for the Future of Accessibility20301
accessibility, outlooks
Damian Sian’s Predictions for the Future of Accessibility20300
accessibility, outlooks
Kai Wong’s Predictions for the Future of Accessibility20299
accessibility, outlooks
The Nine Levels of JavaScript Dependency Hell (and)20298
javascript, dependencies, maintainability
Pre-Tenuring in V8 (win)20297
v8, javascript-engines
I Built an App in Every Frontend Framework20296
frameworks, libraries, react, vuejs, svelte, angular, lit, marko, jquery, alpinejs, solidjs, astro, qwik, comparisons
How GitHub Monopoly Is Destroying the Open Source Ecosystem (plo)20295
foss, github, microsoft
The Next Two Years of Software Engineering (add)20294
programming, career, outlooks, ai
V7: Typographic Scales and Technical Pens20293
design, typography, css, case-studies
How Browsers Work (dmy)20292
websites, guides, browsers, urls, http, tcp, html, dom
TIL: Why ARM Has a JavaScript Instruction20291
javascript
Sounds on the Web20290
web, multimedia
Working With Git Inside Vim20289
git, vi+vim, code-editors, configuration
Being a Colourblind Designer (wpa)20288
videos, accessibility, color-blindness, colors, design
21 Lessons From 14 Years at Google (add)20287
lessons, google, career
Web Development Is Fun Again20286
ai, creativity
The Package Management Landscape (and)20285
dependencies, tooling, overviews, link-lists
10 UX Design Shifts You Can’t Ignore in 202620284
design, user-experience, ai, outlooks
The Code Review That Cost $2 Million20283
code-reviews, economics, ai
Managing Infrastructure Across Multiple Environments20282
infrastructure, dev-ops, maintenance
Building a JavaScript Runtime in One Month (the)20281
javascript, runtimes, functionality
2026: The Year of My Website (the)20280
indieweb, social-media
Security Basics for Vibe-Coders (owe/pro)20279
fundamentals, security, vibe-coding, ai
A Website to Destroy All Websites (hen)20278
web, indieweb
JavaScript’s “for…of” Loops Are Actually Fast20277
javascript, loops, performance
“!important” and CSS Custom Properties (chr/fro)20276
css, custom-properties, cascade
On Using IndieWeb Protocols Like Webmentions and Keeping Your Website Separate From Social Media (pat)20275
indieweb, webmentions, social-media
How Can You Tell What’s Allowed Inside Each HTML Element? (rus)20274
html, conformance
What’s !important: Conditional View Transitions, CSS/SVG Text Effects, the Best of CSS Bluesky, and More (dxn/css)20273
css, retrospectives, view-transitions, design-systems, firefox, svg
Teaching Agents About Performance Insights (web/per)20272
performance, ai, ai-agents
Chrome DevTools Features I Use All the Time (and Why You Should Too) (kee/per)20271
dev-tools, chrome, google, browsers, performance, accessibility, lighthouse, network, embed-code
What Happened to WebAssembly (emn)20270
webassembly
More Efficiency, More Demand20269
efficiency, ai, career
Building the Brain of Your Accessibility AI (ted)20268
accessibility, ai
The Curious Case of the Shallow Session SPAs (sli/per)20267
performance, single-page-apps, javascript, frameworks, metrics
From Theory to Tiny: Implementing Compression Dictionaries (rya/per)20266
performance, compression, content-delivery
Touch Targets and Web Accessibility20265
accessibility, touch
Testing Methods: Status Messages (dec)20264
accessibility, testing, wcag, notifications, link-lists
8 Predictions for 2026: What Comes Next in AI? (phi)20263
ai, outlooks
Why Developers Are Ditching Frameworks for Vanilla JavaScript20262
frameworks, javascript, apis, performance, micro-frontends, architecture
HTML Content Categories (rus)20261
html, semantics
“require(esm)” in Node.js: From Experiment to Stability (joy)20260
nodejs, esm
The 8 Trends That Will Define Web Development in 2026 (log)20259
trends, outlooks, ai, frameworks, tanstack, typescript, edge-computing, presentational-html
Testing Methods: Name, Role, Value (dec)20258
accessibility, testing, wcag, aria, link-lists
How to Design for (and With) Deaf People (vit/sma)20257
how-tos, design, accessibility
7 Steps of a Web Performance Journey (ser/per)20256
performance, processes
Introducing Flint (jos)20255
introductions, tooling, linting
7 Real Predictions for Web Design in 2026 (web)20254
design, outlooks, ai, aesthetics
“Why Do You Code?”—a Surprisingly Hard Question20253
discussions, programming, career
Reliability by Design20252
design, ai, link-lists
Why AI-Generated UX Still Feels Off20251
user-experience, ai
Opening and Closing Dialogs Without JavaScript Using HTML Invoker Commands (sch)20250
modals, html
pnpm in 2025 (koc/pnp)20249
pnpm, retrospectives
Third Parties and Single Points of Failure (pau/per)20248
performance, embed-code, metrics
How I Write Custom Elements With “lit-html” (fro)20247
web-components, lit
How to Dynamically Install Custom Elements (hey)20246
how-tos, web-components, naming, javascript
Testing Methods: Accessible Authentication (Enhanced) (dec)20245
accessibility, testing, wcag, authentication, security
The Final Nail in the HTML5 Document Outline Coffin (tem)20244
html, headings, accessibility
Tests for CSS Generated Content Alternative Text (rus)20243
css, generated-content, alt-text, accessibility, support, voiceover, nvda, jaws, screen-readers
The Fall of JavaScript (yeg)20242
javascript, typescript, programming
Testing Methods: Accessible Authentication (Minimum) (dec)20241
accessibility, testing, wcag, authentication, security
Tips for Making the Performance Panel Less Overwhelming (duf/per)20240
performance, dev-tools, browsers, chrome, google, tips-and-tricks
Trends That Defined JavaScript in 202520239
javascript, trends, retrospectives, react, frameworks, tooling, ai
Eight Quick Things to Remember When Using “aria-owns” (rus)20238
accessibility, aria, dom, assistive-tech
JavaScript Creator Warns Against “Rushed Web UX Over Native” as Windows 11 Leans Harder on WebView2 and Electron (win)20237
windows, microsoft, web-apps, electron
Testing Methods: Redundant Entry (dec)20236
accessibility, testing, wcag, forms
Chrome DevTools for Debugging Web Performance (nuc/per)20235
performance, debugging, dev-tools, chrome, google, browsers
You Can’t Design Software You Don’t Work On (sea)20234
software-design, architecture
Testing Methods: Error Prevention (All) (dec)20233
accessibility, testing, wcag, errors
Revisiting HTML Streaming for Modern Web Performance (per)20232
performance, html, streaming
The Most Dangerous Person on Your Team Is “Dave” (and He Just Quit) (hac)20231
collaboration, documentation, ai, prompting
The Cost of Consistency: Avoiding Design System Bottlenecks (omi)20230
design-systems, consistency, lessons, angular
Testing Methods: Help (dec)20229
accessibility, testing, wcag
Chasing BFCache Navigations (per)20228
performance, bfcache, caching
How to Stay Ahead of AI as an Early-Career Engineer (gwe/iee)20227
how-tos, career, ai
Ruby Turns 30: A Celebration of Code, Community, and Creativity (jet)20226
ruby, ruby-on-rails, history, anniversaries
Nobody Knows How Large Software Products Work (sea)20225
programming, software-design, complexity, maintainability
TTFB Doesn’t Mean What You Think It Means (pro/per)20224
performance, concepts, http
The Three Semantics of HTML (mat)20223
html, semantics
Web Components Are the Comeback Nobody Saw Coming20222
web-components, frameworks, developer-experience
Node.js in 2026 With Rafael Gonzaga (raf)20221
podcasts, interviews, nodejs, outlooks
Why Object of Arrays (SoA Pattern) Beat Interleaved Arrays: A JavaScript Performance Rabbit Hole20220
javascript, performance, arrays
Fixing TypeScript Performance Problems: A Case Study (vig)20219
typescript, performance, case-studies
Testing Methods: Error Suggestion (dec)20218
accessibility, testing, wcag, errors, link-lists
For the Love of “<details>” (dev/mat)20217
disclosure-widgets, html
Fixing the URL Params Performance Penalty (tun/per)20216
performance, urls, caching, http-headers, examples
The AI Divide20215
ai, studies, research
Testing Methods: Labels or Instructions (dec)20214
accessibility, testing, wcag, labels, forms, link-lists
Why “role="button"” on a “<button>” Does Nothing (rus)20213
html, buttons, attributes, aria
The Two Most Important Tools for HTML Developers20212
tooling, html, conformance, minification, html-minifier, htmlnano, swc
Five Accessibility Trends to Watch in 202620211
accessibility, trends
2026 Predictions: The Next Big Shifts in Web Accessibility (web)20210
accessibility, outlooks, ai, wcag, html
Optimizing for 75% Is Fine—Optimizing for 90% Is Where It Gets Interesting (jor/per)20209
performance, web-vitals, optimization
The HTML Elements Time Forgot (val/mat)20208
html, history
A Year of Vibes (mit)20207
ai, retrospectives, wish-lists
“text-decoration-inset” Is Like Padding for Text Decorations (dxn/css)20206
css
Did You Know Some ARIA Roles Remove Child Semantics? (rus)20205
html, aria, semantics, accessibility
Testing Methods: Error Identification (dec)20204
accessibility, testing, wcag, errors, link-lists
Insights From 100 Site Speed Reviews in 2025 (per)20203
performance, retrospectives
Styling by Language: Using the “lang” Attribute for Multilingual Design (mat)20202
html, internationalization, css
The Many Lives of the Page Title (kat/mat)20201
html, user-experience, accessibility, wcag
Optimizing CLS for Infinite Scroll and Load More (ver/per)20200
performance, web-vitals, scrolling, optimization
8 PostgreSQL Tricks (kem)20199
postgresql, databases, tips-and-tricks
Testing Methods: Consistent Help (dec)20198
accessibility, testing, wcag, consistency
Design Wrapped 202520197
design, retrospectives
Top 3 Qodana 2025.3 Release Highlights (jet)20196
qodana, jetbrains
Tech Talk: Improving Window Resize Behavior (ele)20195
electron, resizing, debugging, case-studies
Accessibility Is Personal (css)20194
accessibility, html
The Anatomy of an Accessible Text Field (ink)20193
forms, accessibility, html, labels
Early Signs of EAA Enforcement Across Europe (deq)20192
accessibility, eaa, legal, compliance
Testing Methods: Change on Request (dec)20191
accessibility, testing, wcag, link-lists
Introducing CSS Grid Lanes (jen+/web)20190
introductions, css, masonry, layout
Masonry Layout Is Now Grid-Lanes (sun/css)20189
css, layout, masonry
5 Terminal Commands That Saved Me Hours of Clicking20188
command-line, productivity
Targeting by Reference in the Shadow DOM (mey)20187
shadow-dom, html, javascript
Semantics Beyond the Tag Name (kno/mat)20186
html, attributes, aria, semantics, accessibility
A Short History of Performance Engineering (per)20185
performance, history
A Decade of Accessibility Weekly (dav)20184
accessibility, retrospectives
Understanding Don Norman’s Principles of Interaction20183
design, interaction-design, usability
Open-Source Funding: Do We Need a “No Maintenance” Month? (j9t)20182
foss, economics, community
Web UX: Study Guide (nng)20181
guides, user-experience, usability, training, link-lists
The Anatomy of LCP—a Deep Dive Into Sub-Parts (per)20180
deep-dives, performance, web-vitals, tooling
Forms Are a Badly Designed Part of HTML (jen/mat)20179
html, forms, standards
4 AI-Powered, No-Code Tools to Speed Up Your Frontend Workflow in 2026 (ele/des)20178
guest-posts, ai, low-and-no-code, tooling, productivity
You Can’t Opt-Out of Accessibility (val)20177
accessibility, design, legal
How “aria-labelledby” Really Works (rus)20176
accessibility, aria, attributes, html
Testing Methods: Consistent Navigation (dec)20175
accessibility, testing, wcag, navigation, consistency
3 Color Contrast Mistakes Designers Still Make20174
contrast, colors, images, wcag, accessibility, mistakes
Beyond Components: From Design System to Design Language System20173
design-systems, components, link-lists
Directional CSS With “scroll-state(scrolled)” (una)20172
css, functions, scrolling
Warp Speed to Accessibility: Fast-Tracking Inclusive Testing (a11)20171
videos, accessibility, testing
Dialog View Transitions (med)20170
modals, javascript, view-transitions
Your Post Is Cool, but Is It Accessible and Inclusive? (a11)20169
videos, accessibility
The Rise of the Invisible Designer (web)20168
design
What Continuous Improvement Model Is Best for Accessibility?20167
accessibility, processes
Don’t Leave the Screen Reader Hungry (ger/mat)20166
html, emoji, screen-readers, accessibility
The Old Ways Are the Best: 100 Lighthouse, 0 ms TBT, 32 ms Queries (per)20165
performance, case-studies
AI and Productivity: Year-In-Review With Microsoft, Google, and GitHub Researchers (lau)20164
ai, productivity, retrospectives
CSS Layout: How to “Center a Div,” the Old School Way20163
css, layout, floats, centering, techniques, how-tos
Does Chrome Get the “<header>” Element Wrong? (rus)20162
html, aria, chrome, google, browsers
Testing Methods: On Input (dec)20161
accessibility, testing, wcag, forms, events, link-lists
The JavaScript Bundler Grand Prix (kat/red)20160
javascript, bundling, tooling, vite, rspack, turbopack, bun, rolldown, browserify, webpack, rollup, parcel, esbuild, history
New to the Web Platform in December (rac)20159
release-notes, web-platform, browsers, firefox, mozilla, chrome, google, safari, apple
Responsive and Fluid Typography With Baseline CSS Features (mia)20158
css, typography, responsive-design
German Auditors Reject Accessibility Overlays in EAA Context20157
accessibility, auditing, overlays, legal, eaa
Different Page Transitions for Different Circumstances (chr/fro)20156
css, javascript, view-transitions, animations
Why We Should Stop Talking Performance Metrics to Business Leaders (san/per)20155
performance, metrics, communication, business-relations
Giving Pages a Clear Shape by Using Headings (mat)20154
html, headings
Mozilla’s Next Chapter: Building the World’s Most Trusted Software Company (moz)20153
mozilla, firefox, browsers, ai
State of HTML 2025 [Results] (sac/dev)20152
surveys, metrics, html
Throttle Individual Network Requests (dev)20151
performance, chrome, google, browsers, dev-tools
Ripple: A New TypeScript-First Front-End Framework20150
frameworks, typescript, ripple
Testing Methods: On Focus (dec)20149
accessibility, testing, wcag, forms, focus, keyboard-navigation
Responsive List of Avatars Using Modern CSS (css/css)20148
css, masking, responsive-design
Them’s the Breaks (tyl/mat)20147
html
I Ported JustHTML From Python to JavaScript With Codex CLI and GPT-5.2 in 4.5 Hours (sim)20146
migrating, ai, python, javascript, tooling, parsing, html
Accessibility as a Core Requirement (mha)20145
accessibility, prioritization
What Does “Hidden” Actually Mean in Accessible Name Computation? (rus)20144
accessibility, naming, hiding
Testing Methods: Pronunciation (dec)20143
accessibility, testing, wcag, pronunciation, screen-readers
A Tale of Two Animations—the Compositor in the Skies (per)20142
animations, css, performance
The “<time>” Element Should Actually Do Something (nol)20141
html, time, semantics
The Wonderful World of Web Feeds (mau/mat)20140
syndication, rss, atom, json
Why We Teach Our Students Progressive Enhancement (cyd)20139
progressive-enhancement, html, css, javascript, training
How to Load CSS (Fast) (per)20138
how-tos, css, performance, critical-path
Automate Your Testing Workflows Using BrowserStack’s AI Agents (zor/css)20137
videos, testing, automation, browsers
Testing Methods: Reading Level (dec)20136
accessibility, testing, wcag, link-lists
Accessibility Is a Human Right, Cruelty a Human Wrong (zel)20135
accessibility, fonts
Changes in the World of HTML Minifiers (apo)20134
html, tooling, minification, html-minifier
Hell Is Other People’s Markup (llo/mat)20133
html, auditing, tooling
Using the Browser Console for Accessibility Testing (rus)20132
accessibility, testing, console, javascript, examples
Improving Cumulative Layout Shift in WordPress20131
wordpress, web-vitals, performance, optimization, cheat-sheets
Chrome DevTools Elements Panel Tips and Tricks (zor/css)20130
videos, dev-tools, chrome, google, browsers, tips-and-tricks
New Front-End Framework Ripple Blends React and Svelte Together (inf)20129
frameworks, ripple
The Design System of the Christmas Factory20128
design-systems, accessibility, processes
Testing Methods: Abbreviations (dec)20127
accessibility, testing, wcag, content, link-lists
A11y Considerations in Math on the Web (man/mat)20126
accessibility, mathml, screen-readers, nvda, voiceover, support
The Ultimate Guide to UI Design in 2026 (web)20125
guides, design, user-experience, simplicity, consistency, hierarchy, accessibility
The Vibe Coding Paradox (jun)20124
programming, vibe-coding, ai
Intro to Performance of React Server Components (ade/per)20123
introductions, performance, react, components, server-side-rendering
WebKit Features for Safari 26.2 (jen+/web)20122
release-notes, webkit, safari, apple, browsers
Eleventy Core Dependency Watch (2025 Edition) (zac/11t)20121
eleventy
What Else Could Container Queries… Query? (dxn/css)20120
css, container-queries
The New “clamp()” Function in PHP 8.6 (ami)20119
php, functions
JetBrains Junie: AI Coding Without the Chaos (mik)20118
junie, jetbrains, ai
Vote for the Web Features You Want to See (rvi)20117
web-platform, standards, support
How Does Chrome DevTools Network Throttling Actually Work? (deb)20116
videos, dev-tools, chrome, google, browsers, network
Why Are My View Transitions Blinking? (pic)20115
css, view-transitions
Accessibility Updates (w3c)20114
videos, accessibility, wcag, standards
How HTML Changes in EPUB (rob/mat)20113
epub, html, standards
Testing Methods: Unusual Words (dec)20112
accessibility, testing, wcag, content, link-lists
Thoughts on Native CSS Mixins (chr/fro)20111
css, mixins
Denial of Service and Source Code Exposure in React Server Components (rea)20110
react, components, security
HTML Minifier Next: Presets, New Config Options, Minification Sharing, and Type Definitions (j9t)20109
release-notes, html-minifier
How We Automate Accessibility Testing With Playwright and Axe (boj)20108
accessibility, testing, automation, playwright, axe
Common Misconceptions About WCAG (tet)20107
accessibility, wcag, standards
Useful Patterns for Building HTML Tools (sim)20106
html, ai, tooling
Testing Methods: Language of Parts (dec)20105
accessibility, testing, wcag, internationalization
React 19.2: Further Advances INP Optimization (per)20104
react, web-vitals, performance, optimization
The “Two-Brain” Advantage: Why You Should Never Trust Just One AI (owe/pro)20103
ai, processes, quality
A11y Freedom Beaver (ste/mat)20102
accessibility, aria, html
Creating Scroll-Based Animations in Full view() (pre/css)20101
css, animations, scrolling, functions
Anthropic Donates the MCP Protocol to the Agentic AI Foundation20100
anthropic, mcp, protocols, foss, ai
The Slow Death of Magic20099
product-management, simplicity
Making Complex Web Apps Faster (pat)20098
performance, web-apps, apis, time, complexity
Frontend News #19: CSS “overscroll-behavior”, “scrollbar-gutter”, “text-grow” Properties, and More (zor/css)20097
videos, css, scrolling
Why RSS Matters (wer)20096
rss, syndication, social-media
“aria-busy” Is Not Your Friend (ger)20095
accessibility, aria, nvda, jaws, voiceover, screen-readers
Testing Methods: Language of Page (dec)20094
accessibility, testing, wcag, internationalization
Meeting WCAG Is an Achievement (yat)20093
accessibility, wcag, compliance
Why Every Conference Needs a Nursing Room (bla)20092
community, dei
The Inconvenient Truth: How Web Performance Case Studies Undermine Our Relationship With Business (mac/per)20091
performance, metrics, economics
Discover Dialog (sar/mat)20090
html, modals, javascript, css
Did You Know Your Browser Has Two Accessibility Trees? (rus)20089
accessibility, browsers, chrome, blink, google
CSS Wrapped 2025 (una)20088
css, standards, retrospectives
Type-Aware Linting Alpha (cam/bos)20087
linting, tooling, oxc
Comparing HTML Minifiers (j9t)20086
html, minification, tooling, html-minifier, htmlnano, metrics, comparisons
Why Federated Design Systems Keep Failing (sha)20085
design-systems, collaboration
Design Accessible Animation and Movement With Code Examples (pop)20084
design, accessibility, animations, css, javascript, examples
Getting a Close Button to Hang Off of a Dialog (dar)20083
modals, buttons, css, anchor-positioning
Blogging Is Dead. Long Live the Blog. (web)20082
blogging, seo, ai, social-media, web
Thursday, December 18, 2025 Security Releases (nod)20081
release-notes, nodejs, security
What’s Wrong With This HTML, and Is It Valid? (pat/mat)20080
html, standards, conformance, web-platform
The Anatomy of a Web Performance Report (web/per)20079
performance, documentation, web-vitals, lighthouse
That Time I Tried Explaining HTML and CSS to My 5-Year Old Niece (css)20078
html, css, learning
Web Performance 2025: The Shift From Optimization to Prediction (fab/per)20077
performance, optimization, retrospectives
Testing Methods: Dragging Movements (dec)20076
accessibility, testing, wcag
Controlling Dialogs and Popovers With the Invoker Commands API (sta/mat)20075
modals, pop-overs, apis, attributes, html
A Guide to Token-Efficient Data Prep for LLM Workloads20074
guides, ai, token-optimization, economics
Testing Methods: Concurrent Input Mechanisms (dec)20073
accessibility, testing, wcag
NoLoJS: Reducing the JS Workload With HTML and CSS (aar/per)20072
html, disclosure-widgets, forms, modals, pop-overs, navigation, scrolling, positioning
Accessible by Design: The Role of the “lang” Attribute (col/mat)20071
accessibility, internationalization, html, attributes, metrics
What Are DOM Mutations? (rus)20070
accessibility, dom, javascript
2025 in Review: What’s New in Web Performance? (mat/deb)20069
performance, web-vitals, lighthouse, apis, speculation, chrome, google, firefox, browsers, dev-tools, tooling, testing, mcp, ai, retrospectives, outlooks
Dealbreaker Bugs in Native Popovers (mat)20068
accessibility, pop-overs, bugs
Lies, Damned Lies, and Design System Adoption Statistics (ikn)20067
design-systems
How We’re Protecting Our Newsroom From npm Supply Chain Attacks (rya/pnp)20066
npm, dependencies, security, case-studies
Testing Methods: Target Size (Enhanced) (dec)20065
accessibility, testing, wcag, touch
How I Built a Form Management Platform With Angular 17 and SurveyJS20064
functionality, forms, angular, tooling
Non-Blocking Cross-Browser Image Rendering on the Canvas (mys/per)20063
canvas, javascript, images, performance
10 Usability Heuristics20062
usability, heuristics
IDREFs: What They Are and How to Use Them (kil/mat)20061
html, forms, aria, accessibility
Why You Need Design Maturity in a Product Organisation, and How to Get It20060
design, product-management
Fast by Default (den/per)20059
performance, processes
I Studied 50+ Engineers Who Got Promoted Fast: They All Did One Thing I’d Been Ignoring20058
career, collaboration
Testing Methods: Motion Actuation (dec)20057
accessibility, testing, wcag, mobile
No More Tokens—Locking Down npm Publish Workflows (zac)20056
npm, dependencies, security, github, processes
Standards Queues (bka)20055
standards, web-platform, collaboration
In 1995, a Netscape Employee Wrote a Hack in 10 Days That Now Runs the Internet (ben/ars)20054
netscape, javascript, history
The Web Runs on Tolerance (ede)20053
web-platform, standards, principles
Referencing HTML Elements Inside Shadow DOM (meh/mat)20052
html, shadow-dom, web-components
Getting Creative With “the Measure” (mal/css)20051
css, typography, readability
The Timing Problem in Design Systems (mur)20050
design-systems, components
End-to-End Browser and Accessibility Event Architecture (rus)20049
accessibility, browsers, event-loop, browser-engines, javascript-engines, assistive-tech
During Helene, I Just Wanted a Plain Text Website (spa)20048
content
The Downsides of “scrollbar-gutter: stable;” (and One Weird Trick) (chr/fro)20047
css, scrolling
A Little Bit Uncomfortable20046
career, learning
Solving Small Text and Contrast Issues for Large-Screen Readability (a11)20045
accessibility, contrast, readability, typography
Common Misconceptions About Disability (tet)20044
accessibility, concepts
Public Design Systems Are Worth It (pjo)20043
design-systems
TypeScript Strictness Is Non-Monotonic: Strict-Null-Checks and No-Implicit-Any Interact (huo)20042
typescript, arrays
Intopia Launches Assistive Technology Survey 2025 (int)20041
surveys, assistive-tech
Speculation Rules Improvements (tun/mat)20040
performance, speculation, apis
Testing Methods: Label in Name (dec)20039
accessibility, testing, wcag, labels, aria
HTML Semantics: The Short Descriptions of All 113 Elements (j9t)20038
html, semantics, overviews
Critical Security Vulnerability in React Server Components (rea)20037
react, components, security
[Next.js] Security Advisory: CVE-2025-66478 (seb)20036
nextjs, security
Get the Core Right and the Resilient Code Will Follow (bel/btc)20035
videos, resilience, design, communication
Understanding “aria-live” Timing: A Two-Layer Model (rus)20034
accessibility, aria, live-regions, notifications
Designing Decisions: Behavioral Psychology That Moves Users20033
design, interaction-design, user-experience
A Pragmatic Guide to Modern CSS Colours II (kev/pic)20032
guides, css, colors, examples
From Reactive to Proactive: Building a Sustainable Accessibility Program (equ)20031
accessibility, processes, culture, w3c
Scrollytelling on Steroids With Scroll-State Queries (css)20030
css, scrolling
Masonry: Things You Won’t Need a Library for Anymore (pat/sma)20029
css, masonry, layout, examples, web-platform
Exploring Large HTML Documents on the Web (per)20028
performance, html, metrics
How Does Amazon’s Kiro Differ From Traditional IDEs? (ele/des)20027
guest-posts, kiro, aws, code-editors
Progress on TypeScript 7—December 2025 (dan/typ)20026
typescript
You Can’t Make Something Accessible to Everyone (aar)20025
accessibility, design
Testing Methods: Pointer Cancellation (dec)20024
accessibility, testing, wcag
Web Backstories: Shadow DOM (ada+/iga)20023
podcasts, interviews, shadow-dom, web-components, standards, history
Using the Ancient Evils for Debugging (bol/mat)20022
html, debugging
The Nuances of JavaScript Typing Using JSDoc (jar/van)20021
javascript, jsdoc, typescript, developer-experience
Bun Is Joining Anthropic (jar/bun)20020
bun, anthropic
Decreasing [Let’s Encrypt] Certificate Lifetimes to 45 Days (mat/let)20019
http, security, certificates, lets-encrypt
Anchor Positioning and the Inset-Modified Containing Block (IMCB) (bra)20018
css, anchor-positioning, concepts
What Sam Altman Just Taught Us About OKRs (Without Meaning To) (cwo)20017
okr, prioritization, processes, openai
The Practical Guide to LLM Cost Optimization20016
guides, ai, token-optimization, economics
Building Agentic Design Systems: The Future of AI-Enhanced Design20015
design-systems, design, ai, processes
The Next Revolution in Design: Emotional Accessibility (fas)20014
design, accessibility, outlooks
“Sloppy” Code and Accessibility Issues: The Trouble With Trump’s Silicon Valley-Inspired Web Design Project (not)20013
design, accessibility, quality, case-studies
Non-Square Image Blur Extensions (ana/fro)20012
images, css, effects
The Evolution of Web Development: From Static Pages to AI-Driven Experiences (web)20011
history, web, web-2.0, web-apps, ai
Improve TTFB and UX With HTTP Streaming (mb2/per)20010
performance, user-experience, http, streaming, optimization
React Has Changed, Your Hooks Should Too20009
react, hooks
Top Layer Troubles: Popover vs. Dialog (5t3/mat)20008
css, positioning, pop-overs, modals
Nobody Writes Clean Code—We All Just Pretend20007
quality, craft
Testing Methods: Pointer Gestures (dec)20006
accessibility, wcag, testing
Prevent a Page From Scrolling While a Dialog Is Open (geo/css)20005
scrolling, css
Web Design / Dev Advent Calendars for 2025 (aar)20004
link-lists, learning
Is Using Command Line AI an Option for Helping You Code?20003
ai, command-line, cursor, claude, anthropic, code-editors
Can You Make Toast Messages Accessible? (ada)20002
accessibility, notifications
Testing Methods: Focus Appearance (dec)20001
accessibility, testing, wcag, focus, keyboard-navigation, link-lists
How to Unit Test a Vue Composable With TypeScript (joh)20000
how-tos, testing, vuejs, functions, typescript
Using CSS to Fix the Irradiation Illusion (arg)19999
css, readability, fonts
The Junior Hiring Crisis (ann/peo)19998
hiring, engineering-management, career, community
How Modern Browsers Work (add)19997
browsers, chromium, network, parsing, painting, rendering, javascript-engines, v8, memory, modules, javascript, html, css
Testing Methods: Focus Not Obscured (Enhanced) (dec)19996
accessibility, testing, wcag, focus, keyboard-navigation
How Fast Can Browsers Process Base64 Data? (lem)19995
performance, encoding, base64, browsers, metrics, comparisons
How Good Engineers Write Bad Code at Big Companies (sea)19994
quality, career, culture
CSS-in-JS: The Great Betrayal of Frontend Sanity19993
css-in-js, css, javascript, performance, developer-experience
How Microfrontends Work: 3 Integration Strategies19992
micro-frontends, strategies, routing, iframes, javascript, ai
EAA Deadlines, Why You Probably Can’t Wait Another 5 Years19991
accessibility, eaa, legal, compliance
Category Theory for JavaScript/TypeScript Developers (ibr)19990
javascript, typescript, programming, craft
Who Wins When We Filter the Open Web Through an Opaque System? (hdv)19989
open-web
Web Application Architecture: The Enterprise Framework Powering Modern Digital Experiences (elu)19988
architecture, web-apps
Testing Methods: Focus Not Obscured (Minimum) (dec)19987
accessibility, testing, wcag, focus, keyboard-navigation
Understanding ECDSA [Elliptic Curve Digital Signature Algorithm]19986
cryptography, algorithms, math
Eleventy: How to Set Up Effective HTML Minification (in 24 Seconds) (j9t)19985
how-tos, eleventy, html, html-minifier, minification, optimization
One CSS Trick to Eliminate Scrollbar Layout Shifts (ami)19984
css, scrolling, tips-and-tricks
How to Create an Adaptive SVG Favicon Using the “prefers-color-scheme” Media Query (zor/css)19983
videos, how-tos, favicons, svg, css, images
The Idiot Sandwich—on Embedding Alt Text (ede)19982
images, alt-text, accessibility
5 Reasons Why WCAG AA Compliance Does Not Mean Your Website Is Accessible (cra)19981
accessibility, wcag, compliance, colors, readability, performance, content, multimedia, quality
AI for Good Accessibility (ala)19980
slides, ai, accessibility
The Accessibility Problem With Authentication Methods Like CAPTCHA (sma)19979
accessibility, captcha
Testing Methods: Section Headings (dec)19978
accessibility, testing, wcag, headings
New to the Web Platform in November (rac)19977
release-notes, web-platform, browsers, firefox, mozilla, safari, apple
Ripple Over React? Evaluating the Newest JS Framework (log)19976
ripple, react, frameworks, comparisons
Saumya Majumder on How Cloudflare Outages Impact the Web and WordPress Performance Solutions (nat)19975
podcasts, interviews, cloudflare, wordpress, performance
Taking Down Next.js Servers for 0.0001 Cents a Pop19974
servers, nextjs, vulnerabilities, security
Testing Methods: Link Purpose (Link Only) (dec)19973
accessibility, testing, wcag, links, microcontent, link-lists
Accessibility and Usability: Inline Field Validation vs. Constantly Active Submit Button19972
forms, buttons, validation, accessibility, usability, comparisons
The End of Dashboards and Design Systems19971
design, design-systems
Critique19970
design, craft, collaboration, processes
What an Accessibility Conference Taught Me About Designing for All19969
design, accessibility
How to Add and Remove Items From a Native CSS Carousel (…With CSS) (dxn/fro)19968
how-tos, css, carousels, scrolling
Why Use React? (ada)19967
react, frameworks
What Are Invokers? Interactivity Without JavaScript (tol/syn)19966
videos, javascript, html, pop-overs
Migrating From GitHub to Codeberg (and/zig)19965
migrating, github, codeberg
Updating CSS Border Radius When a Container Is Overflowing (rik)19964
css, borders, overflow, scrolling
A New Navigation Paradigm19963
ai, navigation, design
Applying AI Where It Matters19962
studies, research, ai
Becoming Unblockable (sea)19961
career, prioritization, tooling, collaboration
“<dialog>” and Popover: Baseline Layered UI Patterns19960
modals, pop-overs, css
WebGPU Is Now Supported in Major Browsers19959
webgpu, browsers, support, web-platform