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

→ 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#
The Wonderful World of Web Feeds (mau/mat)21182
syndication, rss, atom, json
Why We Teach Our Students Progressive Enhancement (cyd)21181
progressive-enhancement, html, css, javascript, training
How to Load CSS (Fast) (per)21180
how-tos, css, performance, critical-path
Automate Your Testing Workflows Using BrowserStack’s AI Agents (zor/css)21179
videos, testing, automation, browsers
Testing Methods: Reading Level (dec)21178
accessibility, testing, wcag, link-lists
Accessibility Is a Human Right, Cruelty a Human Wrong (zel)21177
accessibility, fonts
Changes in the World of HTML Minifiers (apo)21176
html, tooling, minification, html-minifier
Hell Is Other People’s Markup (llo/mat)21175
html, auditing, tooling
WebKit Features for Safari 26.2 (met+/web)21174
release-notes, webkit, safari, browsers
Chrome DevTools Elements Panel Tips and Tricks (zor/css)21173
videos, dev-tools, chrome, browsers, tips-and-tricks
Using the Browser Console for Accessibility Testing (rus)21172
accessibility, testing, console, javascript, examples
Improving Cumulative Layout Shift in WordPress21171
wordpress, web-vitals, performance, optimization, cheat-sheets
New Front-End Framework Ripple Blends React and Svelte Together (inf)21170
frameworks, ripple
The Design System of the Christmas Factory21169
design-systems, accessibility, processes
Testing Methods: Abbreviations (dec)21168
accessibility, testing, wcag, content, link-lists
A11y Considerations in Math on the Web (man/mat)21167
accessibility, mathml, screen-readers, nvda, voiceover, support
The Ultimate Guide to UI Design in 2026 (web)21166
guides, design, user-experience, simplicity, consistency, hierarchy, accessibility
The Vibe Coding Paradox (jun)21165
programming, vibe-coding, ai
Intro to Performance of React Server Components (ade/per)21164
introductions, performance, react, components, server-side-rendering
Eleventy Core Dependency Watch (2025 Edition) (zac/11t)21163
eleventy
What Else Could Container Queries… Query? (dxn/css)21162
css, container-queries
The New “clamp()” Function in PHP 8.6 (ami)21161
php, functions
How Does Chrome DevTools Network Throttling Actually Work? (deb)21160
videos, dev-tools, chrome, browsers, network
JetBrains Junie: AI Coding Without the Chaos (mik)21159
junie, jetbrains, ai
Vote for the Web Features You Want to See (rvi)21158
web-platform, standards, support
Why Are My View Transitions Blinking? (pic)21157
css, view-transitions
Accessibility Updates (w3c)21156
videos, accessibility, wcag, standards
How HTML Changes in EPUB (rob/mat)21155
epub, html, standards
Testing Methods: Unusual Words (dec)21154
accessibility, testing, wcag, content, link-lists
Thoughts on Native CSS Mixins (chr/fro)21153
css, mixins
Denial of Service and Source Code Exposure in React Server Components (rea)21152
react, components, security
HTML Minifier Next: Presets, New Config Options, Minification Sharing, and Type Definitions (j9t)21151
release-notes, html-minifier
The “Two-Brain” Advantage: Why You Should Never Trust Just One AI (owe/pro)21150
ai, processes, quality
How We Automate Accessibility Testing With Playwright and Axe (boj)21149
accessibility, testing, automation, playwright, axe
Common Misconceptions About WCAG (tet)21148
accessibility, wcag, standards
Useful Patterns for Building HTML Tools (sim)21147
html, ai, tooling
Testing Methods: Language of Parts (dec)21146
accessibility, testing, wcag, internationalization
React 19.2: Further Advances INP Optimization (per)21145
react, web-vitals, performance, optimization
A11y Freedom Beaver (ste/mat)21144
accessibility, aria, html
Creating Scroll-Based Animations in Full view() (pre/css)21143
css, animations, scrolling, functions
Anthropic Donates the MCP Protocol to the Agentic AI Foundation21142
anthropic, mcp, protocols, foss, ai
The Slow Death of Magic21141
product-management, simplicity
Making Complex Web Apps Faster (pat)21140
performance, web-apps, apis, time, complexity
Frontend News #19: CSS “overscroll-behavior”, “scrollbar-gutter”, “text-grow” Properties, and More (zor/css)21139
videos, css, scrolling
Why RSS Matters (wer)21138
rss, syndication, social-media
“aria-busy” Is Not Your Friend (ger)21137
accessibility, aria, nvda, jaws, voiceover, screen-readers
Testing Methods: Language of Page (dec)21136
accessibility, testing, wcag, internationalization
Meeting WCAG Is an Achievement (yat)21135
accessibility, wcag, compliance
Why Every Conference Needs a Nursing Room (bla)21134
community, dei
The Inconvenient Truth: How Web Performance Case Studies Undermine Our Relationship With Business (mac/per)21133
performance, metrics, economics
Discover Dialog (sar/mat)21132
html, modals, javascript, css
Thursday, December 18, 2025 Security Releases (nod)21131
release-notes, nodejs, security
Did You Know Your Browser Has Two Accessibility Trees? (rus)21130
accessibility, browsers, chrome, blink
CSS Wrapped 2025 (una)21129
css, standards, retrospectives
Type-Aware Linting Alpha (cam/bos)21128
linting, tooling, oxc
Comparing HTML Minifiers (j9t)21127
html, minification, tooling, html-minifier, htmlnano, metrics, comparisons
Why Federated Design Systems Keep Failing (sha)21126
design-systems, collaboration
Design Accessible Animation and Movement With Code Examples (pop)21125
design, accessibility, animations, css, javascript, examples
Getting a Close Button to Hang Off of a Dialog (dar)21124
modals, buttons, css, anchor-positioning
Blogging Is Dead. Long Live the Blog. (web)21123
blogging, seo, ai, social-media, web
What’s Wrong With This HTML, and Is It Valid? (pat/mat)21122
html, standards, conformance, web-platform
The Anatomy of a Web Performance Report (web/per)21121
performance, documentation, web-vitals, lighthouse
That Time I Tried Explaining HTML and CSS to My 5-Year Old Niece (css)21120
html, css, learning
Web Performance 2025: The Shift From Optimization to Prediction (fab/per)21119
performance, optimization, retrospectives
Testing Methods: Dragging Movements (dec)21118
accessibility, testing, wcag
Controlling Dialogs and Popovers With the Invoker Commands API (sta/mat)21117
modals, pop-overs, apis, attributes, html
The Sensations of Building Software With LLMs21116
ai, comparisons
A Guide to Token-Efficient Data Prep for LLM Workloads21115
guides, ai, token-optimization, economics
Testing Methods: Concurrent Input Mechanisms (dec)21114
accessibility, testing, wcag
NoLoJS: Reducing the JS Workload With HTML and CSS (aar/per)21113
html, disclosure-widgets, forms, modals, pop-overs, navigation, scrolling, positioning
Accessible by Design: The Role of the “lang” Attribute (col/mat)21112
accessibility, internationalization, html, attributes, metrics
2025 in Review: What’s New in Web Performance? (mat/deb)21111
performance, web-vitals, lighthouse, apis, speculation, chrome, firefox, browsers, dev-tools, tooling, testing, mcp, ai, retrospectives, outlooks
What Are DOM Mutations? (rus)21110
accessibility, dom, javascript
Dealbreaker Bugs in Native Popovers (mat)21109
accessibility, pop-overs, bugs
Lies, Damned Lies, and Design System Adoption Statistics (ikn)21108
design-systems
How We’re Protecting Our Newsroom From npm Supply Chain Attacks (rya/pnp)21107
npm, dependencies, security, case-studies
Testing Methods: Target Size (Enhanced) (dec)21106
accessibility, testing, wcag, touch
How I Built a Form Management Platform With Angular 17 and SurveyJS21105
functionality, forms, angular, tooling
Non-Blocking Cross-Browser Image Rendering on the Canvas (mys/per)21104
canvas, javascript, images, performance
10 Usability Heuristics21103
usability, heuristics
IDREFs: What They Are and How to Use Them (kil/mat)21102
html, forms, aria, accessibility
No More Tokens—Locking Down npm Publish Workflows (zac)21101
npm, dependencies, security, processes
Why You Need Design Maturity in a Product Organisation, and How to Get It21100
design, product-management
Fast by Default (den/per)21099
performance, processes
I Studied 50+ Engineers Who Got Promoted Fast: They All Did One Thing I’d Been Ignoring21098
career, collaboration
Testing Methods: Motion Actuation (dec)21097
accessibility, testing, wcag, mobile
Standards Queues (bka)21096
standards, web-platform, collaboration
In 1995, a Netscape Employee Wrote a Hack in 10 Days That Now Runs the Internet (ben/ars)21095
netscape, javascript, history
The Web Runs on Tolerance (ede)21094
web-platform, standards, principles
Referencing HTML Elements Inside Shadow DOM (meh/mat)21093
html, shadow-dom, web-components
Getting Creative With “the Measure” (mal/css)21092
css, typography, readability
The Timing Problem in Design Systems (mur)21091
design-systems, components
End-to-End Browser and Accessibility Event Architecture (rus)21090
accessibility, browsers, event-loop, browser-engines, javascript-engines, assistive-tech
During Helene, I Just Wanted a Plain Text Website (spa)21089
content
The Downsides of “scrollbar-gutter: stable;” (and One Weird Trick) (chr/fro)21088
css, scrolling
A Little Bit Uncomfortable21087
career, learning
Solving Small Text and Contrast Issues for Large-Screen Readability (a11)21086
accessibility, contrast, readability, typography
Common Misconceptions About Disability (tet)21085
accessibility, concepts
Public Design Systems Are Worth It (pjo)21084
design-systems
TypeScript Strictness Is Non-Monotonic: Strict-Null-Checks and No-Implicit-Any Interact (huo)21083
typescript, arrays
Intopia Launches Assistive Technology Survey 2025 (int)21082
surveys, assistive-tech
Speculation Rules Improvements (tun/mat)21081
performance, speculation, apis
Testing Methods: Label in Name (dec)21080
accessibility, testing, wcag, labels, aria
HTML Semantics: The Short Descriptions of All 113 Elements (j9t)21079
html, semantics, overviews
Critical Security Vulnerability in React Server Components (rea)21078
react, components, security
[Next.js] Security Advisory: CVE-2025-66478 (seb)21077
nextjs, security
Get the Core Right and the Resilient Code Will Follow (bel/btc)21076
videos, resilience, design, communication
Web Backstories: Shadow DOM (ada+/iga)21075
podcasts, interviews, shadow-dom, web-components, standards, history
How Does Amazon’s Kiro Differ From Traditional IDEs? (ele/des)21074
guest-posts, kiro, code-editors
Understanding “aria-live” Timing: A Two-Layer Model (rus)21073
accessibility, aria, live-regions, notifications
Designing Decisions: Behavioral Psychology That Moves Users21072
design, interaction-design, user-experience
A Pragmatic Guide to Modern CSS Colours II (kev/pic)21071
guides, css, colors, examples
From Reactive to Proactive: Building a Sustainable Accessibility Program (equ)21070
accessibility, processes, culture, w3c
Scrollytelling on Steroids With Scroll-State Queries (css)21069
css, scrolling
Masonry: Things You Won’t Need a Library for Anymore (pat/sma)21068
css, masonry, layout, examples, web-platform
Exploring Large HTML Documents on the Web (per)21067
performance, html, metrics
Progress on TypeScript 7—December 2025 (dan/typ)21066
typescript
You Can’t Make Something Accessible to Everyone (aar)21065
accessibility, design
Testing Methods: Pointer Cancellation (dec)21064
accessibility, testing, wcag
Using the Ancient Evils for Debugging (bol/mat)21063
html, debugging
The Nuances of JavaScript Typing Using JSDoc (jar/van)21062
javascript, jsdoc, typescript, developer-experience
Bun Is Joining Anthropic (jar/bun)21061
bun, anthropic
Decreasing [Let’s Encrypt] Certificate Lifetimes to 45 Days (mat/let)21060
http, security, certificates, lets-encrypt
Anchor Positioning and the Inset-Modified Containing Block (IMCB) (bra)21059
css, anchor-positioning, concepts
What Sam Altman Just Taught Us About OKRs (Without Meaning To) (cwo)21058
okr, prioritization, processes, openai
The Practical Guide to LLM Cost Optimization21057
guides, ai, token-optimization, economics
Building Agentic Design Systems: The Future of AI-Enhanced Design21056
design-systems, design, ai, processes
The Next Revolution in Design: Emotional Accessibility (fas)21055
design, accessibility, outlooks
“Sloppy” Code and Accessibility Issues: The Trouble With Trump’s Silicon Valley-Inspired Web Design Project (not)21054
design, accessibility, quality, case-studies
Non-Square Image Blur Extensions (ana/fro)21053
images, css, effects
The Evolution of Web Development: From Static Pages to AI-Driven Experiences (web)21052
history, web, web-2.0, web-apps, ai
Improve TTFB and UX With HTTP Streaming (mb2/per)21051
performance, user-experience, http, streaming, optimization
React Has Changed, Your Hooks Should Too21050
react, hooks
Top Layer Troubles: Popover vs. Dialog (5t3/mat)21049
css, positioning, pop-overs, modals
Nobody Writes Clean Code—We All Just Pretend21048
quality, craft
Testing Methods: Pointer Gestures (dec)21047
accessibility, wcag, testing
Prevent a Page From Scrolling While a Dialog Is Open (geo/css)21046
scrolling, css
Web Design / Dev Advent Calendars for 2025 (aar)21045
link-lists, learning
Is Using Command Line AI an Option for Helping You Code?21044
ai, command-line, cursor, claude, code-editors
Can You Make Toast Messages Accessible? (ada)21043
accessibility, notifications
Testing Methods: Focus Appearance (dec)21042
accessibility, testing, wcag, focus, keyboard-navigation, link-lists
How to Unit Test a Vue Composable With TypeScript (joh)21041
how-tos, testing, vuejs, functions, typescript
Using CSS to Fix the Irradiation Illusion (arg)21040
css, readability, fonts
The Junior Hiring Crisis (ann/peo)21039
hiring, engineering-management, career, community
How Modern Browsers Work (add)21038
browsers, chromium, network, parsing, painting, rendering, javascript-engines, v8, memory, modules, javascript, html, css
Testing Methods: Focus Not Obscured (Enhanced) (dec)21037
accessibility, testing, wcag, focus, keyboard-navigation
How Fast Can Browsers Process Base64 Data? (lem)21036
performance, encoding, base64, browsers, metrics, comparisons
How Good Engineers Write Bad Code at Big Companies (sea)21035
quality, career, culture
The Era of Personal Software21034
programming, ai
CSS-in-JS: The Great Betrayal of Frontend Sanity21033
css-in-js, css, javascript, performance, developer-experience
How Microfrontends Work: 3 Integration Strategies21032
micro-frontends, strategies, routing, iframes, javascript, ai
EAA Deadlines, Why You Probably Can’t Wait Another 5 Years21031
accessibility, eaa, legal, compliance
Category Theory for JavaScript/TypeScript Developers (ibr)21030
javascript, typescript, programming, craft
Who Wins When We Filter the Open Web Through an Opaque System? (hdv)21029
open-web
Web Application Architecture: The Enterprise Framework Powering Modern Digital Experiences (elu)21028
architecture, web-apps
Testing Methods: Focus Not Obscured (Minimum) (dec)21027
accessibility, testing, wcag, focus, keyboard-navigation
Understanding ECDSA [Elliptic Curve Digital Signature Algorithm]21026
cryptography, algorithms, math
Eleventy: How to Set Up Effective HTML Minification (in 24 Seconds) (j9t)21025
how-tos, eleventy, html, html-minifier, minification, optimization
One CSS Trick to Eliminate Scrollbar Layout Shifts (ami)21024
css, scrolling, tips-and-tricks
How to Create an Adaptive SVG Favicon Using the “prefers-color-scheme” Media Query (zor/css)21023
videos, how-tos, favicons, svg, css, images
The Idiot Sandwich—on Embedding Alt Text (ede)21022
images, alt-text, accessibility
5 Reasons Why WCAG AA Compliance Does Not Mean Your Website Is Accessible (cra)21021
accessibility, wcag, compliance, colors, readability, performance, content, multimedia, quality
AI for Good Accessibility (ala)21020
slides, ai, accessibility
The Accessibility Problem With Authentication Methods Like CAPTCHA (sma)21019
accessibility, captcha
Testing Methods: Section Headings (dec)21018
accessibility, testing, wcag, headings
New to the Web Platform in November21017
release-notes, web-platform, browsers, firefox, safari
Why Use React?21016
react, frameworks
Best of the Pod: Would You Shut Down Your Most Successful Product? the Arc to Dia Story21015
videos, the-browser-company, arc, dia, browsers, history, product-management
Ripple Over React? Evaluating the Newest JS Framework (log)21014
ripple, react, frameworks, comparisons
Saumya Majumder on How Cloudflare Outages Impact the Web and WordPress Performance Solutions (nat)21013
podcasts, interviews, cloudflare, wordpress, performance
Taking Down Next.js Servers for 0.0001 Cents a Pop21012
servers, nextjs, vulnerabilities, security
Testing Methods: Link Purpose (Link Only) (dec)21011
accessibility, testing, wcag, links, microcontent, link-lists
Accessibility and Usability: Inline Field Validation vs. Constantly Active Submit Button21010
forms, buttons, validation, accessibility, usability, comparisons
The End of Dashboards and Design Systems21009
design, design-systems
Critique21008
design, craft, collaboration, processes
What an Accessibility Conference Taught Me About Designing for All21007
design, accessibility
How to Add and Remove Items From a Native CSS Carousel (…With CSS) (dxn/fro)21006
how-tos, css, carousels, scrolling
What Are Invokers? Interactivity Without JavaScript (tol/syn)21005
videos, javascript, html, pop-overs
Migrating From GitHub to Codeberg (and/zig)21004
migrating, github, codeberg
Updating CSS Border Radius When a Container Is Overflowing (rik)21003
css, borders, overflow, scrolling
A New Navigation Paradigm21002
ai, navigation, design
Applying AI Where It Matters21001
studies, research, ai
Becoming Unblockable (sea)21000
career, prioritization, tooling, collaboration
Thoughts on Kagi’s Orion Browser vs. AI Browsers (dra)20999
orion, kagi, browsers, ai
Orion 1.0—Browse Beyond (kag)20998
browsers, orion, ai
“<dialog>” and Popover: Baseline Layered UI Patterns20997
modals, pop-overs, css
WebGPU Is Now Supported in Major Browsers20996
webgpu, browsers, support, web-platform
What Actually Makes You Senior (ter)20995
career
Animation and Carousels (web)20994
accessibility, animations, carousels, css, reduced-motion
Design Tokens Aren’t Enough—Architecture Decisions Need a Place in Your Design System (sam)20993
design-systems, design-tokens, architecture, documentation
Direction-Aware Arrow Shape Using Corner-Shape (css)20992
css, shapes
Testing Methods: Location (dec)20991
accessibility, testing, wcag, navigation
The Shai-Hulud 2.0 npm Worm: Analysis, and What You Need to Know20990
npm, security, dependencies
A Minimal CSS Starter (j9t)20989
css, templates, minimalism
Tech Predictions for 2026 and Beyond20988
outlooks, web
Design System Culture: What It Is and Why It Matters (ari/sma)20987
design-systems, culture
CSS Backgrounds Module Level 4 (fan+/w3c)20986
standards, css, backgrounds
93% Faster Next.js in (Your) Kubernetes (mco/pla)20985
nextjs, nodejs, performance, kubernetes
Web Browser Status Bars Are Nuts (lap)20984
browsers, comparisons
Brand New Layouts With CSS Subgrid (jos)20983
layout, css, grids, examples
Anatomy of AI Input (ibe)20982
ai, design
GitLab Discovers Widespread npm Supply Chain Attack20981
npm, dependencies, security, gitlab, aws, gcp, azure
The Future of AWS CodeCommit20980
aws, tooling, git, outlooks
Replacing “glob-all” With “fs.promises.glob” in Node.js (cto)20979
refactoring, nodejs
How to Easily Create Modern, CSS-First Forms in WordPress (zor/css)20978
how-tos, videos, css, forms, wordpress
“light-dark()” Isn’t Always the Same as “prefers-color-scheme” (ste)20977
css, functions, dark-mode, colors
UX Is Your Moat (and You’re Ignoring It) (cwo)20976
user-experience, economics
Managing Side Effects: A JavaScript Effect System in 30 Lines or Less (ayc)20975
javascript
Introduction to CSS “if” Statements and Conditional Logic (mar)20974
introductions, css, functions, conditionals
The State of Tanstack, Two Years of Full-Time OSS (tan/tan)20973
tanstack, foss
The Performance Inequality Gap, 2026 (sli)20972
performance, javascript, metrics
Web Monetization Is Still Inching Along, but Still Too Difficult (chr/fro)20971
monetization
On Inheriting and Sharing Property Values (dxn/css)20970
css, cascade, techniques
Why Does AI Devour So Much Water? (ger)20969
ai, sustainability
Testing Methods: Focus Visible (dec)20968
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
You’re Doing JavaScript Testing Wrong (cfe)20967
javascript, testing
Shuffling a CSS Grid Using Custom Properties (cod)20966
css, grids, custom-properties
WCAG 2.1 Addition—Success Criterion 1.4.10: Reflow (Level AA)20965
accessibility, wcag, standards, reflow
Testing Methods: Headings and Labels (dec)20964
accessibility, wcag, testing, headings, labels, forms
If You Think Your Commit Messages Are Bad, Just Wait…20963
commit-messages
You’re Not Building Netflix: Stop Coding Like You Are20962
programming, architecture, prioritization
AI Will Soon Deliver Code That Will Pass Automatic Testing by Default (cer)20961
ai, testing, accessibility
Testing Methods: Multiple Ways (dec)20960
accessibility, wcag, testing, navigation, sitemaps, link-lists
Unifying [Wikipedia’s] Mobile and Desktop Domains (kri/wik)20959
wikipedia, refactoring, mobile, desktop, performance, seo, user-experience, infrastructure, case-studies, link-lists
The PHP 8.5 Pipe Operator (“|>”): Useful, but Watch for These Gotchas20958
php, operators
How Designers Gaslight Users With Microcopy (web)20957
design, microcontent, dark-patterns
WCAG 2.1 Addition—Success Criterion 1.3.5: Identify Input Purpose (Level AA)20956
accessibility, wcag, standards, forms
Keyframes Tokens: Standardizing Animation Across Projects (ami/sma)20955
css, animations, consistency
Testing Methods: Link Purpose (in Context) (dec)20954
accessibility, wcag, testing, links, microcontent
WCAG 3 Update (kno)20953
videos, accessibility, wcag, standards
Critical Thinking During the Age of AI (add)20952
ai, processes, career
The Value of Selecting Selects by Value (aar)20951
accessibility, wcag, forms
How to Create 3D Images in CSS With the Layered Pattern (sun/fro)20950
how-tos, images, 3d, css, transforms
5 Engineering Skills to Prioritize in the AI-Driven Era20949
ai, writing, architecture, debugging, communication, career
Testing Methods: Focus Order (dec)20948
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
WCAG 2.1 Addition—Success Criterion 1.3.4: Orientation (Level AA)20947
accessibility, wcag, standards, mobile
Cross-Browser Anchor Positioning (mey+/odd)20946
videos, interviews, css, anchor-positioning
The Rosetta Stone of Design Engineering (yan)20945
design, processes, collaboration
Responsive Letter Spacing (tyl/clo)20944
responsive-design, typography, css
Grid: How “grid-template-areas” Offer a Visual Solution for Your Code (sar/web)20943
css, grids, layout
Should We Even Have “:closed”? (sun/css)20942
css, selectors, disclosure-widgets
The Engineer You Never Met: Why Interview Processes Systematically Reject Qualified Engineers20941
hiring, economics, case-studies
Automated Accessibility Testing for React—Tools and Best Practices You Can Use20940
accessibility, testing, react, tooling, best-practices
These Queries Cover 80% of SQL20939
sql, databases
Testing Methods: Page Titled (dec)20938
accessibility, wcag, testing, html
Good Enough Is a Strategy (tre)20937
strategies, technical-debt, quality
State of React 2025 (sac/dev)20936
surveys, react
A Guided Tour of Copenhagen (fre/ske)20935
guides, sketch
Announcing Angular v21 (mar/ang)20934
release-notes, angular
Why Web Design Must Finally Break Free From Its Graphic Design Roots (web)20933
design, print, ai, career
Using esbuild in Eleventy (db)20932
eleventy, esbuild
Anchoring to a Containing Block (kiz)20931
css, anchor-positioning
When the Dark Pattern Is a Glaring Green Checkmark20930
design, user-experience, dark-patterns
Cloudflare Outage on November 18, 2025 (eas)20929
cloudflare
Web Development: On the Size and Output of and the Growth Opportunities Within the Field (j9t)20928
guest-posts, training, career, frontend-dogma
To Be a Leader of Systems (haz)20927
leadership
The Cloudflare Outage Was a Good Thing20926
cloudflare, resilience, infrastructure
Testing Methods: Bypass Blocks (dec)20925
accessibility, wcag, testing, keyboard-navigation
Experiment: Making TypeScript Immutable-by-Default (eva)20924
experiments, typescript
WCAG 2.1 Addition—Success Criterion 2.5.4: Motion Actuation (Level A)20923
accessibility, wcag, standards
More CSS “random()” Learning Through Experiments (chr/fro)20922
css, functions, randomness, experiments
Do Not Put Your Site Behind Cloudflare if You Don’t Need To20921
cloudflare
Firefox Is Adding Support for a Feature That Users Requested Since 200420920
firefox, browsers, keyboard-shortcuts
How to Successfully Migrate Your App With an AI Agent (bla/ope)20919
how-tos, migrating, refactoring, ai
WCAG 2.1 Addition—Success Criterion 2.5.3: Label in Name (Level A)20918
accessibility, wcag, standards, labels, forms
Ethical Defaults: Why Designers Must Stop Hiding Behind Settings (web)20917
design, ethics
10 Git Tricks That Made Me a Way Better Developer20916
git, command-line, tips-and-tricks
Tooltip Components Should Not Exist (tkd)20915
tooltips, components
A11y 101: 2.4.7 Focus Visible (nat)20914
introductions, accessibility, wcag, focus, keyboard-navigation
The “Most Hated” CSS Feature: “asin()”, “acos()”, “atan()”, and “atan2()” (mon/css)20913
css, functions, math
Testing Methods: Animation From Interactions (dec)20912
accessibility, wcag, testing, animations
How to Prepare for the Future of Programming (jet)20911
how-tos, programming, learning
Automated npm Secret Rotation in GitHub Actions (mhe)20910
npm, security, automation, github-actions
Top 10 Branding Trends to Watch Out for in 2026 (des)20909
branding, design, trends, outlooks
Testing Methods: Three Flashes or Below Threshold (dec)20908
accessibility, wcag, testing
How to “Officially” Deprecate Methods With Node.js Utilities (ste)20907
how-tos, deprecation, nodejs, developer-experience
Wrangling My Email With Claude Code (jlo)20906
email, claude, ai, efficiency
Testing Methods: Timeouts (dec)20905
accessibility, wcag, testing, time
Accessible Names and Labels: Understanding What Works and What Doesn’t (tpg)20904
accessibility, labels, naming, forms
“display: masonry” Is Officially Dead (kev)20903
videos, css, masonry, layout
It Is OK to Say “CSS Variables” Instead of (or Alongside) “Custom Properties” (kiz)20902
css, variables, custom-properties, terminology
Good Visual Design, Explained (nng)20901
design, principles, quality
A Complete Guide to the HTML Number Input (oll)20900
guides, html, attributes, forms
“Technical Debt Will Bite Us in the Ass”: How to Make Non-Technical Stakeholders Actually Care20899
how-tos, technical-debt, communication, prioritization
Monotype Font Licencing Shake-Down (ame)20898
fonts, licensing
“Move Fast and Don’t Break Things”—What Four Startups Taught Me About Execution20897
design, career, product-management, engineering-management
What’s New in PHP 8.5 (bre)20896
php
Animating CSS “width” or “height” No Longer Forces a Main Thread Animation (in Chrome, Under the Right Conditions) (bra)20895
css, animations, chrome, browsers
Is Server-Side Rendering React’s Holy Grail?20894
react, server-side-rendering
A Suggestion for Your Community Terms and Policies (j9t)20893
community, collaboration, politics
What’s New in the Design Tokens Spec: From Static to Living Design Data (res/zer)20892
design-tokens, design-systems
Browserslist and Baseline (chr/fro)20891
browsers, support, web-platform, browserslist
Older Tech in the Browser Stack (sma)20890
xpath, css, techniques
Writing Is Probably the Worst Use Case of AI20889
ai, writing
Testing Methods: Re-Authenticating (dec)20888
accessibility, wcag, testing, authentication
What’s Coming in TypeScript 6/7 (dan+/typ)20887
podcasts, interviews, typescript, ecmascript, outlooks
From Tokens to Touchpoints: Powering a Successful Rebrand With Your Design System (zer)20886
design-systems, design-tokens, collaboration
The Last Couple Years in V8’s Garbage Collector (win)20885
v8, javascript-engines, garbage-collection, memory, retrospectives, javascript
The Hard Truth About Learning to Code (That No One Tells You)20884
learning, career
Do Newer AI-Native IDEs Outperform Other AI Coding Assistants? (lau)20883
ai, code-editors, efficiency, metrics, comparisons
What Developers Really Mean by “Bad Code” (jet)20882
maintainability, scalability, consistency, security, quality
How We Catch UI Bugs Early With Visual Regression Testing20881
testing, regressions, playwright, javascript
Range Syntax for Style Queries (una)20880
css, style-queries
CSS “:interest-invoker” and “:interest-target” Pseudo-Classes (tre)20879
css, selectors, forms
Testing Methods: Interruptions (dec)20878
accessibility, wcag, testing
Netflix’s Engineering Culture (ger)20877
podcasts, interviews, netflix, culture, ai
AVIF vs. JPEG vs. WebP vs. PNG20876
avif, jpeg, webp, png, images, comparisons
Firefox 147 Release Notes for Developers (mdn)20875
release-notes, firefox, browsers
Guiding the Future of Ethical Design20874
design, ethics
Why Headings Are Important in HTML: Structure, Accessibility, and SEO20873
html, headings, accessibility, seo
Programming Principles for Self Taught Front-End Developers (kil/pic)20872
programming, principles
Effectively Monitoring Web Performance (sma)20871
performance, monitoring, tooling
“::details-content”: Style Expandable Content Without Wrapper Divs (tre)20870
disclosure-widgets, css, html
Using “chrome-devtools-mcp” With Polypane (pol)20869
polypane, browsers, dev-tools, mcp, chrome, ai
Rust vs. Python: Finding the Right Balance Between Speed and Simplicity (jet)20868
rust, python, performance, simplicity, programming, comparisons
Error Chaining in JavaScript: Cleaner Debugging With “Error.cause”20867
javascript, errors, debugging
Perfectly Pointed Tooltips: To the Corners (css/fro)20866
css, tooltips
10 Smart Performance Hacks for Faster Python Code (did/jet)20865
python, performance, techniques
My CSS Selector Strategy (mal)20864
css, selectors, principles
20 Best CSS Preprocessor Tools and Comparison for 2025: Complete Guide to Active Tools20863
guides, css, tooling, preprocessors, comparisons, link-lists
Crafting Generative CSS Worlds (cod)20862
css, transforms
Testing Methods: Pause, Stop, Hide (dec)20861
accessibility, wcag, testing, multimedia, animations, link-lists
Link vs. Button: Choosing the Right Element for the Right Job (tpg)20860
html, links, buttons, accessibility, wcag, comparisons
“aria-labels” and Privacy: A Word of Caution (hom)20859
accessibility, aria, privacy
“AI” Browsers: The Price of Admission Is Too High (bru/viv)20858
ai, browsers
Headings: Semantics, Fluidity, and Styling—Oh My! (geo/css)20857
headings, html, css
Six Things I Bet You Didn’t Know You Could Do With Chrome’s DevTools20856
chrome, dev-tools, browsers
3 User-Friendly Technical Ways to Respond to Genocidistan (j9t)20855
politics, traffic, censorship, community
How to Rate-Limit Requests With nginx20854
how-tos, nginx, servers, rate-limiting
Building a Multi-Stage Timetable With Modern CSS Using Grid, Subgrid, “round()”, and “mod()” (nil)20853
css, grids, layout, functions
Testing Methods: Timing Adjustable (dec)20852
accessibility, wcag, testing, time, link-lists
Why CSS Is So Hard for Generative AIs to Understand?20851
css, ai
Frontend News #17: Why Pseudo-Elements Don’t Work With “:is()”, the Advantages of OKLCH, and More (zor/css)20850
videos, css, selectors, oklch
Testing Methods: Character Key Shortcuts (dec)20849
accessibility, wcag, testing, keyboard-shortcuts
When Everyone’s a Developer, How Do We Promote the Web Platform Over React? (ric)20848
web-platform, react, ai, link-lists
Material 3 Expressive: Building on the Failures of Flat Design20847
material-design, flat-design, design, link-lists
Slots in Design Systems (nat)20846
design-systems, figma
A Practical Guide to Flutter Accessibility: The Basics (kor)20845
guides, fundamentals, flutter, accessibility
Fix “width: 100%” Overflow Easily (zor/css)20844
videos, css, overflow
Sustainable Accessibility in Complex Organisations: Strategic Foundations (ihe/tet)20843
accessibility, leadership, dei, processes
When to Use CSS “text-wrap: balance” vs. “text-wrap: pretty” (dxn/log)20842
css, typography
Tailwind CSS Won the War… but We’re the Losers20841
tailwind, css, html, web-platform
Sustainable Accessibility in Complex Organisations: Organisational Realities (ihe/tet)20840
accessibility
Staggered Animation With CSS “sibling-*” Functions (pre/fro)20839
animations, css, functions
Smashing Animations: Magnificent SVGs With “<use>” and CSS Custom Properties (mal/sma)20838
animations, transforms, svg, css, custom-properties
Monorepo vs. Multi-Repo vs. Git Submodule vs. Git Subtree: A Complete Guide for Developers20837
guides, architecture, monorepos, git, version-control, comparisons
JavaScript Just Leveled Up: ES2025—You’ll Fall in Love With (jsd)20836
javascript, ecmascript, standards
It Ain’t Easy to Move a Side Project Off Big Tech (thi)20835
migrating, vercel, sveltekit
Is Figma in Its Accessibility Era?20834
figma, accessibility
10 Tiny UI Fixes That Make a Big Difference20833
design, forms, spacing, alignment, consistency, hierarchy, usability, best-practices
TypeScript’s Rise in the AI Era: Insights From Lead Architect, Anders Hejlsberg (aar)20832
typescript, ai
Combining Scroll-Driven Animations With “@starting-style” (bra)20831
css, scrolling, animations
Advanced Beginner’s Guide to ClojureScript (rom)20830
guides, javascript
Now Available: “On Web Development II”! (j9t)20829
books, html, css, engineering-management, maintainability, quality
100, 150, or 200? Debunking the Alt Text Character Limit20828
alt-text, accessibility, images, link-lists
A (Kind of) Farewell to the Web (joh)20827
web-platform, frameworks, ai, career
Explaining the Accessible Benefits of Using Semantic HTML Elements (geo/css)20826
html, semantics, accessibility
Six Key Components of UX Strategy (sma)20825
user-experience, strategies
Brutalism in the AI Era: Why Ugly Might Be the Only Honest Aesthetic Left (web)20824
design, aesthetics, brutalism
You Are Going to Get Priced Out of the Best AI Coding Tools (dpa)20823
ai, tooling, economics
Why Separate Guest and Logged in States Create Accessibility Barriers20822
accessibility
Introducing the OWASP Top 10:2025 (she+/owa)20821
introductions, owasp, security, vulnerabilities
Why 44% of Your Audience Might Not Understand You: An Interview With Jamila Savoy20820
interviews, content, writing, accessibility
The Web Animation Performance Tier List (cit)20819
animations, performance, javascript, css, apis
The Weird Parts of “position: sticky;” (ada/fro)20818
css, positioning
No Close Quote? (css)20817
css
How to Throttle Specific Requests in Chrome DevTools (mat/deb)20816
how-tos, dev-tools, browsers, chrome, throttling
Using Composability Over Inheritance to Scale Design Systems (ase/zer)20815
design-systems, components, inheritance, scalability
Real Performance Benchmarks of PHP 8.5 vs. PHP 8.3 and Node.js20814
performance, php, nodejs, comparisons
Why Big Tech Won’t Hire Flutter Developers (and Why You Should Care) (ala)20813
career, flutter, economics
Top 10 Essential Productivity Software for 202520812
tooling, productivity, collaboration, communication
Some Software Bloat Is OK20811
quality, technical-debt, performance
How I Use AI to Build Frontend Apps: My Candid, Messy Process (bla)20810
ai, processes, debugging, claude
The Inner Workings of JavaScript Source Maps (man/pol)20809
javascript, typescript, source-maps
Learn React Server Components (jad)20808
videos, tutorials, react, components
WebKit Features for Safari 26.1 (web)20807
release-notes, webkit, safari, browsers
What’s New in ViteLand: October 2025 Recap (man)20806
release-notes, vite, vitest, rolldown, oxc
Making a Design System That Gets Adopted (cle)20805
design-systems, case-studies
What Is Detached State in Git and How Do You Recover From It?20804
git, command-line
Dark Mode Is the New Comic Sans (and You Know It) (web)20803
dark-mode, design, accessibility
You Need to Become a Full Stack Person (loc)20802
ai, career
The Fundamentals Problem (chr)20801
fundamentals, design, prioritization
Why Most Developers Stay “Mid” Forever20800
career
“pathLength” Makes Makes SVG Path Animations Easier to Manage (ste)20799
svg, images, animations
Why We Migrated From Python to Node.js20798
migrating, python, nodejs
Grayscale Testing: The Missing Step in Color Accessibility (pop)20797
accessibility, testing, colors
The “Most Hated” CSS Feature: “tan()” (mon/css)20796
css, functions, math
Running Node.js in a Hugging Face Space (tom)20795
nodejs, hugging-face
I’ve Reviewed 500 Java Projects—Everyone Makes This Same Dumb Mistake20794
java, mistakes, strings
Why I Don’t Test Different Designs at the Same Time (ada)20793
design, testing
TL;DR: How Your Advantage Becomes Your Achilles Heel (ste)20792
product-management, ai
Top 100 Domains on Frontend Dogma (fro)20791
frontend-dogma
Reduce LLM Costs: Token Optimization Strategies (ros)20790
ai, token-optimization, economics
Global Digital Accessibility Salary Survey (web)20789
surveys, accessibility, career
AI Broke Interviews20788
ai, interviewing, hiring
It’s Almost 2026: Why Are We Still Arguing About CSS vs. Tailwind20787
tailwind, css, comparisons
12 Essential Java Best Practices Every Developer Should Follow20786
programming, java, best-practices, principles
Context Engineering for Non-Engineers (cwo)20785
ai, prompting, claude
Node.js 24 Becomes LTS: What You Need to Know (nod)20784
nodejs, nsolid
Your URL Is Your State (ahm)20783
urls, state-management
AI and Alt Text (ted+/web)20782
videos, ai, alt-text, images, accessibility
Evergreen Web Design Is a Lie (but Maybe That’s Okay) (web)20781
design, creativity
The Hidden Cost of Projects: Why Latency Kills Value20780
project-management, processes
Architectural Debt Is Not Just Technical Debt (may)20779
architecture, technical-debt
Just Use a Button (cfe)20778
html, buttons, semantics
Testing Methods: Keyboard (No Exception) (dec)20777
accessibility, testing, keyboard-navigation
Use Cases for Field Sizing (sha)20776
forms, css, examples
New to the Web Platform in October20775
release-notes, web-platform, browsers, firefox, chrome
After the AWS Outage20774
aws, cloud-computing
Comparing Interviews at 8 Large Tech Companies (ger)20773
interviewing, google, amazon, atlassian, comparisons
Self-Hosting Versus Lots of Small IndieWeb Providers20772
self-hosting, indieweb
HTML Minifier: A 12-Year Journey Building and Maintaining an Open Source Tool20771
html, minification, tooling, windows, asp-net, retrospectives
The Real Problem With AI Coding20770
ai
Developers Shouldn’t Learn Design—Designers Shouldn’t Code (phi)20769
design, programming, processes, collaboration, project-management
How to Use CSS “line-clamp” to Trim Lines of Text (dxn/log)20768
how-tos, css, typography
Removing XSLT for a More Secure Browser (dro)20767
chromium, chrome, browsers, xsl, web-platform, security
AI Frontend Generator Comparison: Claude Code vs. v0 vs. Cursor vs. Replit (hcr)20766
ai, code-editors, claude, vercel, cursor, tooling, comparisons
Blogging Gets Serious in 2001 With Warblogs and Movable Type (ric)20765
web, history, blogging, examples, movable-type
Amazon’s Return to Office Mandates Backfire (jpr)20764
amazon, aws, culture, economics
Getting Creative With Small Screens (mal/css)20763
design, responsive-design, mobile, css
The Coming War of AI Browsers: Why the Web Will Never Be the Same Again (web)20762
ai, browsers, open-web, personalization
Flutter’s Silent UI Killers20761
flutter
Arnas Donauskas on AI-Powered Troubleshooting for Websites (nat)20760
podcasts, interviews, ai, debugging, tooling
Sometimes the Best Accessibility Fix Is a Usability Fix20759
accessibility, usability
Get Started With Manual Testing (pop)20758
introductions, accessibility, testing
Node.js v22 to v24 (aug+/nod)20757
nodejs, migrating
I Built the Same App 10 Times: Evaluating Frameworks for Mobile Performance (che)20756
frameworks, mobile, performance, comparisons, nextjs, tanstack, nuxt, angular, marko, solidstart, solidjs, sveltekit, qwik, astro, htmx
Will npm’s New Security Steps Stop Attacks? (rev)20755
security, npm, maintenance, foss
HTTPS by Default (jde+)20754
http, security, chrome, browsers
ChatGPT Sez Build With Semantics First (ste)20753
chatgpt, chatgpt-atlas, ai, browsers, html, semantics, accessibility
Octoverse: A New Developer Joins GitHub Every Second as AI Leads TypeScript to #120752
github, metrics, productivity, ai, foss, security, programming
Import JavaScript Like It’s 2026 (sto)20751
javascript, performance
Mastering “URLPattern” for Cross-Platform Routing (jsd)20750
nodejs, routing
Start Implementing View Transitions on Your Websites Today (cyd/pic)20749
css, view-transitions, javascript, apis
Perfectly Pointed Tooltips: A Foundation (css/fro)20748
tooltips, css, anchor-positioning
Agentic AI and Security (ksi/mfo)20747
ai, architecture, security
Springs and Bounces in Native CSS (jos)20746
css, animations, transitions, effects, functions
Parenthetical Asidenotes (mey)20745
html, css
Who Rules AI Search? What 3 Months of AI Visibility Data Tells Us (sem)20744
search, ai, domains, metrics
Google Kills Privacy Sandbox (pro)20743
google, privacy, apis
Inlining Critical CSS: Does It Make Your Website Faster? (mat/deb)20742
css, critical-path, performance, lazy-loading
16 Charts That Explain the AI Boom (bin)20741
ai, metrics, economics, openai, anthropic, facebook+meta, oracle, google, microsoft, aws
What I Learned Porting Mastro From Deno to Node.js (mas)20740
lessons, migrating, deno, nodejs
Why Do We Need Dithering?20739
images, dithering
Your Accessibility Score Is Lying to You20738
accessibility, metrics, testing
The State of Django 2025 (wsv/jet)20737
surveys, metrics, django
A11y 101: 2.4.5 Multiple Ways (nat)20736
introductions, accessibility, wcag
JavaScript for Everyone: Iterators (wil/sma)20735
javascript
Express.js 6 and Beyond: Modernizing the Most Popular Node.js Framework (nod)20734
nodejs, express, frameworks, modernization
The JavaScript Feature You’ve Probably Never Used Allows Running Untrusted JavaScript Safely20733
javascript
Alt Text or Image Description?20732
accessibility, images, alt-text, comparisons, terminology
AI for War: Big Tech Empowering Israel’s Crimes and Occupation (mar)20731
ai, legal, google, aws, microsoft, palantir
“Good Engineering Management” Is a Fad (let)20730
engineering-management, prioritization
Don’t Forget These Tags to Make HTML Work Like You Expect (jim)20729
html
Crafting Engineering Strategy (let)20728
books, engineering-management, strategies
Testing Methods: No Keyboard Trap (dec)20727
accessibility, testing, wcag, keyboard-navigation
The Origin Story of JavaScript (ann/cas)20726
videos, history, web, javascript, ecmascript, browsers, browser-wars, browser-engines, standards
What’s New in Next.js 16 (tre)20725
nextjs
The Sky Is Falling, the Web Is Dead (ern/ted)20724
web, history
Mistakes I See Engineers Making in Their Code Reviews (sea)20723
code-reviews, processes, communication, mistakes
How to Write Clear and Effective Bug Reports That Everyone Loves20722
how-tos, bugs, documentation
The Edge Cases That Break Hearts (and Products) (lau/nng)20721
design, usability, accessibility, user-experience
The Curse of the Custom Cursor (mal)20720
cursors, design, accessibility
How Designers Become Builders and the Future of Tooling20719
videos, design, github
Directives and the Platform Boundary (tan/tan)20718
javascript, frameworks
High-Performance Syntax Highlighting With [the] CSS Highlights API20717
css, apis, syntax-highlighting
You Already Have a Git Server20716
git, servers, command-line
Code Like a Surgeon (geo)20715
ai
The Layered Aesthetic: Depth, Complexity, and Chaos Done Right (web)20714
design
CSS Animations That Leverage the Parent–Child Relationship (pre/css)20713
css, animations
What’s an Interactive Element? (mat)20712
html, focus, concepts
Introducing TanStack Start Middleware (ada/fro)20711
introductions, tanstack
Scrum Mistakes: What Teams Get Wrong and How to Fix It20710
scrum, agile, processes, releasing, mistakes
“Their History Is Just Erased”: Google Drops a Key Program for Boosting Women in Tech20709
google, community
Atlas Ableism (ste)20708
chatgpt-atlas, browsers, accessibility, compliance
Your Tokens Have Become Infrastructure (mur)20707
design-tokens, design-systems
How to Create a Strong Design System and Survive: Case Study20706
how-tos, design-systems, case-studies, lessons
Container Queries and Units in Action (mia)20705
css, container-queries, units
Preparing for Verso and Beyond: Future-Proofing Your Frontend for New Browser Engines (ele/des)20704
guest-posts, verso, servo, browsers, browser-engines
Retrofitting a Design System Into an Existing Product20703
design-systems, consistency
A Brief History of Domains (pet)20702
web, history, domains, dns
Is It Time to Regulate React? (dbu)20701
react
NaN, the Not-a-Number Number That Isn’t NaN (wil/pic)20700
javascript
Does Your Site Need a /ai Page?20699
ai
Yes, Let’s Teach LLMs Accessibility, but Also Provide the Companies Using Them With Better Strategies (hdv)20698
ai, accessibility, advocacy
Meetings and Interruptions Are Still the Biggest Obstacles for Developers, Even With AI20697
productivity, collaboration
React vs. Backbone in 202520696
react, backbone, comparisons, frameworks
React and Remix Choose Different Futures20695
react, remix, simplicity, complexity, comparisons
Solved by Modern CSS: Section Layout (sha)20694
css, layout, grids, typography, liquid-design
CSS Layout: Flexbox, Grid, Media Queries, and Container Queries (rau)20693
css, layout, flexbox, grids, media-queries, container-queries, introductions
Error Handling—UX Design Patterns20692
user-experience, design, errors, forms
An Introduction to JavaScript Expressions (wil/css)20691
introductions, javascript
OpenAI, ARIA, and SEO: Making the Web Worse (aar)20690
chatgpt-atlas, openai, browsers, accessibility, aria, seo
The Charm of JavaScript: Boom Mics and Clown Shoes (wil+/iga)20689
podcasts, interviews, javascript
Build Your Own Database (nan)20688
guides, databases
The Hidden Costs of Bad Client Communication in Design Projects (and How to Fix Them)20687
business-relations, communication, collaboration, design
4 Unconventional Ways to Cast in TypeScript (pol)20686
typescript
Importing vs. Fetching JSON (jaf)20685
json, javascript, data-fetching, comparisons
Challenging the Idea of “Optional HTML” (mar)20684
guest-posts, html, minimalism
Solved by CSS Scroll State Queries: Hide a Header When Scrolling Down, Show It Again When Scrolling Up (bra)20683
css, scrolling