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 respect and accountability. 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#
AdonisJS v7 Is Feature-Complete and Entering Final Validation (vir/ado)21035
release-notes, adonisjs
ASCII Characters Are Not Pixels: A Deep Dive Into ASCII Rendering21034
deep-dives, ascii, rendering
Chrome 145 Adds Experimental Support for Vertical Tabs (bra)21033
chrome, browsers
The Astro Technology Company Joins Cloudflare21032
astro, cloudflare
Beyond Compliance: 5 Surprising Ways the UVAC Framework Turns Accessibility Into a Brand Powerhouse (wil)21031
accessibility, processes, concepts
When Design Kills Usability—Meet the Custom Cursor (mal)21030
videos, design, usability, cursors
Better Defaults for Popovers (mat)21029
pop-overs, css, resets
State of UX 2026: Design Deeper to Differentiate (nng)21028
user-experience, design, outlooks, career, ai
PWA (htt)21027
web-almanac, studies, research, metrics, progressive-web-apps, web-apps, web-workers
Ecommerce (htt)21026
web-almanac, studies, research, metrics, ecommerce, tooling, performance, web-vitals, lighthouse
CMS (htt)21025
web-almanac, studies, research, metrics, content-management, tooling, wordpress, user-experience, performance, web-vitals, lighthouse, apis
Security (vik+/htt)21024
web-almanac, studies, research, metrics, security, tls, certificates, cookies, csp, http-headers, apis, sanitization, configuration
Page Weight (bar+/htt)21023
web-almanac, studies, research, metrics, performance, web-vitals, lighthouse
Using “100vw” Is Now Scrollbar-Aware (in Chrome 145+, Under the Right Conditions) (bra)21022
css, units, scrolling, chrome, browsers
On Coding Agents and the Future of Design (vee)21021
ai, ai-agents, design, outlooks
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability21020
tailwind, comparisons, css-in-js, maintainability, css, javascript
Usability Heuristics and Competition in Games21019
usability, heuristics, design, aesthetics
The Incredible Overcomplexity of the Shadcn Radio Button (pau)21018
html, forms, shadcn, complexity
Software as Fast Fashion (tan)21017
programming, ai, sustainability, economics
Fonts (htt)21016
web-almanac, studies, research, metrics, fonts, performance, css
The Missing Link for Web Components (kin/fro)21015
web-components, typescript, json, mcp, ai, tooling
Building a Scroll-Driven Dual-Wave Text Animation With GSAP (cod)21014
gsap, animations, scrolling
Performance (25p+/htt)21013
web-almanac, studies, research, metrics, performance, web-vitals, hints, speculation
Third Parties (htt)21012
web-almanac, studies, research, metrics, embed-code
Accessibility (bog+/htt)21011
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)21010
design, processes
Accessible Faux-Nested Interactive Controls (eri/pic)21009
accessibility, conformance, html, nesting
Privacy (htt)21008
web-almanac, studies, research, metrics, privacy, legal, consent-management, do-not-track
Generative AI (chr+/htt)21007
web-almanac, studies, research, metrics, ai, robotstxt, llmstxt
WebAssembly (htt)21006
web-almanac, studies, research, metrics, webassembly
CDN (htt)21005
web-almanac, studies, research, metrics, content-delivery, http, performance, http-headers, compression, tls, hints
SEO (htt)21004
web-almanac, studies, research, metrics, seo, robotstxt, llmstxt, links, content, structured-data, amp, html, internationalization
Cookies (htt)21003
web-almanac, studies, research, metrics, cookies
The Mythology of Conscious AI (ani/noe)21002
ai
Live Region Support (aar)21001
accessibility, live-regions, support, screen-readers, nvda, jaws, voiceover, talkback
So You Think Your Website Is Doing Great (cit)21000
html, javascript, css, quality
Beyond Manual Audits: How Automation Strengthens Accessibility (equ)20999
accessibility, auditing, automation, wcag
Making GitHub Actions Suck a Little Less20998
github-actions
Node.js January 2026 Security Release: What Changed and Why It Matters (nod)20997
nodejs, security
The “Senior Developer” Is Now the New “Entry Level”20996
career, ai
Smashing Animations: Theming Animations Using CSS Relative Colour (mal/sma)20995
animations, colors, theming, css
The Unhinged World of Tech in 2026… (fir)20994
videos, outlooks, ai, javascript
Everything You Need to Know About Ruby 4.0 (hon)20993
ruby
EPUB and HTML—Survey Results and Next Steps (rei/w3c)20992
surveys, epub, html
Tuesday, January 13, 2026 Security Releases (nod)20991
release-notes, nodejs, security
Mitigating Denial-of-Service Vulnerability From Unrecoverable Stack Space Exhaustion for React, Next.js, and APM Users (mco+/nod)20990
nodejs, security, vulnerabilities, react, nextjs, tooling, monitoring, performance
Just the Browser (cor)20989
websites, browsers, chrome, firefox, edge
Introducing the “<geolocation>” HTML Element (tom+)20988
introductions, html, geolocation, chrome, browsers
Traditional Code Review Is Dead: What Comes Next?20987
code-reviews, ai, processes, infrastructure, scalability
How to Use OpenCode: A Practical Guide and Builds20986
guides, opencode, ai, mcp, tooling, installing
ARIA Roles Can Remove Their Children’s Semantics (ste)20985
html, aria, semantics, accessibility
18 Predictions for 202620984
outlooks, ai, usability, user-experience
The Invisible Work (hvp)20983
leadership, productivity, processes
Simulating Crop Marks (chr/fro)20982
css
Astro 6 Beta (mat)20981
release-notes, astro
OpenCode vs. Claude Code (bui)20980
opencode, claude, ai, comparisons
Aspire for JavaScript Developers (dav)20979
tooling, javascript, typescript
Design Systems and Shareable Browser Support (rob)20978
design-systems, browsers, browserslist, support
A Polyfill for the HTML “switch” Element (tom)20977
html, forms, polyfills
Solid.js Best Practices (bre)20976
solidjs, best-practices, examples
Is There Too Much Design in Design Systems? (sha)20975
design, design-systems
Don’t Start With AI, Start With the Problem (cal/nng)20974
videos, ai, processes
Manufacturing as Code Is the Future, and the Future Is Now20973
programming, outlooks
Stop Turning Everything Into Arrays (and Do Less Work Instead)20972
javascript, methods, arrays
SVG Filters Are Just Amazing (ami)20971
svg, filters
Comments Considered Harmful in the Age of LLMs (yeg)20970
comments, ai, maintainability
Focus Rings With Nested “contrast-color()”? (dav)20969
css, selectors, functions, focus, contrast
Stop Using MySQL in 2026, It Is Not True Open Source (ott)20968
mysql
Don’t Fall Into the Anti-AI Hype (ant)20967
ai, career
How Wrong Can a JavaScript Date Calculation Go? (phi)20966
javascript, time, apis
On Abbreviating Accessibility (ons)20965
accessibility, microcontent
What Is the Minimum Markup Needed to Create a Modal? (rus)20964
modals, minimalism, html, css, accessibility
Prompt Engineering Won’t Fix Your Architecture20963
architecture, ai
How to Steal Any React Component20962
react, components
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)20961
mobile, javascript, animations
Death to Scroll Fade (dbu)20960
scrolling, effects, performance
How Markdown Took Over the World (ani)20959
markdown, web
Not All Browser APIs Are “Web” APIs (pol)20958
apis
Brief Note on Application Keyboard Shortcuts (aar)20957
accessibility, keyboard-shortcuts, screen-readers
Node.js Package Configuration Guide (nod)20956
guides, packages, dependencies, configuration, commonjs, esm
What Makes a Good Tech Meet-Up?20955
discussions, community
Your Brand Just Evolved: The Rise of AI-Generated Identities (web)20954
design, branding, ai
Very Good Components (bee)20953
websites, components, html
Popover Context Menus With Anchor Positioning (chr/fro)20952
css, tooltips, pop-overs, anchor-positioning
Judging Severity in Accessibility Issues (joe)20951
accessibility
A Data Model for Git (and Other Docs Updates) (b0r)20950
git
Async React20949
videos, react, asynchrony
npm to Implement Staged Publishing After Turbulent Shift Off Classic Tokens (sar/soc)20948
npm, dependencies, security
Getting Started With Mistral Vibe CLI and Exploring Devstral 2 Small—Best Local Model?20947
videos, introductions, mistral, ai
Exploring React Performance (en)20946
videos, react, performance
Profiling With React Performance Tracks20945
videos, react, profiling, performance
Designing Page Transitions20944
videos, design, transitions, effects
Software Is Culture (fig)20943
culture
2026 Accessibility Hiring Looks Busy, Yet the Patterns Show Underlying Weakness20942
accessibility, career
Common Misconceptions About Testing Accessibility (tet)20941
accessibility, testing
Modern Emails Using React20940
videos, email, react
Date Is Out, Temporal Is In (wil/pic)20939
javascript, time
Ethical and Resilient Blog Hosting (pad)20938
hosting, blogging, ethics
Web Dependencies Are Broken—Can We Fix Them? (lea)20937
dependencies, javascript, import-maps, web-platform
4 CSS Features Every Front-End Developer Should Know in 2026 (arg)20936
css, functions, scrolling
Designing With AI-Readable Design Systems in Cursor20935
design, design-systems, ai, cursor, code-editors
5 Accessibility Checks to Run on Every Component (hdv/zer)20934
accessibility, components, testing, keyboard-navigation, design-tokens, microcontent, zooming, screen-readers
Google Broke My Heart (per)20933
google, search, licensing, legal
2025 JavaScript Rising Stars20932
javascript, frameworks, libraries, react, vuejs, tooling, ai, mobile, desktop, state-management, css-in-js, testing, static-site-generation, graphql, retrospectives
The Text Mode Lie: Why Modern TUIs Are a Nightmare for Accessibility20931
accessibility, command-line, ai, gemini, nvda, vi+vim, unix-like, screen-readers, code-editors
How GitHub Monopoly Is Destroying the Open Source Ecosystem (plo)20930
foss, github
WASI 1.0: You Won’t Know When WebAssembly Is Everywhere in 202620929
webassembly, components, standards
We Fixed a 6-Year-Old JavaScript Memory Leak (mat/deb)20928
javascript, memory
How to “@scope” CSS Now That It’s Baseline (dxn/fro)20927
css, scope, examples
How to Create a Pixel-to-Voxel Video Drop Effect With Three.js and Rapier (cod)20926
how-tos, javascript, effects, tooling, gsap, threejs
JavaScript Frameworks—Heading Into 2026 (rya/thi)20925
javascript, frameworks, outlooks, ai
How I Evaluate an ACR (VPAT) (aar)20924
accessibility, compliance, vpat-acr, processes
Claude Devs Complain About Surprise Usage Limits, Anthropic Blames Expiring Bonus (tho/the)20923
claude, anthropic, ai
Eric Bailey’s Predictions for the Future of Accessibility (eri)20922
accessibility, outlooks
Streaming JSON in Just 200 Lines of JavaScript20921
streaming, json, javascript
Anna Thielke’s Predictions for the Future of Accessibility20920
accessibility, outlooks
Damian Sian’s Predictions for the Future of Accessibility20919
accessibility, outlooks
Kai Wong’s Predictions for the Future of Accessibility20918
accessibility, outlooks
The Nine Levels of JavaScript Dependency Hell (and)20917
javascript, dependencies, maintainability
Pre-Tenuring in V8 (win)20916
v8, javascript-engines
I Built an App in Every Frontend Framework20915
frameworks, libraries, react, vuejs, svelte, angular, lit, marko, jquery, alpinejs, solidjs, astro, qwik, comparisons
The Next Two Years of Software Engineering (add)20914
programming, career, outlooks, ai
V7: Typographic Scales and Technical Pens20913
design, typography, css, case-studies
How Browsers Work (dmy)20912
websites, guides, browsers, urls, http, tcp, html, dom
TIL: Why ARM Has a JavaScript Instruction20911
javascript
Sounds on the Web20910
web, multimedia
Working With Git Inside Vim20909
git, vi+vim, code-editors, configuration
Being a Colourblind Designer (wpa)20908
videos, accessibility, color-blindness, colors, design
21 Lessons From 14 Years at Google (add)20907
lessons, google, career
Web Development Is Fun Again20906
ai, creativity
The Package Management Landscape (and)20905
dependencies, tooling, overviews, link-lists
Security Basics for Vibe-Coders (owe/pro)20904
fundamentals, security, vibe-coding, ai
10 UX Design Shifts You Can’t Ignore in 202620903
design, user-experience, ai, outlooks
The Code Review That Cost $2 Million20902
code-reviews, economics, ai
Managing Infrastructure Across Multiple Environments20901
infrastructure, dev-ops, maintenance
Building a JavaScript Runtime in One Month (the)20900
javascript, runtimes, functionality
2026: The Year of My Website (the)20899
indieweb, social-media
A Website to Destroy All Websites (hen)20898
web, indieweb
JavaScript’s “for…of” Loops Are Actually Fast20897
javascript, loops, performance
“!important” and CSS Custom Properties (chr/fro)20896
css, custom-properties, cascade
On Using IndieWeb Protocols Like Webmentions and Keeping Your Website Separate From Social Media (pat)20895
indieweb, webmentions, social-media
What’s !important: Conditional View Transitions, CSS/SVG Text Effects, the Best of CSS Bluesky, and More (dxn/css)20894
css, retrospectives, link-lists
Chrome DevTools Features I Use All the Time (and Why You Should Too) (kee/per)20893
dev-tools, chrome, browsers, performance, accessibility, lighthouse, network, embed-code
How Can You Tell What’s Allowed Inside Each HTML Element? (rus)20892
html, conformance
Teaching Agents About Performance Insights (web/per)20891
performance, ai, ai-agents
What Happened to WebAssembly (emn)20890
webassembly
More Efficiency, More Demand20889
efficiency, ai, career
Building the Brain of Your Accessibility AI (ted)20888
accessibility, ai
The Curious Case of the Shallow Session SPAs (sli/per)20887
performance, single-page-apps, javascript, frameworks, metrics
From Theory to Tiny: Implementing Compression Dictionaries (rya/per)20886
performance, compression, content-delivery
Touch Targets and Web Accessibility20885
accessibility, touch
Testing Methods: Status Messages (dec)20884
accessibility, testing, wcag, notifications, link-lists
8 Predictions for 2026: What Comes Next in AI? (phi)20883
ai, outlooks
Top 10 NoSQL Database Platforms: Features, Pros, Cons, and Comparison20882
nosql, databases, mongodb, dynamodb, firebase, comparisons
Why Developers Are Ditching Frameworks for Vanilla JavaScript20881
frameworks, javascript, apis, performance, micro-frontends, architecture
HTML Content Categories (rus)20880
html, semantics
“require(esm)” in Node.js: From Experiment to Stability (joy)20879
nodejs, esm
The 8 Trends That Will Define Web Development in 2026 (log)20878
trends, outlooks, ai, frameworks, tanstack, typescript, edge-computing, presentational-html
Testing Methods: Name, Role, Value (dec)20877
accessibility, testing, wcag, aria, link-lists
How to Design for (and With) Deaf People (vit/sma)20876
how-tos, design, accessibility
7 Steps of a Web Performance Journey (ser/per)20875
performance, processes
Introducing Flint (jos)20874
introductions, tooling, linting
7 Real Predictions for Web Design in 2026 (web)20873
design, outlooks, ai, aesthetics
“Why Do You Code?”—a Surprisingly Hard Question20872
discussions, programming, career
Reliability by Design20871
design, ai, link-lists
Why AI-Generated UX Still Feels Off20870
user-experience, ai
Opening and Closing Dialogs Without JavaScript Using HTML Invoker Commands (sch)20869
modals, html
pnpm in 2025 (koc/pnp)20868
pnpm, retrospectives
Third Parties and Single Points of Failure (pau/per)20867
performance, embed-code, metrics
How I Write Custom Elements With “lit-html” (fro)20866
web-components, lit
How to Dynamically Install Custom Elements (hey)20865
how-tos, web-components, naming, javascript
Testing Methods: Accessible Authentication (Enhanced) (dec)20864
accessibility, testing, wcag, authentication, security
The Final Nail in the HTML5 Document Outline Coffin (tem)20863
html, headings, accessibility
Tips for Making the Performance Panel Less Overwhelming (duf/per)20862
performance, dev-tools, browsers, chrome, tips-and-tricks
Tests for CSS Generated Content Alternative Text (rus)20861
css, generated-content, alt-text, accessibility, support, voiceover, nvda, jaws, screen-readers
The Fall of JavaScript (yeg)20860
javascript, typescript, programming
Testing Methods: Accessible Authentication (Minimum) (dec)20859
accessibility, testing, wcag, authentication, security
JavaScript Creator Warns Against “Rushed Web UX Over Native” as Windows 11 Leans Harder on WebView2 and Electron (win)20858
windows, web-apps, electron
Chrome DevTools for Debugging Web Performance (nuc/per)20857
performance, debugging, dev-tools, chrome, browsers
Trends That Defined JavaScript in 202520856
javascript, trends, retrospectives, react, frameworks, tooling, ai
Eight Quick Things to Remember When Using “aria-owns” (rus)20855
accessibility, aria, dom, assistive-tech
Testing Methods: Redundant Entry (dec)20854
accessibility, testing, wcag, forms
You Can’t Design Software You Don’t Work On (sea)20853
software-design, architecture
Testing Methods: Error Prevention (All) (dec)20852
accessibility, testing, wcag, errors
Revisiting HTML Streaming for Modern Web Performance (per)20851
performance, html, streaming
The Most Dangerous Person on Your Team Is “Dave” (and He Just Quit) (hac)20850
collaboration, documentation, ai, prompting
The Cost of Consistency: Avoiding Design System Bottlenecks (omi)20849
design-systems, consistency, lessons, angular
Testing Methods: Help (dec)20848
accessibility, testing, wcag
Chasing BFCache Navigations (per)20847
performance, bfcache, caching
How to Stay Ahead of AI as an Early-Career Engineer (gwe/iee)20846
how-tos, career, ai
Ruby Turns 30: A Celebration of Code, Community, and Creativity (jet)20845
ruby, ruby-on-rails, history, anniversaries
Nobody Knows How Large Software Products Work (sea)20844
programming, software-design, complexity, maintainability
TTFB Doesn’t Mean What You Think It Means (pro/per)20843
performance, concepts, http
The Three Semantics of HTML (mat)20842
html, semantics
Web Components Are the Comeback Nobody Saw Coming20841
web-components, frameworks, developer-experience
Node.js in 2026 With Rafael Gonzaga (raf)20840
podcasts, interviews, nodejs, outlooks
Why Object of Arrays (SoA Pattern) Beat Interleaved Arrays: A JavaScript Performance Rabbit Hole20839
javascript, performance, arrays
Fixing TypeScript Performance Problems: A Case Study (vig)20838
typescript, performance, case-studies
Testing Methods: Error Suggestion (dec)20837
accessibility, testing, wcag, errors, link-lists
For the Love of “<details>” (dev/mat)20836
disclosure-widgets, html
Fixing the URL Params Performance Penalty (tun/per)20835
performance, urls, caching, http-headers, examples
The AI Divide20834
ai, studies, research
Testing Methods: Labels or Instructions (dec)20833
accessibility, testing, wcag, labels, forms, link-lists
Why “role="button"” on a “<button>” Does Nothing (rus)20832
html, buttons, attributes, aria
The Two Most Important Tools for HTML Developers20831
tooling, html, conformance, minification, html-minifier, htmlnano, swc
Five Accessibility Trends to Watch in 202620830
accessibility, trends
2026 Predictions: The Next Big Shifts in Web Accessibility (web)20829
accessibility, outlooks, ai, wcag, html
Optimizing for 75% Is Fine—Optimizing for 90% Is Where It Gets Interesting (jor/per)20828
performance, web-vitals, optimization
The HTML Elements Time Forgot (val/mat)20827
html, history
A Year of Vibes (mit)20826
ai, retrospectives, wish-lists
“text-decoration-inset” Is Like Padding for Text Decorations (dxn/css)20825
css
Did You Know Some ARIA Roles Remove Child Semantics? (rus)20824
html, aria, semantics, accessibility
Testing Methods: Error Identification (dec)20823
accessibility, testing, wcag, errors, link-lists
Insights From 100 Site Speed Reviews in 2025 (per)20822
performance, retrospectives
Styling by Language: Using the “lang” Attribute for Multilingual Design (mat)20821
html, internationalization, css
The Many Lives of the Page Title (kat/mat)20820
html, user-experience, accessibility, wcag
Optimizing CLS for Infinite Scroll and Load More (ver/per)20819
performance, web-vitals, scrolling, optimization
8 PostgreSQL Tricks (kem)20818
postgresql, databases, tips-and-tricks
Testing Methods: Consistent Help (dec)20817
accessibility, testing, wcag, consistency
Top 3 Qodana 2025.3 Release Highlights (jet)20816
qodana
Design Wrapped 202520815
design, retrospectives
Tech Talk: Improving Window Resize Behavior (ele)20814
electron, resizing, debugging, case-studies
Accessibility Is Personal (css)20813
accessibility, html
The Anatomy of an Accessible Text Field (ink)20812
forms, accessibility, html, labels
Early Signs of EAA Enforcement Across Europe (deq)20811
accessibility, eaa, legal, compliance
Testing Methods: Change on Request (dec)20810
accessibility, testing, wcag, link-lists
Introducing CSS Grid Lanes (jen+/web)20809
introductions, css, masonry, layout
Masonry Layout Is Now Grid-Lanes (sun/css)20808
css, layout, masonry
5 Terminal Commands That Saved Me Hours of Clicking20807
command-line, productivity
Targeting by Reference in the Shadow DOM (mey)20806
shadow-dom, html, javascript
Semantics Beyond the Tag Name (kno/mat)20805
html, attributes, aria, semantics, accessibility
A Short History of Performance Engineering (per)20804
performance, history
A Decade of Accessibility Weekly (dav)20803
accessibility, retrospectives
Understanding Don Norman’s Principles of Interaction20802
design, interaction-design, usability
Open-Source Funding: Do We Need a “No Maintenance” Month? (j9t)20801
foss, economics, community
Web UX: Study Guide (nng)20800
guides, user-experience, usability, training, link-lists
The Anatomy of LCP—a Deep Dive Into Sub-Parts (per)20799
deep-dives, performance, web-vitals, tooling
Forms Are a Badly Designed Part of HTML (jen/mat)20798
html, forms, standards
4 AI-Powered, No-Code Tools to Speed Up Your Frontend Workflow in 2026 (ele/des)20797
guest-posts, ai, low-and-no-code, tooling, productivity
You Can’t Opt-Out of Accessibility (val)20796
accessibility, design, legal
How “aria-labelledby” Really Works (rus)20795
accessibility, aria, attributes, html
Testing Methods: Consistent Navigation (dec)20794
accessibility, testing, wcag, navigation, consistency
3 Color Contrast Mistakes Designers Still Make20793
contrast, colors, images, wcag, accessibility, mistakes
Beyond Components: From Design System to Design Language System20792
design-systems, components, link-lists
Directional CSS With “scroll-state(scrolled)” (una)20791
css, functions, scrolling
Warp Speed to Accessibility: Fast-Tracking Inclusive Testing (a11)20790
videos, accessibility, testing
Dialog View Transitions (med)20789
modals, javascript, view-transitions
Your Post Is Cool, but Is It Accessible and Inclusive? (a11)20788
videos, accessibility
The Rise of the Invisible Designer (web)20787
design
What Continuous Improvement Model Is Best for Accessibility?20786
accessibility, processes
Don’t Leave the Screen Reader Hungry (ger/mat)20785
html, emoji, screen-readers, accessibility
The Old Ways Are the Best: 100 Lighthouse, 0 ms TBT, 32 ms Queries (per)20784
performance, case-studies
AI and Productivity: Year-In-Review With Microsoft, Google, and GitHub Researchers (lau)20783
ai, productivity, retrospectives
New to the Web Platform in December (rac)20782
release-notes, web-platform, browsers, firefox, chrome, safari
Does Chrome Get the “<header>” Element Wrong? (rus)20781
html, aria, chrome, browsers
CSS Layout: How to “Center a Div,” the Old School Way20780
css, layout, floats, centering, techniques, how-tos
Testing Methods: On Input (dec)20779
accessibility, testing, wcag, forms, events, link-lists
The JavaScript Bundler Grand Prix (kat/red)20778
javascript, bundling, tooling, vite, rspack, turbopack, bun, rolldown, browserify, webpack, rollup, parcel, esbuild, history
Responsive and Fluid Typography With Baseline CSS Features (mia)20777
css, typography, responsive-design
German Auditors Reject Accessibility Overlays in EAA Context20776
accessibility, auditing, overlays, legal, eaa
Different Page Transitions for Different Circumstances (chr/fro)20775
css, javascript, view-transitions, animations
Why We Should Stop Talking Performance Metrics to Business Leaders (san/per)20774
performance, metrics, communication, business-relations
Giving Pages a Clear Shape by Using Headings (mat)20773
html, headings
Mozilla’s Next Chapter: Building the World’s Most Trusted Software Company (moz)20772
mozilla, firefox, browsers, ai
State of HTML 2025 [Results] (sac/dev)20771
surveys, metrics, html
Throttle Individual Network Requests (dev)20770
performance, chrome, browsers, dev-tools
Ripple: A New TypeScript-First Front-End Framework20769
frameworks, typescript, ripple
Testing Methods: On Focus (dec)20768
accessibility, testing, wcag, forms, focus, keyboard-navigation
Responsive List of Avatars Using Modern CSS (css/css)20767
css, masking, responsive-design
Them’s the Breaks (tyl/mat)20766
html
I Ported JustHTML From Python to JavaScript With Codex CLI and GPT-5.2 in 4.5 Hours (sim)20765
migrating, ai, python, javascript, tooling, parsing, html
Accessibility as a Core Requirement (mha)20764
accessibility, prioritization
What Does “Hidden” Actually Mean in Accessible Name Computation? (rus)20763
accessibility, naming, hiding
Testing Methods: Pronunciation (dec)20762
accessibility, testing, wcag, pronunciation, screen-readers
A Tale of Two Animations—the Compositor in the Skies (per)20761
animations, css, performance
The “<time>” Element Should Actually Do Something (nol)20760
html, time, semantics
The Wonderful World of Web Feeds (mau/mat)20759
syndication, rss, atom, json
Why We Teach Our Students Progressive Enhancement (cyd)20758
progressive-enhancement, html, css, javascript, training
How to Load CSS (Fast) (per)20757
how-tos, css, performance, critical-path
Automate Your Testing Workflows Using BrowserStack’s AI Agents (zor/css)20756
videos, testing, automation, browsers
Testing Methods: Reading Level (dec)20755
accessibility, testing, wcag, link-lists
Accessibility Is a Human Right, Cruelty a Human Wrong (zel)20754
accessibility, fonts
Changes in the World of HTML Minifiers (apo)20753
html, tooling, minification, html-minifier
Hell Is Other People’s Markup (llo/mat)20752
html, auditing, tooling
WebKit Features for Safari 26.2 (jen+/web)20751
release-notes, webkit, safari, browsers
Chrome DevTools Elements Panel Tips and Tricks (zor/css)20750
videos, dev-tools, chrome, browsers, tips-and-tricks
Using the Browser Console for Accessibility Testing (rus)20749
accessibility, testing, console, javascript, examples
Improving Cumulative Layout Shift in WordPress20748
wordpress, web-vitals, performance, optimization, cheat-sheets
New Front-End Framework Ripple Blends React and Svelte Together (inf)20747
frameworks, ripple
The Design System of the Christmas Factory20746
design-systems, accessibility, processes
Testing Methods: Abbreviations (dec)20745
accessibility, testing, wcag, content, link-lists
A11y Considerations in Math on the Web (man/mat)20744
accessibility, mathml, screen-readers, nvda, voiceover, support
The Ultimate Guide to UI Design in 2026 (web)20743
guides, design, user-experience, simplicity, consistency, hierarchy, accessibility
The Vibe Coding Paradox (jun)20742
programming, vibe-coding, ai
Intro to Performance of React Server Components (ade/per)20741
introductions, performance, react, components, server-side-rendering
Eleventy Core Dependency Watch (2025 Edition) (zac/11t)20740
eleventy
What Else Could Container Queries… Query? (dxn/css)20739
css, container-queries
The New “clamp()” Function in PHP 8.6 (ami)20738
php, functions
How Does Chrome DevTools Network Throttling Actually Work? (deb)20737
videos, dev-tools, chrome, browsers, network
JetBrains Junie: AI Coding Without the Chaos (mik)20736
junie, jetbrains, ai
Vote for the Web Features You Want to See (rvi)20735
web-platform, standards, support
Why Are My View Transitions Blinking? (pic)20734
css, view-transitions
Accessibility Updates (w3c)20733
videos, accessibility, wcag, standards
How HTML Changes in EPUB (rob/mat)20732
epub, html, standards
Testing Methods: Unusual Words (dec)20731
accessibility, testing, wcag, content, link-lists
Thoughts on Native CSS Mixins (chr/fro)20730
css, mixins
Denial of Service and Source Code Exposure in React Server Components (rea)20729
react, components, security
HTML Minifier Next: Presets, New Config Options, Minification Sharing, and Type Definitions (j9t)20728
release-notes, html-minifier
The “Two-Brain” Advantage: Why You Should Never Trust Just One AI (owe/pro)20727
ai, processes, quality
How We Automate Accessibility Testing With Playwright and Axe (boj)20726
accessibility, testing, automation, playwright, axe
Common Misconceptions About WCAG (tet)20725
accessibility, wcag, standards
Useful Patterns for Building HTML Tools (sim)20724
html, ai, tooling
Testing Methods: Language of Parts (dec)20723
accessibility, testing, wcag, internationalization
React 19.2: Further Advances INP Optimization (per)20722
react, web-vitals, performance, optimization
A11y Freedom Beaver (ste/mat)20721
accessibility, aria, html
Creating Scroll-Based Animations in Full view() (pre/css)20720
css, animations, scrolling, functions
Anthropic Donates the MCP Protocol to the Agentic AI Foundation20719
anthropic, mcp, protocols, foss, ai
The Slow Death of Magic20718
product-management, simplicity
Making Complex Web Apps Faster (pat)20717
performance, web-apps, apis, time, complexity
Frontend News #19: CSS “overscroll-behavior”, “scrollbar-gutter”, “text-grow” Properties, and More (zor/css)20716
videos, css, scrolling
Why RSS Matters (wer)20715
rss, syndication, social-media
“aria-busy” Is Not Your Friend (ger)20714
accessibility, aria, nvda, jaws, voiceover, screen-readers
Testing Methods: Language of Page (dec)20713
accessibility, testing, wcag, internationalization
Meeting WCAG Is an Achievement (yat)20712
accessibility, wcag, compliance
Why Every Conference Needs a Nursing Room (bla)20711
community, dei
The Inconvenient Truth: How Web Performance Case Studies Undermine Our Relationship With Business (mac/per)20710
performance, metrics, economics
Discover Dialog (sar/mat)20709
html, modals, javascript, css
Thursday, December 18, 2025 Security Releases (nod)20708
release-notes, nodejs, security
Did You Know Your Browser Has Two Accessibility Trees? (rus)20707
accessibility, browsers, chrome, blink
CSS Wrapped 2025 (una)20706
css, standards, retrospectives
Type-Aware Linting Alpha (cam/bos)20705
linting, tooling, oxc
Comparing HTML Minifiers (j9t)20704
html, minification, tooling, html-minifier, htmlnano, metrics, comparisons
Why Federated Design Systems Keep Failing (sha)20703
design-systems, collaboration
Design Accessible Animation and Movement With Code Examples (pop)20702
design, accessibility, animations, css, javascript, examples
Getting a Close Button to Hang Off of a Dialog (dar)20701
modals, buttons, css, anchor-positioning
Blogging Is Dead. Long Live the Blog. (web)20700
blogging, seo, ai, social-media, web
What’s Wrong With This HTML, and Is It Valid? (pat/mat)20699
html, standards, conformance, web-platform
The Anatomy of a Web Performance Report (web/per)20698
performance, documentation, web-vitals, lighthouse
That Time I Tried Explaining HTML and CSS to My 5-Year Old Niece (css)20697
html, css, learning
Web Performance 2025: The Shift From Optimization to Prediction (fab/per)20696
performance, optimization, retrospectives
Testing Methods: Dragging Movements (dec)20695
accessibility, testing, wcag
Controlling Dialogs and Popovers With the Invoker Commands API (sta/mat)20694
modals, pop-overs, apis, attributes, html
The Sensations of Building Software With LLMs20693
ai, comparisons
A Guide to Token-Efficient Data Prep for LLM Workloads20692
guides, ai, token-optimization, economics
Testing Methods: Concurrent Input Mechanisms (dec)20691
accessibility, testing, wcag
NoLoJS: Reducing the JS Workload With HTML and CSS (aar/per)20690
html, disclosure-widgets, forms, modals, pop-overs, navigation, scrolling, positioning
Accessible by Design: The Role of the “lang” Attribute (col/mat)20689
accessibility, internationalization, html, attributes, metrics
2025 in Review: What’s New in Web Performance? (mat/deb)20688
performance, web-vitals, lighthouse, apis, speculation, chrome, firefox, browsers, dev-tools, tooling, testing, mcp, ai, retrospectives, outlooks
What Are DOM Mutations? (rus)20687
accessibility, dom, javascript
Dealbreaker Bugs in Native Popovers (mat)20686
accessibility, pop-overs, bugs
Lies, Damned Lies, and Design System Adoption Statistics (ikn)20685
design-systems
How We’re Protecting Our Newsroom From npm Supply Chain Attacks (rya/pnp)20684
npm, dependencies, security, case-studies
Testing Methods: Target Size (Enhanced) (dec)20683
accessibility, testing, wcag, touch
How I Built a Form Management Platform With Angular 17 and SurveyJS20682
functionality, forms, angular, tooling
Non-Blocking Cross-Browser Image Rendering on the Canvas (mys/per)20681
canvas, javascript, images, performance
10 Usability Heuristics20680
usability, heuristics
IDREFs: What They Are and How to Use Them (kil/mat)20679
html, forms, aria, accessibility
No More Tokens—Locking Down npm Publish Workflows (zac)20678
npm, dependencies, security, processes
Why You Need Design Maturity in a Product Organisation, and How to Get It20677
design, product-management
Fast by Default (den/per)20676
performance, processes
I Studied 50+ Engineers Who Got Promoted Fast: They All Did One Thing I’d Been Ignoring20675
career, collaboration
Testing Methods: Motion Actuation (dec)20674
accessibility, testing, wcag, mobile
Standards Queues (bka)20673
standards, web-platform, collaboration
In 1995, a Netscape Employee Wrote a Hack in 10 Days That Now Runs the Internet (ben/ars)20672
netscape, javascript, history
The Web Runs on Tolerance (ede)20671
web-platform, standards, principles
Referencing HTML Elements Inside Shadow DOM (meh/mat)20670
html, shadow-dom, web-components
Getting Creative With “the Measure” (mal/css)20669
css, typography, readability
The Timing Problem in Design Systems (mur)20668
design-systems, components
End-to-End Browser and Accessibility Event Architecture (rus)20667
accessibility, browsers, event-loop, browser-engines, javascript-engines, assistive-tech
During Helene, I Just Wanted a Plain Text Website (spa)20666
content
The Downsides of “scrollbar-gutter: stable;” (and One Weird Trick) (chr/fro)20665
css, scrolling
A Little Bit Uncomfortable20664
career, learning
Solving Small Text and Contrast Issues for Large-Screen Readability (a11)20663
accessibility, contrast, readability, typography
Common Misconceptions About Disability (tet)20662
accessibility, concepts
Public Design Systems Are Worth It (pjo)20661
design-systems
TypeScript Strictness Is Non-Monotonic: Strict-Null-Checks and No-Implicit-Any Interact (huo)20660
typescript, arrays
Intopia Launches Assistive Technology Survey 2025 (int)20659
surveys, assistive-tech
Speculation Rules Improvements (tun/mat)20658
performance, speculation, apis
Testing Methods: Label in Name (dec)20657
accessibility, testing, wcag, labels, aria
HTML Semantics: The Short Descriptions of All 113 Elements (j9t)20656
html, semantics, overviews
Critical Security Vulnerability in React Server Components (rea)20655
react, components, security
[Next.js] Security Advisory: CVE-2025-66478 (seb)20654
nextjs, security
Get the Core Right and the Resilient Code Will Follow (bel/btc)20653
videos, resilience, design, communication
How Does Amazon’s Kiro Differ From Traditional IDEs? (ele/des)20652
guest-posts, kiro, code-editors
Understanding “aria-live” Timing: A Two-Layer Model (rus)20651
accessibility, aria, live-regions, notifications
Designing Decisions: Behavioral Psychology That Moves Users20650
design, interaction-design, user-experience
A Pragmatic Guide to Modern CSS Colours II (kev/pic)20649
guides, css, colors, examples
From Reactive to Proactive: Building a Sustainable Accessibility Program (equ)20648
accessibility, processes, culture, w3c
Scrollytelling on Steroids With Scroll-State Queries (css)20647
css, scrolling
Masonry: Things You Won’t Need a Library for Anymore (pat/sma)20646
css, masonry, layout, examples, web-platform
Exploring Large HTML Documents on the Web (per)20645
performance, html, metrics
Progress on TypeScript 7—December 2025 (dan/typ)20644
typescript
You Can’t Make Something Accessible to Everyone (aar)20643
accessibility, design
Testing Methods: Pointer Cancellation (dec)20642
accessibility, testing, wcag
Web Backstories: Shadow DOM (ada+/iga)20641
podcasts, interviews, shadow-dom, web-components, standards, history
Using the Ancient Evils for Debugging (bol/mat)20640
html, debugging
The Nuances of JavaScript Typing Using JSDoc (jar/van)20639
javascript, jsdoc, typescript, developer-experience
Bun Is Joining Anthropic (jar/bun)20638
bun, anthropic
Decreasing [Let’s Encrypt] Certificate Lifetimes to 45 Days (mat/let)20637
http, security, certificates, lets-encrypt
Anchor Positioning and the Inset-Modified Containing Block (IMCB) (bra)20636
css, anchor-positioning, concepts
What Sam Altman Just Taught Us About OKRs (Without Meaning To) (cwo)20635
okr, prioritization, processes, openai
The Practical Guide to LLM Cost Optimization20634
guides, ai, token-optimization, economics
Building Agentic Design Systems: The Future of AI-Enhanced Design20633
design-systems, design, ai, processes
The Next Revolution in Design: Emotional Accessibility (fas)20632
design, accessibility, outlooks
“Sloppy” Code and Accessibility Issues: The Trouble With Trump’s Silicon Valley-Inspired Web Design Project (not)20631
design, accessibility, quality, case-studies
Non-Square Image Blur Extensions (ana/fro)20630
images, css, effects
The Evolution of Web Development: From Static Pages to AI-Driven Experiences (web)20629
history, web, web-2.0, web-apps, ai
Improve TTFB and UX With HTTP Streaming (mb2/per)20628
performance, user-experience, http, streaming, optimization
React Has Changed, Your Hooks Should Too20627
react, hooks
Top Layer Troubles: Popover vs. Dialog (5t3/mat)20626
css, positioning, pop-overs, modals
Nobody Writes Clean Code—We All Just Pretend20625
quality, craft
Testing Methods: Pointer Gestures (dec)20624
accessibility, wcag, testing
Prevent a Page From Scrolling While a Dialog Is Open (geo/css)20623
scrolling, css
Web Design / Dev Advent Calendars for 2025 (aar)20622
link-lists, learning
Is Using Command Line AI an Option for Helping You Code?20621
ai, command-line, cursor, claude, code-editors
Can You Make Toast Messages Accessible? (ada)20620
accessibility, notifications
Testing Methods: Focus Appearance (dec)20619
accessibility, testing, wcag, focus, keyboard-navigation, link-lists
How to Unit Test a Vue Composable With TypeScript (joh)20618
how-tos, testing, vuejs, functions, typescript
Using CSS to Fix the Irradiation Illusion (arg)20617
css, readability, fonts
The Junior Hiring Crisis (ann/peo)20616
hiring, engineering-management, career, community
How Modern Browsers Work (add)20615
browsers, chromium, network, parsing, painting, rendering, javascript-engines, v8, memory, modules, javascript, html, css
Testing Methods: Focus Not Obscured (Enhanced) (dec)20614
accessibility, testing, wcag, focus, keyboard-navigation
How Fast Can Browsers Process Base64 Data? (lem)20613
performance, encoding, base64, browsers, metrics, comparisons
How Good Engineers Write Bad Code at Big Companies (sea)20612
quality, career, culture
The Era of Personal Software20611
programming, ai
CSS-in-JS: The Great Betrayal of Frontend Sanity20610
css-in-js, css, javascript, performance, developer-experience
How Microfrontends Work: 3 Integration Strategies20609
micro-frontends, strategies, routing, iframes, javascript, ai
EAA Deadlines, Why You Probably Can’t Wait Another 5 Years20608
accessibility, eaa, legal, compliance
Category Theory for JavaScript/TypeScript Developers (ibr)20607
javascript, typescript, programming, craft
Who Wins When We Filter the Open Web Through an Opaque System? (hdv)20606
open-web
Web Application Architecture: The Enterprise Framework Powering Modern Digital Experiences (elu)20605
architecture, web-apps
Testing Methods: Focus Not Obscured (Minimum) (dec)20604
accessibility, testing, wcag, focus, keyboard-navigation
Understanding ECDSA [Elliptic Curve Digital Signature Algorithm]20603
cryptography, algorithms, math
Eleventy: How to Set Up Effective HTML Minification (in 24 Seconds) (j9t)20602
how-tos, eleventy, html, html-minifier, minification, optimization
One CSS Trick to Eliminate Scrollbar Layout Shifts (ami)20601
css, scrolling, tips-and-tricks
How to Create an Adaptive SVG Favicon Using the “prefers-color-scheme” Media Query (zor/css)20600
videos, how-tos, favicons, svg, css, images
The Idiot Sandwich—on Embedding Alt Text (ede)20599
images, alt-text, accessibility
5 Reasons Why WCAG AA Compliance Does Not Mean Your Website Is Accessible (cra)20598
accessibility, wcag, compliance, colors, readability, performance, content, multimedia, quality
AI for Good Accessibility (ala)20597
slides, ai, accessibility
The Accessibility Problem With Authentication Methods Like CAPTCHA (sma)20596
accessibility, captcha
Testing Methods: Section Headings (dec)20595
accessibility, testing, wcag, headings
Best of the Pod: Would You Shut Down Your Most Successful Product? the Arc to Dia Story20594
videos, the-browser-company, arc, dia, browsers, history, product-management
New to the Web Platform in November (rac)20593
release-notes, web-platform, browsers, firefox, safari
Ripple Over React? Evaluating the Newest JS Framework (log)20592
ripple, react, frameworks, comparisons
Saumya Majumder on How Cloudflare Outages Impact the Web and WordPress Performance Solutions (nat)20591
podcasts, interviews, cloudflare, wordpress, performance
Taking Down Next.js Servers for 0.0001 Cents a Pop20590
servers, nextjs, vulnerabilities, security
Testing Methods: Link Purpose (Link Only) (dec)20589
accessibility, testing, wcag, links, microcontent, link-lists
Accessibility and Usability: Inline Field Validation vs. Constantly Active Submit Button20588
forms, buttons, validation, accessibility, usability, comparisons
The End of Dashboards and Design Systems20587
design, design-systems
Critique20586
design, craft, collaboration, processes
What an Accessibility Conference Taught Me About Designing for All20585
design, accessibility
How to Add and Remove Items From a Native CSS Carousel (…With CSS) (dxn/fro)20584
how-tos, css, carousels, scrolling
Why Use React? (ada)20583
react, frameworks
What Are Invokers? Interactivity Without JavaScript (tol/syn)20582
videos, javascript, html, pop-overs
Migrating From GitHub to Codeberg (and/zig)20581
migrating, github, codeberg
Updating CSS Border Radius When a Container Is Overflowing (rik)20580
css, borders, overflow, scrolling
A New Navigation Paradigm20579
ai, navigation, design
Applying AI Where It Matters20578
studies, research, ai
Becoming Unblockable (sea)20577
career, prioritization, tooling, collaboration
Thoughts on Kagi’s Orion Browser vs. AI Browsers (dra)20576
orion, kagi, browsers, ai
Orion 1.0—Browse Beyond (kag)20575
browsers, orion, ai
“<dialog>” and Popover: Baseline Layered UI Patterns20574
modals, pop-overs, css
WebGPU Is Now Supported in Major Browsers20573
webgpu, browsers, support, web-platform
What Actually Makes You Senior (ter)20572
career
Animation and Carousels (web)20571
accessibility, animations, carousels, css, reduced-motion
Design Tokens Aren’t Enough—Architecture Decisions Need a Place in Your Design System (sam)20570
design-systems, design-tokens, architecture, documentation
Direction-Aware Arrow Shape Using Corner-Shape (css)20569
css, shapes
Testing Methods: Location (dec)20568
accessibility, testing, wcag, navigation
The Shai-Hulud 2.0 npm Worm: Analysis, and What You Need to Know20567
npm, security, dependencies
A Minimal CSS Starter (j9t)20566
css, templates, minimalism
Tech Predictions for 2026 and Beyond20565
outlooks, web
Design System Culture: What It Is and Why It Matters (ari/sma)20564
design-systems, culture
CSS Backgrounds Module Level 4 (fan+/w3c)20563
standards, css, backgrounds
93% Faster Next.js in (Your) Kubernetes (mco/pla)20562
nextjs, nodejs, performance, kubernetes
Web Browser Status Bars Are Nuts (lap)20561
browsers, comparisons
Brand New Layouts With CSS Subgrid (jos)20560
layout, css, grids, examples
GitLab Discovers Widespread npm Supply Chain Attack20559
npm, dependencies, security, gitlab, aws, gcp, azure
The Future of AWS CodeCommit20558
aws, tooling, git, outlooks
Replacing “glob-all” With “fs.promises.glob” in Node.js (cto)20557
refactoring, nodejs
How to Easily Create Modern, CSS-First Forms in WordPress (zor/css)20556
how-tos, videos, css, forms, wordpress
“light-dark()” Isn’t Always the Same as “prefers-color-scheme” (ste)20555
css, functions, dark-mode, colors
UX Is Your Moat (and You’re Ignoring It) (cwo)20554
user-experience, economics
Managing Side Effects: A JavaScript Effect System in 30 Lines or Less (ayc)20553
javascript
Introduction to CSS “if” Statements and Conditional Logic (mar)20552
introductions, css, functions, conditionals
The State of Tanstack, Two Years of Full-Time OSS (tan/tan)20551
tanstack, foss
The Performance Inequality Gap, 2026 (sli)20550
performance, javascript, metrics
Web Monetization Is Still Inching Along, but Still Too Difficult (chr/fro)20549
monetization
On Inheriting and Sharing Property Values (dxn/css)20548
css, cascade, techniques
Why Does AI Devour So Much Water? (ger)20547
ai, sustainability
Testing Methods: Focus Visible (dec)20546
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
You’re Doing JavaScript Testing Wrong (cfe)20545
javascript, testing
Shuffling a CSS Grid Using Custom Properties (cod)20544
css, grids, custom-properties
WCAG 2.1 Addition—Success Criterion 1.4.10: Reflow (Level AA)20543
accessibility, wcag, standards, reflow
Testing Methods: Headings and Labels (dec)20542
accessibility, wcag, testing, headings, labels, forms
If You Think Your Commit Messages Are Bad, Just Wait…20541
commit-messages
You’re Not Building Netflix: Stop Coding Like You Are20540
programming, architecture, prioritization
AI Will Soon Deliver Code That Will Pass Automatic Testing by Default (cer)20539
ai, testing, accessibility
Testing Methods: Multiple Ways (dec)20538
accessibility, wcag, testing, navigation, sitemaps, link-lists
Unifying [Wikipedia’s] Mobile and Desktop Domains (kri/wik)20537
wikipedia, refactoring, mobile, desktop, performance, seo, user-experience, infrastructure, case-studies, link-lists
The PHP 8.5 Pipe Operator (“|>”): Useful, but Watch for These Gotchas20536
php, operators