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#
CSS-in-JS: The Great Betrayal of Frontend Sanity20728
css-in-js, css, javascript, performance, developer-experience
How Microfrontends Work: 3 Integration Strategies20727
micro-frontends, strategies, routing, iframes, javascript, ai
EAA Deadlines, Why You Probably Can’t Wait Another 5 Years20726
accessibility, eaa, legal, compliance
Category Theory for JavaScript/TypeScript Developers (ibr)20725
javascript, typescript, programming, craft
Who Wins When We Filter the Open Web Through an Opaque System? (hdv)20724
open-web
Web Application Architecture: The Enterprise Framework Powering Modern Digital Experiences (elu)20723
architecture, web-apps
Testing Methods: Focus Not Obscured (Minimum) (dec)20722
accessibility, testing, wcag, focus, keyboard-navigation
Understanding ECDSA [Elliptic Curve Digital Signature Algorithm]20721
cryptography, algorithms, math
Eleventy: How to Set Up Effective HTML Minification (in 24 Seconds) (j9t)20720
how-tos, eleventy, html, html-minifier, minification, optimization
One CSS Trick to Eliminate Scrollbar Layout Shifts (ami)20719
css, scrolling, tips-and-tricks
How to Create an Adaptive SVG Favicon Using the “prefers-color-scheme” Media Query (zor/css)20718
videos, how-tos, favicons, svg, css, images
The Idiot Sandwich—on Embedding Alt Text (ede)20717
images, alt-text, accessibility
5 Reasons Why WCAG AA Compliance Does Not Mean Your Website Is Accessible (cra)20716
accessibility, wcag, compliance, colors, readability, performance, content, multimedia, quality
AI for Good Accessibility (ala)20715
slides, ai, accessibility
The Accessibility Problem With Authentication Methods Like CAPTCHA (sma)20714
accessibility, captcha
Testing Methods: Section Headings (dec)20713
accessibility, testing, wcag, headings
Best of the Pod: Would You Shut Down Your Most Successful Product? the Arc to Dia Story20712
videos, the-browser-company, arc, dia, browsers, history, product-management
New to the Web Platform in November (rac)20711
release-notes, web-platform, browsers, firefox, safari
Ripple Over React? Evaluating the Newest JS Framework (log)20710
ripple, react, frameworks, comparisons
Saumya Majumder on How Cloudflare Outages Impact the Web and WordPress Performance Solutions (nat)20709
podcasts, interviews, cloudflare, wordpress, performance
Taking Down Next.js Servers for 0.0001 Cents a Pop20708
servers, nextjs, vulnerabilities, security
Testing Methods: Link Purpose (Link Only) (dec)20707
accessibility, testing, wcag, links, microcontent, link-lists
Accessibility and Usability: Inline Field Validation vs. Constantly Active Submit Button20706
forms, buttons, validation, accessibility, usability, comparisons
The End of Dashboards and Design Systems20705
design, design-systems
Critique20704
design, craft, collaboration, processes
What an Accessibility Conference Taught Me About Designing for All20703
design, accessibility
How to Add and Remove Items From a Native CSS Carousel (…With CSS) (dxn/fro)20702
how-tos, css, carousels, scrolling
Why Use React? (ada)20701
react, frameworks
What Are Invokers? Interactivity Without JavaScript (tol/syn)20700
videos, javascript, html, pop-overs
Migrating From GitHub to Codeberg (and/zig)20699
migrating, github, codeberg
Updating CSS Border Radius When a Container Is Overflowing (rik)20698
css, borders, overflow, scrolling
A New Navigation Paradigm20697
ai, navigation, design
Applying AI Where It Matters20696
studies, research, ai
Becoming Unblockable (sea)20695
career, prioritization, tooling, collaboration
Thoughts on Kagi’s Orion Browser vs. AI Browsers (dra)20694
orion, kagi, browsers, ai
Orion 1.0—Browse Beyond (kag)20693
browsers, orion, ai
“<dialog>” and Popover: Baseline Layered UI Patterns20692
modals, pop-overs, css
WebGPU Is Now Supported in Major Browsers20691
webgpu, browsers, support, web-platform
What Actually Makes You Senior (ter)20690
career
Animation and Carousels (web)20689
accessibility, animations, carousels, css, reduced-motion
Design Tokens Aren’t Enough—Architecture Decisions Need a Place in Your Design System (sam)20688
design-systems, design-tokens, architecture, documentation
Direction-Aware Arrow Shape Using Corner-Shape (css)20687
css, shapes
Testing Methods: Location (dec)20686
accessibility, testing, wcag, navigation
The Shai-Hulud 2.0 npm Worm: Analysis, and What You Need to Know20685
npm, security, dependencies
A Minimal CSS Starter (j9t)20684
css, templates, minimalism
Tech Predictions for 2026 and Beyond20683
outlooks, web
Design System Culture: What It Is and Why It Matters (ari/sma)20682
design-systems, culture
CSS Backgrounds Module Level 4 (fan+/w3c)20681
standards, css, backgrounds
93% Faster Next.js in (Your) Kubernetes (mco/pla)20680
nextjs, nodejs, performance, kubernetes
Web Browser Status Bars Are Nuts (lap)20679
browsers, comparisons
Brand New Layouts With CSS Subgrid (jos)20678
layout, css, grids, examples
Anatomy of AI Input (ibe)20677
ai, design
GitLab Discovers Widespread npm Supply Chain Attack20676
npm, dependencies, security, gitlab, aws, gcp, azure
The Future of AWS CodeCommit20675
aws, tooling, git, outlooks
Replacing “glob-all” With “fs.promises.glob” in Node.js (cto)20674
refactoring, nodejs
How to Easily Create Modern, CSS-First Forms in WordPress (zor/css)20673
how-tos, videos, css, forms, wordpress
“light-dark()” Isn’t Always the Same as “prefers-color-scheme” (ste)20672
css, functions, dark-mode, colors
UX Is Your Moat (and You’re Ignoring It) (cwo)20671
user-experience, economics
Managing Side Effects: A JavaScript Effect System in 30 Lines or Less (ayc)20670
javascript
Introduction to CSS “if” Statements and Conditional Logic (mar)20669
introductions, css, functions, conditionals
The State of Tanstack, Two Years of Full-Time OSS (tan/tan)20668
tanstack, foss
The Performance Inequality Gap, 2026 (sli)20667
performance, javascript, metrics
Web Monetization Is Still Inching Along, but Still Too Difficult (chr/fro)20666
monetization
On Inheriting and Sharing Property Values (dxn/css)20665
css, cascade, techniques
Why Does AI Devour So Much Water? (ger)20664
ai, sustainability
Testing Methods: Focus Visible (dec)20663
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
You’re Doing JavaScript Testing Wrong (cfe)20662
javascript, testing
Shuffling a CSS Grid Using Custom Properties (cod)20661
css, grids, custom-properties
WCAG 2.1 Addition—Success Criterion 1.4.10: Reflow (Level AA)20660
accessibility, wcag, standards, reflow
Testing Methods: Headings and Labels (dec)20659
accessibility, wcag, testing, headings, labels, forms
If You Think Your Commit Messages Are Bad, Just Wait…20658
commit-messages
You’re Not Building Netflix: Stop Coding Like You Are20657
programming, architecture, prioritization
AI Will Soon Deliver Code That Will Pass Automatic Testing by Default (cer)20656
ai, testing, accessibility
Testing Methods: Multiple Ways (dec)20655
accessibility, wcag, testing, navigation, sitemaps, link-lists
Unifying [Wikipedia’s] Mobile and Desktop Domains (kri/wik)20654
wikipedia, refactoring, mobile, desktop, performance, seo, user-experience, infrastructure, case-studies, link-lists
The PHP 8.5 Pipe Operator (“|>”): Useful, but Watch for These Gotchas20653
php, operators
How Designers Gaslight Users With Microcopy (web)20652
design, microcontent, dark-patterns
WCAG 2.1 Addition—Success Criterion 1.3.5: Identify Input Purpose (Level AA)20651
accessibility, wcag, standards, forms
Keyframes Tokens: Standardizing Animation Across Projects (ami/sma)20650
css, animations, consistency
Testing Methods: Link Purpose (in Context) (dec)20649
accessibility, wcag, testing, links, microcontent
WCAG 3 Update (kno)20648
videos, accessibility, wcag, standards
Critical Thinking During the Age of AI (add)20647
ai, processes, career
The Value of Selecting Selects by Value (aar)20646
accessibility, wcag, forms
How to Create 3D Images in CSS With the Layered Pattern (sun/fro)20645
how-tos, images, 3d, css, transforms
5 Engineering Skills to Prioritize in the AI-Driven Era20644
ai, writing, architecture, debugging, communication, career
Testing Methods: Focus Order (dec)20643
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
WCAG 2.1 Addition—Success Criterion 1.3.4: Orientation (Level AA)20642
accessibility, wcag, standards, mobile
Cross-Browser Anchor Positioning (mey+/odd)20641
videos, interviews, css, anchor-positioning
The Rosetta Stone of Design Engineering (yan)20640
design, processes, collaboration
Responsive Letter Spacing (tyl/clo)20639
responsive-design, typography, css
Grid: How “grid-template-areas” Offer a Visual Solution for Your Code (sar/web)20638
css, grids, layout
Should We Even Have “:closed”? (sun/css)20637
css, selectors, disclosure-widgets
The Engineer You Never Met: Why Interview Processes Systematically Reject Qualified Engineers20636
hiring, economics, case-studies
Automated Accessibility Testing for React—Tools and Best Practices You Can Use20635
accessibility, testing, react, tooling, best-practices
These Queries Cover 80% of SQL20634
sql, databases
Testing Methods: Page Titled (dec)20633
accessibility, wcag, testing, html
Good Enough Is a Strategy (tre)20632
strategies, technical-debt, quality
State of React 2025 (sac/dev)20631
surveys, react
A Guided Tour of Copenhagen (fre/ske)20630
guides, sketch
Announcing Angular v21 (mar/ang)20629
release-notes, angular
Why Web Design Must Finally Break Free From Its Graphic Design Roots (web)20628
design, print, ai, career
Using esbuild in Eleventy (db)20627
eleventy, esbuild
Anchoring to a Containing Block (kiz)20626
css, anchor-positioning
When the Dark Pattern Is a Glaring Green Checkmark20625
design, user-experience, dark-patterns
Cloudflare Outage on November 18, 2025 (eas)20624
cloudflare
Web Development: On the Size and Output of and the Growth Opportunities Within the Field (j9t)20623
guest-posts, training, career, frontend-dogma
To Be a Leader of Systems (haz)20622
leadership
The Cloudflare Outage Was a Good Thing20621
cloudflare, resilience, infrastructure
Testing Methods: Bypass Blocks (dec)20620
accessibility, wcag, testing, keyboard-navigation
Experiment: Making TypeScript Immutable-by-Default (eva)20619
experiments, typescript
WCAG 2.1 Addition—Success Criterion 2.5.4: Motion Actuation (Level A)20618
accessibility, wcag, standards
More CSS “random()” Learning Through Experiments (chr/fro)20617
css, functions, randomness, experiments
Do Not Put Your Site Behind Cloudflare if You Don’t Need To20616
cloudflare
Firefox Is Adding Support for a Feature That Users Requested Since 200420615
firefox, browsers, keyboard-shortcuts
How to Successfully Migrate Your App With an AI Agent (bla/ope)20614
how-tos, migrating, refactoring, ai
WCAG 2.1 Addition—Success Criterion 2.5.3: Label in Name (Level A)20613
accessibility, wcag, standards, labels, forms
Ethical Defaults: Why Designers Must Stop Hiding Behind Settings (web)20612
design, ethics
10 Git Tricks That Made Me a Way Better Developer20611
git, command-line, tips-and-tricks
Tooltip Components Should Not Exist (tkd)20610
tooltips, components
A11y 101: 2.4.7 Focus Visible (nat)20609
introductions, accessibility, wcag, focus, keyboard-navigation
The “Most Hated” CSS Feature: “asin()”, “acos()”, “atan()”, and “atan2()” (mon/css)20608
css, functions, math
Testing Methods: Animation From Interactions (dec)20607
accessibility, wcag, testing, animations
How to Prepare for the Future of Programming (jet)20606
how-tos, programming, learning
Automated npm Secret Rotation in GitHub Actions (mhe)20605
npm, security, automation, github-actions
Top 10 Branding Trends to Watch Out for in 2026 (des)20604
branding, design, trends, outlooks
Testing Methods: Three Flashes or Below Threshold (dec)20603
accessibility, wcag, testing
How to “Officially” Deprecate Methods With Node.js Utilities (ste)20602
how-tos, deprecation, nodejs, developer-experience
Wrangling My Email With Claude Code (jlo)20601
email, claude, ai, efficiency
Testing Methods: Timeouts (dec)20600
accessibility, wcag, testing, time
Accessible Names and Labels: Understanding What Works and What Doesn’t (tpg)20599
accessibility, labels, naming, forms
“display: masonry” Is Officially Dead (kev)20598
videos, css, masonry, layout
It Is OK to Say “CSS Variables” Instead of (or Alongside) “Custom Properties” (kiz)20597
css, variables, custom-properties, terminology
Good Visual Design, Explained (nng)20596
design, principles, quality
A Complete Guide to the HTML Number Input (oll)20595
guides, html, attributes, forms
“Technical Debt Will Bite Us in the Ass”: How to Make Non-Technical Stakeholders Actually Care20594
how-tos, technical-debt, communication, prioritization
Monotype Font Licencing Shake-Down (ame)20593
fonts, licensing
“Move Fast and Don’t Break Things”—What Four Startups Taught Me About Execution20592
design, career, product-management, engineering-management
What’s New in PHP 8.5 (bre)20591
php
Animating CSS “width” or “height” No Longer Forces a Main Thread Animation (in Chrome, Under the Right Conditions) (bra)20590
css, animations, chrome, browsers
Is Server-Side Rendering React’s Holy Grail?20589
react, server-side-rendering
A Suggestion for Your Community Terms and Policies (j9t)20588
community, collaboration, politics
What’s New in the Design Tokens Spec: From Static to Living Design Data (res/zer)20587
design-tokens, design-systems
Browserslist and Baseline (chr/fro)20586
browsers, support, web-platform, browserslist
Older Tech in the Browser Stack (sma)20585
xpath, css, techniques
Writing Is Probably the Worst Use Case of AI20584
ai, writing
Testing Methods: Re-Authenticating (dec)20583
accessibility, wcag, testing, authentication
What’s Coming in TypeScript 6/7 (dan+/typ)20582
podcasts, interviews, typescript, ecmascript, outlooks
From Tokens to Touchpoints: Powering a Successful Rebrand With Your Design System (zer)20581
design-systems, design-tokens, collaboration
The Last Couple Years in V8’s Garbage Collector (win)20580
v8, javascript-engines, garbage-collection, memory, retrospectives, javascript
The Hard Truth About Learning to Code (That No One Tells You)20579
learning, career
Do Newer AI-Native IDEs Outperform Other AI Coding Assistants? (lau)20578
ai, code-editors, efficiency, metrics, comparisons
What Developers Really Mean by “Bad Code” (jet)20577
maintainability, scalability, consistency, security, quality
How We Catch UI Bugs Early With Visual Regression Testing20576
testing, regressions, playwright, javascript
Range Syntax for Style Queries (una)20575
css, style-queries
CSS “:interest-invoker” and “:interest-target” Pseudo-Classes (tre)20574
css, selectors, forms
Testing Methods: Interruptions (dec)20573
accessibility, wcag, testing
Netflix’s Engineering Culture (ger)20572
podcasts, interviews, netflix, culture, ai
Firefox 147 Release Notes for Developers (mdn)20571
release-notes, firefox, browsers
Guiding the Future of Ethical Design20570
design, ethics
Why Headings Are Important in HTML: Structure, Accessibility, and SEO20569
html, headings, accessibility, seo
Programming Principles for Self Taught Front-End Developers (kil/pic)20568
programming, principles
Effectively Monitoring Web Performance (sma)20567
performance, monitoring, tooling
“::details-content”: Style Expandable Content Without Wrapper Divs (tre)20566
disclosure-widgets, css, html
Using “chrome-devtools-mcp” With Polypane (pol)20565
polypane, browsers, dev-tools, mcp, chrome, ai
Rust vs. Python: Finding the Right Balance Between Speed and Simplicity (jet)20564
rust, python, performance, simplicity, programming, comparisons
Error Chaining in JavaScript: Cleaner Debugging With “Error.cause”20563
javascript, errors, debugging
Perfectly Pointed Tooltips: To the Corners (css/fro)20562
css, tooltips
10 Smart Performance Hacks for Faster Python Code (did/jet)20561
python, performance, techniques
My CSS Selector Strategy (mal)20560
css, selectors, principles
20 Best CSS Preprocessor Tools and Comparison for 2025: Complete Guide to Active Tools20559
guides, css, tooling, preprocessors, comparisons, link-lists
Crafting Generative CSS Worlds (cod)20558
css, transforms
Testing Methods: Pause, Stop, Hide (dec)20557
accessibility, wcag, testing, multimedia, animations, link-lists
Link vs. Button: Choosing the Right Element for the Right Job (tpg)20556
html, links, buttons, accessibility, wcag, comparisons
“aria-labels” and Privacy: A Word of Caution (hom)20555
accessibility, aria, privacy
“AI” Browsers: The Price of Admission Is Too High (bru/viv)20554
ai, browsers
Headings: Semantics, Fluidity, and Styling—Oh My! (geo/css)20553
headings, html, css
Six Things I Bet You Didn’t Know You Could Do With Chrome’s DevTools20552
chrome, dev-tools, browsers
3 User-Friendly Technical Ways to Respond to Genocidistan (j9t)20551
politics, traffic, censorship, community
How to Rate-Limit Requests With nginx20550
how-tos, nginx, servers, rate-limiting
Building a Multi-Stage Timetable With Modern CSS Using Grid, Subgrid, “round()”, and “mod()” (nil)20549
css, grids, layout, functions
Testing Methods: Timing Adjustable (dec)20548
accessibility, wcag, testing, time, link-lists
Why CSS Is So Hard for Generative AIs to Understand?20547
css, ai
Frontend News #17: Why Pseudo-Elements Don’t Work With “:is()”, the Advantages of OKLCH, and More (zor/css)20546
videos, css, selectors, oklch
Testing Methods: Character Key Shortcuts (dec)20545
accessibility, wcag, testing, keyboard-shortcuts
When Everyone’s a Developer, How Do We Promote the Web Platform Over React? (ric)20544
web-platform, react, ai, link-lists
Material 3 Expressive: Building on the Failures of Flat Design20543
material-design, flat-design, design, link-lists
Slots in Design Systems (nat)20542
design-systems, figma
A Practical Guide to Flutter Accessibility: The Basics (kor)20541
guides, fundamentals, flutter, accessibility
Fix “width: 100%” Overflow Easily (zor/css)20540
videos, css, overflow
Sustainable Accessibility in Complex Organisations: Strategic Foundations (ihe/tet)20539
accessibility, leadership, dei, processes
When to Use CSS “text-wrap: balance” vs. “text-wrap: pretty” (dxn/log)20538
css, typography
Tailwind CSS Won the War… but We’re the Losers20537
tailwind, css, html, web-platform
Sustainable Accessibility in Complex Organisations: Organisational Realities (ihe/tet)20536
accessibility
Staggered Animation With CSS “sibling-*” Functions (pre/fro)20535
animations, css, functions
Smashing Animations: Magnificent SVGs With “<use>” and CSS Custom Properties (mal/sma)20534
animations, transforms, svg, css, custom-properties
Monorepo vs. Multi-Repo vs. Git Submodule vs. Git Subtree: A Complete Guide for Developers20533
guides, architecture, monorepos, git, version-control, comparisons
JavaScript Just Leveled Up: ES2025—You’ll Fall in Love With (jsd)20532
javascript, ecmascript, standards
It Ain’t Easy to Move a Side Project Off Big Tech (thi)20531
migrating, vercel, sveltekit
Is Figma in Its Accessibility Era?20530
figma, accessibility
10 Tiny UI Fixes That Make a Big Difference20529
design, forms, spacing, alignment, consistency, hierarchy, usability, best-practices
TypeScript’s Rise in the AI Era: Insights From Lead Architect, Anders Hejlsberg (aar)20528
typescript, ai
Combining Scroll-Driven Animations With “@starting-style” (bra)20527
css, scrolling, animations
Advanced Beginner’s Guide to ClojureScript (rom)20526
guides, javascript
Now Available: “On Web Development II”! (j9t)20525
books, html, css, engineering-management, maintainability, quality
100, 150, or 200? Debunking the Alt Text Character Limit20524
alt-text, accessibility, images, link-lists
A (Kind of) Farewell to the Web (joh)20523
web-platform, frameworks, ai, career
Explaining the Accessible Benefits of Using Semantic HTML Elements (geo/css)20522
html, semantics, accessibility
Brutalism in the AI Era: Why Ugly Might Be the Only Honest Aesthetic Left (web)20521
design, aesthetics, brutalism
You Are Going to Get Priced Out of the Best AI Coding Tools (dpa)20520
ai, tooling, economics
Why Separate Guest and Logged in States Create Accessibility Barriers20519
accessibility
Introducing the OWASP Top 10:2025 (she+/owa)20518
introductions, owasp, security, vulnerabilities
Why 44% of Your Audience Might Not Understand You: An Interview With Jamila Savoy20517
interviews, content, writing, accessibility
Six Key Components of UX Strategy (vit/sma)20516
user-experience, strategies
The Web Animation Performance Tier List (cit)20515
animations, performance, javascript, css, apis
The Weird Parts of “position: sticky;” (ada/fro)20514
css, positioning
No Close Quote? (css)20513
css
How to Throttle Specific Requests in Chrome DevTools (mat/deb)20512
how-tos, dev-tools, browsers, chrome, throttling
Using Composability Over Inheritance to Scale Design Systems (ase/zer)20511
design-systems, components, inheritance, scalability
Real Performance Benchmarks of PHP 8.5 vs. PHP 8.3 and Node.js20510
performance, php, nodejs, comparisons
Why Big Tech Won’t Hire Flutter Developers (and Why You Should Care) (ala)20509
career, flutter, economics
Top 10 Essential Productivity Software for 202520508
tooling, productivity, collaboration, communication
Some Software Bloat Is OK20507
quality, technical-debt, performance
How I Use AI to Build Frontend Apps: My Candid, Messy Process (bla)20506
ai, processes, debugging, claude
The Inner Workings of JavaScript Source Maps (man/pol)20505
javascript, typescript, source-maps
Learn React Server Components (jad)20504
videos, tutorials, react, components
WebKit Features for Safari 26.1 (jen/web)20503
release-notes, webkit, safari, browsers
What’s New in ViteLand: October 2025 Recap (man)20502
release-notes, vite, vitest, rolldown, oxc
Making a Design System That Gets Adopted (cle)20501
design-systems, case-studies
What Is Detached State in Git and How Do You Recover From It?20500
git, command-line
Dark Mode Is the New Comic Sans (and You Know It) (web)20499
dark-mode, design, accessibility
You Need to Become a Full Stack Person (loc)20498
ai, career
The Fundamentals Problem (chr)20497
fundamentals, design, prioritization
Why Most Developers Stay “Mid” Forever20496
career
“pathLength” Makes Makes SVG Path Animations Easier to Manage (ste)20495
svg, images, animations
Why We Migrated From Python to Node.js20494
migrating, python, nodejs
Grayscale Testing: The Missing Step in Color Accessibility (pop)20493
accessibility, testing, colors
The “Most Hated” CSS Feature: “tan()” (mon/css)20492
css, functions, math
Running Node.js in a Hugging Face Space (tom)20491
nodejs, hugging-face
I’ve Reviewed 500 Java Projects—Everyone Makes This Same Dumb Mistake20490
java, mistakes, strings
Why I Don’t Test Different Designs at the Same Time (ada)20489
design, testing
TL;DR: How Your Advantage Becomes Your Achilles Heel (ste)20488
product-management, ai
Top 100 Domains on Frontend Dogma (fro)20487
frontend-dogma
Reduce LLM Costs: Token Optimization Strategies (ros)20486
ai, token-optimization, economics
Global Digital Accessibility Salary Survey (web)20485
surveys, accessibility, career
AI Broke Interviews20484
ai, interviewing, hiring
It’s Almost 2026: Why Are We Still Arguing About CSS vs. Tailwind20483
tailwind, css, comparisons
12 Essential Java Best Practices Every Developer Should Follow20482
programming, java, best-practices, principles
Context Engineering for Non-Engineers (cwo)20481
ai, prompting, claude
Node.js 24 Becomes LTS: What You Need to Know (nod)20480
nodejs, nsolid
Your URL Is Your State (ahm)20479
urls, state-management
AI and Alt Text (ted+/web)20478
videos, ai, alt-text, images, accessibility
Evergreen Web Design Is a Lie (but Maybe That’s Okay) (web)20477
design, creativity
The Hidden Cost of Projects: Why Latency Kills Value20476
project-management, processes
Architectural Debt Is Not Just Technical Debt (may)20475
architecture, technical-debt
Just Use a Button (cfe)20474
html, buttons, semantics
Testing Methods: Keyboard (No Exception) (dec)20473
accessibility, testing, keyboard-navigation
Use Cases for Field Sizing (sha)20472
forms, css, examples
New to the Web Platform in October (rac)20471
release-notes, web-platform, browsers, firefox, chrome
After the AWS Outage20470
aws, cloud-computing
Comparing Interviews at 8 Large Tech Companies (ger)20469
interviewing, google, amazon, atlassian, comparisons
Self-Hosting Versus Lots of Small IndieWeb Providers20468
self-hosting, indieweb
HTML Minifier: A 12-Year Journey Building and Maintaining an Open Source Tool20467
html, minification, tooling, windows, asp-net, retrospectives
The Real Problem With AI Coding20466
ai
Developers Shouldn’t Learn Design—Designers Shouldn’t Code (phi)20465
design, programming, processes, collaboration, project-management
How to Use CSS “line-clamp” to Trim Lines of Text (dxn/log)20464
how-tos, css, typography
Removing XSLT for a More Secure Browser (dro)20463
chromium, chrome, browsers, xsl, web-platform, security
AI Frontend Generator Comparison: Claude Code vs. v0 vs. Cursor vs. Replit (hcr)20462
ai, code-editors, claude, vercel, cursor, tooling, comparisons
Blogging Gets Serious in 2001 With Warblogs and Movable Type (ric)20461
web, history, blogging, examples, movable-type
Amazon’s Return to Office Mandates Backfire (jpr)20460
amazon, aws, culture, economics
Getting Creative With Small Screens (mal/css)20459
design, responsive-design, mobile, css
The Coming War of AI Browsers: Why the Web Will Never Be the Same Again (web)20458
ai, browsers, open-web, personalization
Flutter’s Silent UI Killers20457
flutter
Arnas Donauskas on AI-Powered Troubleshooting for Websites (nat)20456
podcasts, interviews, ai, debugging, tooling
Sometimes the Best Accessibility Fix Is a Usability Fix20455
accessibility, usability
Get Started With Manual Testing (pop)20454
introductions, accessibility, testing
Node.js v22 to v24 (aug+/nod)20453
nodejs, migrating
I Built the Same App 10 Times: Evaluating Frameworks for Mobile Performance (che)20452
frameworks, mobile, performance, comparisons, nextjs, tanstack, nuxt, angular, marko, solidstart, solidjs, sveltekit, qwik, astro, htmx
Will npm’s New Security Steps Stop Attacks? (rev)20451
security, npm, maintenance, foss
HTTPS by Default (jde+)20450
http, security, chrome, browsers
ChatGPT Sez Build With Semantics First (ste)20449
chatgpt, chatgpt-atlas, ai, browsers, html, semantics, accessibility
Octoverse: A New Developer Joins GitHub Every Second as AI Leads TypeScript to #120448
github, metrics, productivity, ai, foss, security, programming
Import JavaScript Like It’s 2026 (sto)20447
javascript, performance
Mastering “URLPattern” for Cross-Platform Routing (jsd)20446
nodejs, routing
Start Implementing View Transitions on Your Websites Today (cyd/pic)20445
css, view-transitions, javascript, apis
Perfectly Pointed Tooltips: A Foundation (css/fro)20444
tooltips, css, anchor-positioning
Agentic AI and Security (ksi/mfo)20443
ai, architecture, security
Springs and Bounces in Native CSS (jos)20442
css, animations, transitions, effects, functions
Parenthetical Asidenotes (mey)20441
html, css
Who Rules AI Search? What 3 Months of AI Visibility Data Tells Us (sem)20440
search, ai, domains, metrics
Google Kills Privacy Sandbox (pro)20439
google, privacy, apis
Inlining Critical CSS: Does It Make Your Website Faster? (mat/deb)20438
css, critical-path, performance, lazy-loading
16 Charts That Explain the AI Boom (bin)20437
ai, metrics, economics, openai, anthropic, facebook+meta, oracle, google, microsoft, aws
What I Learned Porting Mastro From Deno to Node.js (mas)20436
lessons, migrating, deno, nodejs
Why Do We Need Dithering?20435
images, dithering
Your Accessibility Score Is Lying to You20434
accessibility, metrics, testing
The State of Django 2025 (wsv/jet)20433
surveys, metrics, django
A11y 101: 2.4.5 Multiple Ways (nat)20432
introductions, accessibility, wcag
JavaScript for Everyone: Iterators (wil/sma)20431
javascript
Express.js 6 and Beyond: Modernizing the Most Popular Node.js Framework (nod)20430
nodejs, express, frameworks, modernization
The JavaScript Feature You’ve Probably Never Used Allows Running Untrusted JavaScript Safely20429
javascript
Alt Text or Image Description?20428
accessibility, images, alt-text, comparisons, terminology
AI for War: Big Tech Empowering Israel’s Crimes and Occupation (mar)20427
ai, legal, google, aws, microsoft, palantir
“Good Engineering Management” Is a Fad (let)20426
engineering-management, prioritization
Don’t Forget These Tags to Make HTML Work Like You Expect (jim)20425
html
Crafting Engineering Strategy (let)20424
books, engineering-management, strategies
Testing Methods: No Keyboard Trap (dec)20423
accessibility, testing, wcag, keyboard-navigation
The Origin Story of JavaScript (ann/cas)20422
videos, history, web, javascript, ecmascript, browsers, browser-wars, browser-engines, standards
What’s New in Next.js 16 (tre)20421
nextjs
The Sky Is Falling, the Web Is Dead (ern/ted)20420
web, history
Mistakes I See Engineers Making in Their Code Reviews (sea)20419
code-reviews, processes, communication, mistakes
How to Write Clear and Effective Bug Reports That Everyone Loves20418
how-tos, bugs, documentation
The Edge Cases That Break Hearts (and Products) (lau/nng)20417
design, usability, accessibility, user-experience
The Curse of the Custom Cursor (mal)20416
cursors, design, accessibility
How Designers Become Builders and the Future of Tooling20415
videos, design, github
Directives and the Platform Boundary (tan/tan)20414
javascript, frameworks
High-Performance Syntax Highlighting With [the] CSS Highlights API20413
css, apis, syntax-highlighting
You Already Have a Git Server20412
git, servers, command-line
Code Like a Surgeon (geo)20411
ai
The Layered Aesthetic: Depth, Complexity, and Chaos Done Right (web)20410
design
CSS Animations That Leverage the Parent–Child Relationship (pre/css)20409
css, animations
What’s an Interactive Element? (mat)20408
html, focus, concepts
Introducing TanStack Start Middleware (ada/fro)20407
introductions, tanstack
Scrum Mistakes: What Teams Get Wrong and How to Fix It20406
scrum, agile, processes, releasing, mistakes
Atlas Ableism (ste)20405
chatgpt-atlas, browsers, accessibility, compliance
Your Tokens Have Become Infrastructure (mur)20404
design-tokens, design-systems
How to Create a Strong Design System and Survive: Case Study20403
how-tos, design-systems, case-studies, lessons
Container Queries and Units in Action (mia)20402
css, container-queries, units
Preparing for Verso and Beyond: Future-Proofing Your Frontend for New Browser Engines (ele/des)20401
guest-posts, verso, servo, browsers, browser-engines
Retrofitting a Design System Into an Existing Product20400
design-systems, consistency
A Brief History of Domains (pet)20399
web, history, domains, dns
Is It Time to Regulate React? (dbu)20398
react
NaN, the Not-a-Number Number That Isn’t NaN (wil/pic)20397
javascript
Does Your Site Need a /ai Page?20396
ai
Yes, Let’s Teach LLMs Accessibility, but Also Provide the Companies Using Them With Better Strategies (hdv)20395
ai, accessibility, advocacy
Meetings and Interruptions Are Still the Biggest Obstacles for Developers, Even With AI20394
productivity, collaboration
React vs. Backbone in 202520393
react, backbone, comparisons, frameworks
“Their History Is Just Erased”: Google Drops a Key Program for Boosting Women in Tech (cnn)20392
google, community
React and Remix Choose Different Futures20391
react, remix, simplicity, complexity, comparisons
Solved by Modern CSS: Section Layout (sha)20390
css, layout, grids, typography, liquid-design
CSS Layout: Flexbox, Grid, Media Queries, and Container Queries (rau)20389
css, layout, flexbox, grids, media-queries, container-queries, introductions
Error Handling—UX Design Patterns20388
user-experience, design, errors, forms
An Introduction to JavaScript Expressions (wil/css)20387
introductions, javascript
OpenAI, ARIA, and SEO: Making the Web Worse (aar)20386
chatgpt-atlas, openai, browsers, accessibility, aria, seo
The Charm of JavaScript: Boom Mics and Clown Shoes (wil+/iga)20385
podcasts, interviews, javascript
Build Your Own Database (nan)20384
guides, databases
The Hidden Costs of Bad Client Communication in Design Projects (and How to Fix Them)20383
business-relations, communication, collaboration, design
4 Unconventional Ways to Cast in TypeScript (pol)20382
typescript
Importing vs. Fetching JSON (jaf)20381
json, javascript, data-fetching, comparisons
Challenging the Idea of “Optional HTML” (mar)20380
guest-posts, html, minimalism
Solved by CSS Scroll State Queries: Hide a Header When Scrolling Down, Show It Again When Scrolling Up (bra)20379
css, scrolling
Introducing ChatGPT Atlas20378
introductions, chatgpt-atlas, browsers
Introducing ChatGPT Atlas (sim)20377
introductions, chatgpt-atlas, browsers
Fixing Temporal Input Styling in Safari (cfe)20376
forms, time, safari, browsers, css
CSS “@starting-style” Debugging Is Available in Chrome DevTools (bra)20375
css, transitions, debugging, dev-tools, chrome, browsers
Designers Often Do Invisible Work That Matters—Here’s How to Show It20374
design, user-experience, communication
Chasing “Done”: Why Software Never Ends—and Why That Matters (emb)20373
programming, maintenance, economics, processes
W3C Web Content Accessibility Guidelines 2.2 Approved as ISO/IEC International Standard (w3c)20372
accessibility, wcag, standards, w3c
How AI Works and How Users Think About It: Study Guide (nng)20371
guides, ai, training, link-lists
Next.js 16 (fee+)20370
release-notes, nextjs
My Highlights From the New Deno Deploy (phi/den)20369
deno, deploying
Why Accessibility Breaks Between Design and Development (a11)20368
accessibility, design, processes, collaboration, testing
How Senior Engineers Can Use AI for Real Impact20367
ai, architecture, debugging, code-reviews, refactoring
One Year With Next.js App Router—Why We’re Moving On20366
nextjs, react, routing, components, tooling
The Two Button Problem (chr/fro)20365
buttons, usability, design
My Work Is Human (doo)20364
ai, design, career
OpenAI Launches AI Web Browser ChatGPT Atlas—Here Is Everything We Know (eur)20363
openai, browsers, chatgpt-atlas
How to Fix Any Bug (dan)20362
how-tos, ai, debugging, react
Links and Anchors: Ancient HTML and JS Magic in Your Browser (cod/wea)20361
html, css, javascript, links
Rethinking Async Loops in JavaScript20360
javascript, loops, asynchrony
“URLPattern” Is Now Baseline Newly Available20359
urls, apis, javascript, web-platform, browsers, support
Build a Reusable Flutter Design System20358
design-systems, flutter
What State ARIA In? (tpg)20357
aria, html, accessibility
Now Is the Best Time to Break Into Tech (tre)20356
career
AI Doom Predictions Are Overhyped—Why Programmers Aren’t Going Anywhere20355
videos, ai, programming, career
Google Announces End of Many of Its [Privacy] Sandbox Technologies20354
google, privacy
Goodbye GIL—Exploring Free Threaded Python 3.14 (ada)20353
python, multithreading
An Opinionated Guide to Using AI Right Now (emo)20352
guides, ai, anthropic, google, openai
Glassworm: First Self-Propagating Worm Using Invisible Code Hits OpenVSX Marketplace20351
security, code-editors, vs-code
The CSS Reset, Again (paw)20350
css, resets
Why “NaN !== NaN” in JavaScript (and the IEEE 754 Story Behind It)20349
javascript, history, standards
Refactoring a Form to a Signal Form (tim)20348
refactoring, forms, angular, signals
Orion Browser by Kagi: Privacy-Centred Performance20347
orion, browsers, kagi, privacy, performance
CSS Finally Gets Inline Conditional Logic With New “if()” Function20346
css, functions, conditionals
I Used AI Every Day for a Year: Here’s What It Cost Me (jas)20345
ai, writing, career
Headers, Headings, and Titles (tem)20344
html, headings, comparisons, terminology
AI Is Revolutionizing User Testing in 2025—and Honestly, It’s About Time (web)20343
ai, usability, user-experience, testing
The Majority AI View (ani)20342
ai, communication
Is It Even Worth Learning to Code? (tre)20341
programming, learning, ai
How to Write an Accessibility Statement in 2025, With Examples (chr)20340
how-tos, accessibility, documentation, compliance, legal, examples
AI in UX: Achieve More With Less (boa/sma)20339
user-experience, design, ai, processes
50 Reasons to Build a Website (chr/fro)20338
web
Zero-Configuration Support for NestJS20337
vercel, nestjs
Implicit Labels Aren’t (cfe)20336
html, forms, labels
How to Audit Web Accessibility With [the] WAVE Extension20335
how-tos, accessibility, auditing, browser-extensions, wave, webaim
Claude for Code: How to Use Claude to Streamline Product Design Process20334
how-tos, claude, ai, design, processes
Improving the Trustworthiness of JavaScript on the Web20333
javascript, web-apps, security
Same-Document View Transitions Have Become Baseline Newly Available (bra)20332
css, view-transitions, browsers, support, web-platform
10 Niche Developer Tools You Didn’t Know Existed20331
tooling, link-lists, command-line, debugging, testing, documentation
The Hidden Cost of URL Design (ahm)20330
urls, routing, seo, principles
Making Context-Aware Components: How CSS “inherit()” Could Simplify Design Systems (stu)20329
components, css, functions, custom-properties
You’re a Real JavaScript Developer Only If…20328
javascript, career
Node.js 2025: What’s New and What’s Next (ruy)20327
slides, nodejs, outlooks
Do Backlinks Still Matter in AI Search? Insights From 1,000 Domains (sem)20326
ai, search, backlinks, links, metrics
Thirsty AI Mega Projects Raise Alarm in Some of Europe’s Driest Regions (sam/cnb)20325
ai, sustainability
Node.js v25.0.0 (Current) (raf/nod)20324
release-notes, nodejs
Release Notes for Safari Technology Preview 230 (jon/web)20323
release-notes, safari, browsers
Obituary: Farewell to robots.txt (1994–2025) (hei)20322
robotstxt, bots, search, internet-archive, ai
What Is Ollama? Complete Guide to Local AI Models (October 2025)20321
guides, ai, tooling
Are US Software Developers Worth the Premium?20320
hiring, economics
Writing an Emulator in JavaScript? (nik/nor)20319
videos, javascript
Secure Coding in JavaScript20318
javascript, frameworks, security
State of Developer Ecosystem Report 2025 (jet)20317
surveys, metrics
For Your Convenience, This CSS Will Self-Destruct (sco)20316
css, javascript, hiding
A Look Into Customizable HTML “select” Elements20315
forms, html, css
What’s Up in ES2027? (por/nor)20314
videos, ecmascript, javascript, outlooks
The Present and Potential Future of Progressive Image Rendering (jaf)20313
images, jpeg, png, webp, avif, jpeg-xl, pjpeg, comparisons, outlooks
Past Time for Passkeys (nor)20312
videos, passkeys, passwords, authentication, security
5 Things to Do to Avoid Prompt Treadmill When Crafting Design With AI20311
design, ai, prompting, processes
Weston Ruter on Unlocking WordPress Performance (wes+)20310
podcasts, interviews, wordpress, performance, link-lists
Page Headings Don’t Belong in the Header (tem)20309
html, headings, skip-links, accessibility
I Am Sorry, but Everyone Is Getting Syntax Highlighting Wrong (nik)20308
syntax-highlighting, information-design, plugins
Cisco: Most Companies Don’t Know What They’re Doing With AI (bra/the)20307
ai
Most Developers Can’t Answer These 11 Microservices Questions—Can You?20306
microservices, architecture
Sequential “linear()” Animation With n Elements (css/css)20305
css, functions, animations
How Are Engineering Leaders Approaching 2026 AI Tooling Budgets? (lau)20304
tooling, ai, economics, engineering-management
See What’s New in Firefox [144.0] (fir)20303
release-notes, firefox, browsers
The Future of Lodash (uli)20302
libraries, lodash, javascript, outlooks
The State of Node.js 2025 Explained by Its TSC Member (mco/git)20301
videos, nodejs, npm
Lit Is Joining the OpenJS Foundation (lit)20300
lit, openjs
Common Misconceptions About Screen Readers (tet)20299
screen-readers, accessibility
Tips for Working With Emoji (chr)20298
emoji, css, javascript, tips-and-tricks
From Hype to Reality: Lessons Learned From Building AI Systems at Scale20297
lessons, scalability, ai
W3C Logo Refresh: More Than a Cosmetic Change, a Small Step Towards Durable and Sustainable Success (set/w3c)20296
w3c
HTML “dialog”: Getting Accessibility and UX Right (jar)20295
html, modals, scrolling, accessibility, user-experience
Holes in the Web (aeo)20294
web, content, ai
25 New and Rad Features of CSS (arg/cas)20293
videos, css, transitions, animations, cascade, selectors, functions, colors, scrolling
Modern CSS Round-Out Tabs (chr/fro)20292
css, shapes, clipping
The Killer Feature of Web Components (dav)20291
web-components, documentation
Find Where a Specific Object Was Allocated in JavaScript With DevTools20290
objects, javascript, dev-tools, browsers
The Grayscale Problem (sma)20289
design, colors
Anchor Positioning Updates for Fall 2025 (jam/odd)20288
css, anchor-positioning
Inattentional Blindness in Interfaces (nng)20287
videos, usability, design
Todd Libby on Deceptive Patterns (col+/sho)20286
podcasts, interviews, accessibility, anti-patterns
Tables: Beyond Rows and Columns (tpg)20285
accessibility, wcag, tables, html, semantics, jaws, nvda, screen-readers
Masonry: Watching a CSS Feature Evolve (css)20284
css, masonry, layout
Dead Framework Theory (pau)20283
frameworks, metrics, react
AI Interfaces and the Role of Good Writing20282
ai, writing, link-lists
Testing Methods: Content on Hover or Focus (dec)20281
accessibility, wcag, testing, focus, hover
Implementing Dark Mode Toggle Without JavaScript20280
dark-mode, toggles, css
Compressed Fluid Typography (mat)20279
typography, css, liquid-design
Reading and Writing Files in Node.js—the Complete Modern Guide (loi)20278
guides, nodejs, file-handling, examples
Why Ripple.js Is the Most Interesting Framework of 2025 (bet)20277
videos, frameworks, ripple
Liquid Glass Is Cracked, and Usability Suffers in iOS 26 (nng)20276
design, liquid-glass, usability, mobile
Notes on Switching to Helix From Vim (b0r)20275
vi+vim, code-editors, comparisons
Top 11 CSS Tricks Every Web Developer Should Know20274
css, custom-properties, layout, animations, selectors, positioning, dark-mode, resets, tips-and-tricks
Who Needs a Flying Car When You Have “display: grid” (rac)20273
css, grids, layout
Understanding Vector Space Visually—the Foundation of AI20272
ai, math
Fluid Headings (don)20271
headings, typography, css, responsive-design
We Completely Missed “width/height: stretch” (dxn/css)20270
css
RGESN Statements: The Clash of Words, the Weight of Measures20269
sustainability, metrics, studies, research
Interop Feature Ranking (jaf/fir)20268
websites, interoperability, firefox, browsers
CSS Counters in Action (ada/fro)20267
css, counters
Superpowers: How I’m Using Coding Agents in October 2025 (jes)20266
ai-agents, ai, tooling, processes
The 12 Emotional Journeys of Color Psychology20265
colors, user-experience, research
Behind the Scenes of Maintaining a Design System Component20264
design-systems, components, maintenance, maintainability
You’re Wasting Years at the Same Company as a Developer20263
career
A Beginner-Friendly Guide to View Transitions in CSS (mdn)20262
guides, css, view-transitions
My Conclusions After Using Signed Exchanges on My Website for 2 Years (paw)20261
signed-exchanges, performance, security
Why WordPress Themes Require Underlines on Links (joe)20260
wordpress, theming, links, accessibility
CSS Grid: A Helpful Mental Model and the Power of Grid Lines (sar/web)20259
css, grids, layout
Beyond Signals, by Ryan Carniato (rya/jet)20258
videos, signals, reactivity, solidjs, react
Simplify (ada)20257
css, simplicity
The Worst Designer I’ve Ever Worked With Was Also the Most Productive (ren)20256
design, productivity
Stop Inviting Overlay Employees and Bad Actors Into Accessibility Spaces20255
accessibility, overlays, business-relations
HTML—the Most Difficult Programming Language in the World (j9t)20254
programming, html, conformance, professionalism
Vite: The Documentary (cul)20253
videos, vite, history
Tailwind CSS in React and Next.js: A Complete Setup Guide20252
guides, tailwind, react, nextjs
2 Years of Genocide: Big Tech Complicit in Israel’s Destruction of Gaza? (ana)20251
politics, microsoft, facebook+meta, google, amazon
What’s New in View Transitions (2025 Update) (bra)20250
css, view-transitions, support
What Is MCP? Model Context Protocol Explained20249
videos, concepts, mcp, ai
Is It Time to Kill the Sidebar? (web)20248
design, navigation, minimalism
How to Animate WebGL Shaders With GSAP: Ripples, Reveals, and Dynamic Blur Effects (cod)20247
how-tos, animations, webgl, gsap, effects
The New “progress()” Function in CSS (ami)20246
css, functions, examples
What the 2025 DORA Report Means for Your AI Strategy (lau)20245
dev-ops, metrics, ai, strategies, processes, engineering-management
Vue Basics: State Management in Vue20244
fundamentals, vuejs, state-management, tooling
The Thing About “contrast-color” (geo/css)20243
css, colors, contrast, functions
How to Add Fast, Client-Side Search to Astro Static Sites (tra/evi)20242
how-tos, astro, search, functionality
When Case Studies Become Anti-UX20241
design, user-experience, anti-patterns
Build Your Own /init Command Like Claude Code (kau)20240
ai, prompting, claude
When Design Drives Behavior (jas)20239
design
How to Test WCAG 1.4.10: Reflow (Level AA)—Easy Website Accessibility Test You Can Do20238
videos, how-tos, testing, accessibility, wcag, reflow
CSS :is() :where() the Magic Happens (mat)20237
css, selectors, cascade
Introducing the React Foundation (set+/rea)20236
introductions, react
When to Use Modal vs. Dialog Components (a11)20235
modals, html, aria, accessibility
Testing Methods: Text Spacing (dec)20234
accessibility, testing, wcag, typography, readability
Vibe Engineering (sim)20233
vibe-coding, ai, terminology
Eyeing Accessibility Deadline, States Root Out Ancient Web Issues (col/sta)20232
accessibility, design
The “Don’t Ask, Don’t Tell” Era of DEI (ani)20231
dei, community
A Pragmatic Guide to Modern CSS Colours (kev/pic)20230
guides, css, colors, examples
Inside a 16.67 Millisecond Frame20229
javascript, rendering, reflow, painting, performance