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#
How We’re Protecting Our Newsroom From npm Supply Chain Attacks (rya/pnp)20945
npm, dependencies, security, case-studies
Testing Methods: Target Size (Enhanced) (dec)20944
accessibility, testing, wcag, touch
How I Built a Form Management Platform With Angular 17 and SurveyJS20943
functionality, forms, angular, tooling
Non-Blocking Cross-Browser Image Rendering on the Canvas (mys/per)20942
canvas, javascript, images, performance
10 Usability Heuristics20941
usability, heuristics
IDREFs: What They Are and How to Use Them (kil/mat)20940
html, forms, aria, accessibility
No More Tokens—Locking Down npm Publish Workflows (zac)20939
npm, dependencies, security, processes
Why You Need Design Maturity in a Product Organisation, and How to Get It20938
design, product-management
Fast by Default (den/per)20937
performance, processes
I Studied 50+ Engineers Who Got Promoted Fast: They All Did One Thing I’d Been Ignoring20936
career, collaboration
Testing Methods: Motion Actuation (dec)20935
accessibility, testing, wcag, mobile
Standards Queues (bka)20934
standards, web-platform, collaboration
In 1995, a Netscape Employee Wrote a Hack in 10 Days That Now Runs the Internet (ben/ars)20933
netscape, javascript, history
The Web Runs on Tolerance (ede)20932
web-platform, standards, principles
Referencing HTML Elements Inside Shadow DOM (meh/mat)20931
html, shadow-dom, web-components
Getting Creative With “the Measure” (mal/css)20930
css, typography, readability
The Timing Problem in Design Systems (mur)20929
design-systems, components
End-to-End Browser and Accessibility Event Architecture (rus)20928
accessibility, browsers, event-loop, browser-engines, javascript-engines, assistive-tech
During Helene, I Just Wanted a Plain Text Website (spa)20927
content
The Downsides of “scrollbar-gutter: stable;” (and One Weird Trick) (chr/fro)20926
css, scrolling
A Little Bit Uncomfortable20925
career, learning
Solving Small Text and Contrast Issues for Large-Screen Readability (a11)20924
accessibility, contrast, readability, typography
Common Misconceptions About Disability (tet)20923
accessibility, concepts
Public Design Systems Are Worth It (pjo)20922
design-systems
TypeScript Strictness Is Non-Monotonic: Strict-Null-Checks and No-Implicit-Any Interact (huo)20921
typescript, arrays
Intopia Launches Assistive Technology Survey 2025 (int)20920
surveys, assistive-tech
Speculation Rules Improvements (tun/mat)20919
performance, speculation, apis
Testing Methods: Label in Name (dec)20918
accessibility, testing, wcag, labels, aria
HTML Semantics: The Short Descriptions of All 113 Elements (j9t)20917
html, semantics, overviews
Critical Security Vulnerability in React Server Components (rea)20916
react, components, security
[Next.js] Security Advisory: CVE-2025-66478 (seb)20915
nextjs, security
Get the Core Right and the Resilient Code Will Follow (bel/btc)20914
videos, resilience, design, communication
Web Backstories: Shadow DOM (ada+/iga)20913
podcasts, interviews, shadow-dom, web-components, standards, history
How Does Amazon’s Kiro Differ From Traditional IDEs? (ele/des)20912
guest-posts, kiro, code-editors
Understanding “aria-live” Timing: A Two-Layer Model (rus)20911
accessibility, aria, live-regions, notifications
Designing Decisions: Behavioral Psychology That Moves Users20910
design, interaction-design, user-experience
A Pragmatic Guide to Modern CSS Colours II (kev/pic)20909
guides, css, colors, examples
From Reactive to Proactive: Building a Sustainable Accessibility Program (equ)20908
accessibility, processes, culture, w3c
Scrollytelling on Steroids With Scroll-State Queries (css)20907
css, scrolling
Masonry: Things You Won’t Need a Library for Anymore (pat/sma)20906
css, masonry, layout, examples, web-platform
Exploring Large HTML Documents on the Web (per)20905
performance, html, metrics
Progress on TypeScript 7—December 2025 (dan/typ)20904
typescript
You Can’t Make Something Accessible to Everyone (aar)20903
accessibility, design
Testing Methods: Pointer Cancellation (dec)20902
accessibility, testing, wcag
Using the Ancient Evils for Debugging (bol/mat)20901
html, debugging
The Nuances of JavaScript Typing Using JSDoc (jar/van)20900
javascript, jsdoc, typescript, developer-experience
Bun Is Joining Anthropic (jar/bun)20899
bun, anthropic
Decreasing [Let’s Encrypt] Certificate Lifetimes to 45 Days (mat/let)20898
http, security, certificates, lets-encrypt
Anchor Positioning and the Inset-Modified Containing Block (IMCB) (bra)20897
css, anchor-positioning, concepts
What Sam Altman Just Taught Us About OKRs (Without Meaning To) (cwo)20896
okr, prioritization, processes, openai
The Practical Guide to LLM Cost Optimization20895
guides, ai, token-optimization, economics
Building Agentic Design Systems: The Future of AI-Enhanced Design20894
design-systems, design, ai, processes
The Next Revolution in Design: Emotional Accessibility (fas)20893
design, accessibility, outlooks
“Sloppy” Code and Accessibility Issues: The Trouble With Trump’s Silicon Valley-Inspired Web Design Project (not)20892
design, accessibility, quality, case-studies
Non-Square Image Blur Extensions (ana/fro)20891
images, css, effects
The Evolution of Web Development: From Static Pages to AI-Driven Experiences (web)20890
history, web, web-2.0, web-apps, ai
Improve TTFB and UX With HTTP Streaming (mb2/per)20889
performance, user-experience, http, streaming, optimization
React Has Changed, Your Hooks Should Too20888
react, hooks
Top Layer Troubles: Popover vs. Dialog (5t3/mat)20887
css, positioning, pop-overs, modals
Nobody Writes Clean Code—We All Just Pretend20886
quality, craft
Testing Methods: Pointer Gestures (dec)20885
accessibility, wcag, testing
Prevent a Page From Scrolling While a Dialog Is Open (geo/css)20884
scrolling, css
Web Design / Dev Advent Calendars for 2025 (aar)20883
link-lists, learning
Is Using Command Line AI an Option for Helping You Code?20882
ai, command-line, cursor, claude, code-editors
Can You Make Toast Messages Accessible? (ada)20881
accessibility, notifications
Testing Methods: Focus Appearance (dec)20880
accessibility, testing, wcag, focus, keyboard-navigation, link-lists
How to Unit Test a Vue Composable With TypeScript (joh)20879
how-tos, testing, vuejs, functions, typescript
Using CSS to Fix the Irradiation Illusion (arg)20878
css, readability, fonts
The Junior Hiring Crisis (ann/peo)20877
hiring, engineering-management, career, community
How Modern Browsers Work (add)20876
browsers, chromium, network, parsing, painting, rendering, javascript-engines, v8, memory, modules, javascript, html, css
Testing Methods: Focus Not Obscured (Enhanced) (dec)20875
accessibility, testing, wcag, focus, keyboard-navigation
How Fast Can Browsers Process Base64 Data? (lem)20874
performance, encoding, base64, browsers, metrics, comparisons
How Good Engineers Write Bad Code at Big Companies (sea)20873
quality, career, culture
The Era of Personal Software20872
programming, ai
CSS-in-JS: The Great Betrayal of Frontend Sanity20871
css-in-js, css, javascript, performance, developer-experience
How Microfrontends Work: 3 Integration Strategies20870
micro-frontends, strategies, routing, iframes, javascript, ai
EAA Deadlines, Why You Probably Can’t Wait Another 5 Years20869
accessibility, eaa, legal, compliance
Category Theory for JavaScript/TypeScript Developers (ibr)20868
javascript, typescript, programming, craft
Who Wins When We Filter the Open Web Through an Opaque System? (hdv)20867
open-web
Web Application Architecture: The Enterprise Framework Powering Modern Digital Experiences (elu)20866
architecture, web-apps
Testing Methods: Focus Not Obscured (Minimum) (dec)20865
accessibility, testing, wcag, focus, keyboard-navigation
Understanding ECDSA [Elliptic Curve Digital Signature Algorithm]20864
cryptography, algorithms, math
Eleventy: How to Set Up Effective HTML Minification (in 24 Seconds) (j9t)20863
how-tos, eleventy, html, html-minifier, minification, optimization
One CSS Trick to Eliminate Scrollbar Layout Shifts (ami)20862
css, scrolling, tips-and-tricks
How to Create an Adaptive SVG Favicon Using the “prefers-color-scheme” Media Query (zor/css)20861
videos, how-tos, favicons, svg, css, images
The Idiot Sandwich—on Embedding Alt Text (ede)20860
images, alt-text, accessibility
5 Reasons Why WCAG AA Compliance Does Not Mean Your Website Is Accessible (cra)20859
accessibility, wcag, compliance, colors, readability, performance, content, multimedia, quality
AI for Good Accessibility (ala)20858
slides, ai, accessibility
The Accessibility Problem With Authentication Methods Like CAPTCHA (sma)20857
accessibility, captcha
Testing Methods: Section Headings (dec)20856
accessibility, testing, wcag, headings
Why Use React?20855
react, frameworks
Best of the Pod: Would You Shut Down Your Most Successful Product? the Arc to Dia Story20854
videos, the-browser-company, arc, dia, browsers, history, product-management
New to the Web Platform in November (rac)20853
release-notes, web-platform, browsers, firefox, safari
Ripple Over React? Evaluating the Newest JS Framework (log)20852
ripple, react, frameworks, comparisons
Saumya Majumder on How Cloudflare Outages Impact the Web and WordPress Performance Solutions (nat)20851
podcasts, interviews, cloudflare, wordpress, performance
Taking Down Next.js Servers for 0.0001 Cents a Pop20850
servers, nextjs, vulnerabilities, security
Testing Methods: Link Purpose (Link Only) (dec)20849
accessibility, testing, wcag, links, microcontent, link-lists
Accessibility and Usability: Inline Field Validation vs. Constantly Active Submit Button20848
forms, buttons, validation, accessibility, usability, comparisons
The End of Dashboards and Design Systems20847
design, design-systems
Critique20846
design, craft, collaboration, processes
What an Accessibility Conference Taught Me About Designing for All20845
design, accessibility
How to Add and Remove Items From a Native CSS Carousel (…With CSS) (dxn/fro)20844
how-tos, css, carousels, scrolling
What Are Invokers? Interactivity Without JavaScript (tol/syn)20843
videos, javascript, html, pop-overs
Migrating From GitHub to Codeberg (and/zig)20842
migrating, github, codeberg
Updating CSS Border Radius When a Container Is Overflowing (rik)20841
css, borders, overflow, scrolling
A New Navigation Paradigm20840
ai, navigation, design
Applying AI Where It Matters20839
studies, research, ai
Becoming Unblockable (sea)20838
career, prioritization, tooling, collaboration
Thoughts on Kagi’s Orion Browser vs. AI Browsers (dra)20837
orion, kagi, browsers, ai
Orion 1.0—Browse Beyond (kag)20836
browsers, orion, ai
“<dialog>” and Popover: Baseline Layered UI Patterns20835
modals, pop-overs, css
WebGPU Is Now Supported in Major Browsers20834
webgpu, browsers, support, web-platform
What Actually Makes You Senior (ter)20833
career
Animation and Carousels (web)20832
accessibility, animations, carousels, css, reduced-motion
Design Tokens Aren’t Enough—Architecture Decisions Need a Place in Your Design System (sam)20831
design-systems, design-tokens, architecture, documentation
Direction-Aware Arrow Shape Using Corner-Shape (css)20830
css, shapes
Testing Methods: Location (dec)20829
accessibility, testing, wcag, navigation
The Shai-Hulud 2.0 npm Worm: Analysis, and What You Need to Know20828
npm, security, dependencies
A Minimal CSS Starter (j9t)20827
css, templates, minimalism
Tech Predictions for 2026 and Beyond20826
outlooks, web
Design System Culture: What It Is and Why It Matters (ari/sma)20825
design-systems, culture
CSS Backgrounds Module Level 4 (fan+/w3c)20824
standards, css, backgrounds
93% Faster Next.js in (Your) Kubernetes (mco/pla)20823
nextjs, nodejs, performance, kubernetes
Web Browser Status Bars Are Nuts (lap)20822
browsers, comparisons
Brand New Layouts With CSS Subgrid (jos)20821
layout, css, grids, examples
Anatomy of AI Input (ibe)20820
ai, design
GitLab Discovers Widespread npm Supply Chain Attack20819
npm, dependencies, security, gitlab, aws, gcp, azure
The Future of AWS CodeCommit20818
aws, tooling, git, outlooks
Replacing “glob-all” With “fs.promises.glob” in Node.js (cto)20817
refactoring, nodejs
How to Easily Create Modern, CSS-First Forms in WordPress (zor/css)20816
how-tos, videos, css, forms, wordpress
“light-dark()” Isn’t Always the Same as “prefers-color-scheme” (ste)20815
css, functions, dark-mode, colors
UX Is Your Moat (and You’re Ignoring It) (cwo)20814
user-experience, economics
Managing Side Effects: A JavaScript Effect System in 30 Lines or Less (ayc)20813
javascript
Introduction to CSS “if” Statements and Conditional Logic (mar)20812
introductions, css, functions, conditionals
The State of Tanstack, Two Years of Full-Time OSS (tan/tan)20811
tanstack, foss
The Performance Inequality Gap, 2026 (sli)20810
performance, javascript, metrics
Web Monetization Is Still Inching Along, but Still Too Difficult (chr/fro)20809
monetization
On Inheriting and Sharing Property Values (dxn/css)20808
css, cascade, techniques
Why Does AI Devour So Much Water? (ger)20807
ai, sustainability
Testing Methods: Focus Visible (dec)20806
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
You’re Doing JavaScript Testing Wrong (cfe)20805
javascript, testing
Shuffling a CSS Grid Using Custom Properties (cod)20804
css, grids, custom-properties
WCAG 2.1 Addition—Success Criterion 1.4.10: Reflow (Level AA)20803
accessibility, wcag, standards, reflow
Testing Methods: Headings and Labels (dec)20802
accessibility, wcag, testing, headings, labels, forms
If You Think Your Commit Messages Are Bad, Just Wait…20801
commit-messages
You’re Not Building Netflix: Stop Coding Like You Are20800
programming, architecture, prioritization
AI Will Soon Deliver Code That Will Pass Automatic Testing by Default (cer)20799
ai, testing, accessibility
Testing Methods: Multiple Ways (dec)20798
accessibility, wcag, testing, navigation, sitemaps, link-lists
Unifying [Wikipedia’s] Mobile and Desktop Domains (kri/wik)20797
wikipedia, refactoring, mobile, desktop, performance, seo, user-experience, infrastructure, case-studies, link-lists
The PHP 8.5 Pipe Operator (“|>”): Useful, but Watch for These Gotchas20796
php, operators
How Designers Gaslight Users With Microcopy (web)20795
design, microcontent, dark-patterns
WCAG 2.1 Addition—Success Criterion 1.3.5: Identify Input Purpose (Level AA)20794
accessibility, wcag, standards, forms
Keyframes Tokens: Standardizing Animation Across Projects (ami/sma)20793
css, animations, consistency
Testing Methods: Link Purpose (in Context) (dec)20792
accessibility, wcag, testing, links, microcontent
WCAG 3 Update (kno)20791
videos, accessibility, wcag, standards
Critical Thinking During the Age of AI (add)20790
ai, processes, career
The Value of Selecting Selects by Value (aar)20789
accessibility, wcag, forms
How to Create 3D Images in CSS With the Layered Pattern (sun/fro)20788
how-tos, images, 3d, css, transforms
5 Engineering Skills to Prioritize in the AI-Driven Era20787
ai, writing, architecture, debugging, communication, career
Testing Methods: Focus Order (dec)20786
accessibility, wcag, testing, focus, keyboard-navigation, link-lists
WCAG 2.1 Addition—Success Criterion 1.3.4: Orientation (Level AA)20785
accessibility, wcag, standards, mobile
Cross-Browser Anchor Positioning (mey+/odd)20784
videos, interviews, css, anchor-positioning
The Rosetta Stone of Design Engineering (yan)20783
design, processes, collaboration
Responsive Letter Spacing (tyl/clo)20782
responsive-design, typography, css
Grid: How “grid-template-areas” Offer a Visual Solution for Your Code (sar/web)20781
css, grids, layout
Should We Even Have “:closed”? (sun/css)20780
css, selectors, disclosure-widgets
The Engineer You Never Met: Why Interview Processes Systematically Reject Qualified Engineers20779
hiring, economics, case-studies
Automated Accessibility Testing for React—Tools and Best Practices You Can Use20778
accessibility, testing, react, tooling, best-practices
These Queries Cover 80% of SQL20777
sql, databases
Testing Methods: Page Titled (dec)20776
accessibility, wcag, testing, html
Good Enough Is a Strategy (tre)20775
strategies, technical-debt, quality
State of React 2025 (sac/dev)20774
surveys, react
A Guided Tour of Copenhagen (fre/ske)20773
guides, sketch
Announcing Angular v21 (mar/ang)20772
release-notes, angular
Why Web Design Must Finally Break Free From Its Graphic Design Roots (web)20771
design, print, ai, career
Using esbuild in Eleventy (db)20770
eleventy, esbuild
Anchoring to a Containing Block (kiz)20769
css, anchor-positioning
When the Dark Pattern Is a Glaring Green Checkmark20768
design, user-experience, dark-patterns
Cloudflare Outage on November 18, 2025 (eas)20767
cloudflare
Web Development: On the Size and Output of and the Growth Opportunities Within the Field (j9t)20766
guest-posts, training, career, frontend-dogma
To Be a Leader of Systems (haz)20765
leadership
The Cloudflare Outage Was a Good Thing20764
cloudflare, resilience, infrastructure
Testing Methods: Bypass Blocks (dec)20763
accessibility, wcag, testing, keyboard-navigation
Experiment: Making TypeScript Immutable-by-Default (eva)20762
experiments, typescript
WCAG 2.1 Addition—Success Criterion 2.5.4: Motion Actuation (Level A)20761
accessibility, wcag, standards
More CSS “random()” Learning Through Experiments (chr/fro)20760
css, functions, randomness, experiments
Do Not Put Your Site Behind Cloudflare if You Don’t Need To20759
cloudflare
Firefox Is Adding Support for a Feature That Users Requested Since 200420758
firefox, browsers, keyboard-shortcuts
How to Successfully Migrate Your App With an AI Agent (bla/ope)20757
how-tos, migrating, refactoring, ai
WCAG 2.1 Addition—Success Criterion 2.5.3: Label in Name (Level A)20756
accessibility, wcag, standards, labels, forms
Ethical Defaults: Why Designers Must Stop Hiding Behind Settings (web)20755
design, ethics
10 Git Tricks That Made Me a Way Better Developer20754
git, command-line, tips-and-tricks
Tooltip Components Should Not Exist (tkd)20753
tooltips, components
A11y 101: 2.4.7 Focus Visible (nat)20752
introductions, accessibility, wcag, focus, keyboard-navigation
The “Most Hated” CSS Feature: “asin()”, “acos()”, “atan()”, and “atan2()” (mon/css)20751
css, functions, math
Testing Methods: Animation From Interactions (dec)20750
accessibility, wcag, testing, animations
How to Prepare for the Future of Programming (jet)20749
how-tos, programming, learning
Automated npm Secret Rotation in GitHub Actions (mhe)20748
npm, security, automation, github-actions
Top 10 Branding Trends to Watch Out for in 2026 (des)20747
branding, design, trends, outlooks
Testing Methods: Three Flashes or Below Threshold (dec)20746
accessibility, wcag, testing
How to “Officially” Deprecate Methods With Node.js Utilities (ste)20745
how-tos, deprecation, nodejs, developer-experience
Wrangling My Email With Claude Code (jlo)20744
email, claude, ai, efficiency
Testing Methods: Timeouts (dec)20743
accessibility, wcag, testing, time
Accessible Names and Labels: Understanding What Works and What Doesn’t (tpg)20742
accessibility, labels, naming, forms
“display: masonry” Is Officially Dead (kev)20741
videos, css, masonry, layout
It Is OK to Say “CSS Variables” Instead of (or Alongside) “Custom Properties” (kiz)20740
css, variables, custom-properties, terminology
Good Visual Design, Explained (nng)20739
design, principles, quality
A Complete Guide to the HTML Number Input (oll)20738
guides, html, attributes, forms
“Technical Debt Will Bite Us in the Ass”: How to Make Non-Technical Stakeholders Actually Care20737
how-tos, technical-debt, communication, prioritization
Monotype Font Licencing Shake-Down (ame)20736
fonts, licensing
“Move Fast and Don’t Break Things”—What Four Startups Taught Me About Execution20735
design, career, product-management, engineering-management
What’s New in PHP 8.5 (bre)20734
php
Animating CSS “width” or “height” No Longer Forces a Main Thread Animation (in Chrome, Under the Right Conditions) (bra)20733
css, animations, chrome, browsers
Is Server-Side Rendering React’s Holy Grail?20732
react, server-side-rendering
A Suggestion for Your Community Terms and Policies (j9t)20731
community, collaboration, politics
What’s New in the Design Tokens Spec: From Static to Living Design Data (res/zer)20730
design-tokens, design-systems
Browserslist and Baseline (chr/fro)20729
browsers, support, web-platform, browserslist
Older Tech in the Browser Stack (sma)20728
xpath, css, techniques
Writing Is Probably the Worst Use Case of AI20727
ai, writing
Testing Methods: Re-Authenticating (dec)20726
accessibility, wcag, testing, authentication
What’s Coming in TypeScript 6/7 (dan+/typ)20725
podcasts, interviews, typescript, ecmascript, outlooks
From Tokens to Touchpoints: Powering a Successful Rebrand With Your Design System (zer)20724
design-systems, design-tokens, collaboration
The Last Couple Years in V8’s Garbage Collector (win)20723
v8, javascript-engines, garbage-collection, memory, retrospectives, javascript
The Hard Truth About Learning to Code (That No One Tells You)20722
learning, career
Do Newer AI-Native IDEs Outperform Other AI Coding Assistants? (lau)20721
ai, code-editors, efficiency, metrics, comparisons
What Developers Really Mean by “Bad Code” (jet)20720
maintainability, scalability, consistency, security, quality
How We Catch UI Bugs Early With Visual Regression Testing20719
testing, regressions, playwright, javascript
Range Syntax for Style Queries (una)20718
css, style-queries
CSS “:interest-invoker” and “:interest-target” Pseudo-Classes (tre)20717
css, selectors, forms
Testing Methods: Interruptions (dec)20716
accessibility, wcag, testing
Netflix’s Engineering Culture (ger)20715
podcasts, interviews, netflix, culture, ai
AVIF vs. JPEG vs. WebP vs. PNG20714
avif, jpeg, webp, png, images, comparisons
Firefox 147 Release Notes for Developers (mdn)20713
release-notes, firefox, browsers
Guiding the Future of Ethical Design20712
design, ethics
Why Headings Are Important in HTML: Structure, Accessibility, and SEO20711
html, headings, accessibility, seo
Programming Principles for Self Taught Front-End Developers (kil/pic)20710
programming, principles
Effectively Monitoring Web Performance (sma)20709
performance, monitoring, tooling
“::details-content”: Style Expandable Content Without Wrapper Divs (tre)20708
disclosure-widgets, css, html
Using “chrome-devtools-mcp” With Polypane (pol)20707
polypane, browsers, dev-tools, mcp, chrome, ai
Rust vs. Python: Finding the Right Balance Between Speed and Simplicity (jet)20706
rust, python, performance, simplicity, programming, comparisons
Error Chaining in JavaScript: Cleaner Debugging With “Error.cause”20705
javascript, errors, debugging
Perfectly Pointed Tooltips: To the Corners (css/fro)20704
css, tooltips
10 Smart Performance Hacks for Faster Python Code (did/jet)20703
python, performance, techniques
My CSS Selector Strategy (mal)20702
css, selectors, principles
20 Best CSS Preprocessor Tools and Comparison for 2025: Complete Guide to Active Tools20701
guides, css, tooling, preprocessors, comparisons, link-lists
Crafting Generative CSS Worlds (cod)20700
css, transforms
Testing Methods: Pause, Stop, Hide (dec)20699
accessibility, wcag, testing, multimedia, animations, link-lists
Link vs. Button: Choosing the Right Element for the Right Job (tpg)20698
html, links, buttons, accessibility, wcag, comparisons
“aria-labels” and Privacy: A Word of Caution (hom)20697
accessibility, aria, privacy
“AI” Browsers: The Price of Admission Is Too High (bru/viv)20696
ai, browsers
Headings: Semantics, Fluidity, and Styling—Oh My! (geo/css)20695
headings, html, css
Six Things I Bet You Didn’t Know You Could Do With Chrome’s DevTools20694
chrome, dev-tools, browsers
3 User-Friendly Technical Ways to Respond to Genocidistan (j9t)20693
politics, traffic, censorship, community
How to Rate-Limit Requests With nginx20692
how-tos, nginx, servers, rate-limiting
Building a Multi-Stage Timetable With Modern CSS Using Grid, Subgrid, “round()”, and “mod()” (nil)20691
css, grids, layout, functions
Testing Methods: Timing Adjustable (dec)20690
accessibility, wcag, testing, time, link-lists
Why CSS Is So Hard for Generative AIs to Understand?20689
css, ai
Frontend News #17: Why Pseudo-Elements Don’t Work With “:is()”, the Advantages of OKLCH, and More (zor/css)20688
videos, css, selectors, oklch
Testing Methods: Character Key Shortcuts (dec)20687
accessibility, wcag, testing, keyboard-shortcuts
When Everyone’s a Developer, How Do We Promote the Web Platform Over React? (ric)20686
web-platform, react, ai, link-lists
Material 3 Expressive: Building on the Failures of Flat Design20685
material-design, flat-design, design, link-lists
Slots in Design Systems (nat)20684
design-systems, figma
A Practical Guide to Flutter Accessibility: The Basics (kor)20683
guides, fundamentals, flutter, accessibility
Fix “width: 100%” Overflow Easily (zor/css)20682
videos, css, overflow
Sustainable Accessibility in Complex Organisations: Strategic Foundations (ihe/tet)20681
accessibility, leadership, dei, processes
When to Use CSS “text-wrap: balance” vs. “text-wrap: pretty” (dxn/log)20680
css, typography
Tailwind CSS Won the War… but We’re the Losers20679
tailwind, css, html, web-platform
Sustainable Accessibility in Complex Organisations: Organisational Realities (ihe/tet)20678
accessibility
Staggered Animation With CSS “sibling-*” Functions (pre/fro)20677
animations, css, functions
Smashing Animations: Magnificent SVGs With “<use>” and CSS Custom Properties (mal/sma)20676
animations, transforms, svg, css, custom-properties
Monorepo vs. Multi-Repo vs. Git Submodule vs. Git Subtree: A Complete Guide for Developers20675
guides, architecture, monorepos, git, version-control, comparisons
JavaScript Just Leveled Up: ES2025—You’ll Fall in Love With (jsd)20674
javascript, ecmascript, standards
It Ain’t Easy to Move a Side Project Off Big Tech (thi)20673
migrating, vercel, sveltekit
Is Figma in Its Accessibility Era?20672
figma, accessibility
10 Tiny UI Fixes That Make a Big Difference20671
design, forms, spacing, alignment, consistency, hierarchy, usability, best-practices
TypeScript’s Rise in the AI Era: Insights From Lead Architect, Anders Hejlsberg (aar)20670
typescript, ai
Combining Scroll-Driven Animations With “@starting-style” (bra)20669
css, scrolling, animations
Advanced Beginner’s Guide to ClojureScript (rom)20668
guides, javascript
Now Available: “On Web Development II”! (j9t)20667
books, html, css, engineering-management, maintainability, quality
100, 150, or 200? Debunking the Alt Text Character Limit20666
alt-text, accessibility, images, link-lists
A (Kind of) Farewell to the Web (joh)20665
web-platform, frameworks, ai, career
Explaining the Accessible Benefits of Using Semantic HTML Elements (geo/css)20664
html, semantics, accessibility
Brutalism in the AI Era: Why Ugly Might Be the Only Honest Aesthetic Left (web)20663
design, aesthetics, brutalism
You Are Going to Get Priced Out of the Best AI Coding Tools (dpa)20662
ai, tooling, economics
Why Separate Guest and Logged in States Create Accessibility Barriers20661
accessibility
Introducing the OWASP Top 10:2025 (she+/owa)20660
introductions, owasp, security, vulnerabilities
Why 44% of Your Audience Might Not Understand You: An Interview With Jamila Savoy20659
interviews, content, writing, accessibility
Six Key Components of UX Strategy (vit/sma)20658
user-experience, strategies
The Web Animation Performance Tier List (cit)20657
animations, performance, javascript, css, apis
The Weird Parts of “position: sticky;” (ada/fro)20656
css, positioning
No Close Quote? (css)20655
css
How to Throttle Specific Requests in Chrome DevTools (mat/deb)20654
how-tos, dev-tools, browsers, chrome, throttling
Using Composability Over Inheritance to Scale Design Systems (ase/zer)20653
design-systems, components, inheritance, scalability
Real Performance Benchmarks of PHP 8.5 vs. PHP 8.3 and Node.js20652
performance, php, nodejs, comparisons
Why Big Tech Won’t Hire Flutter Developers (and Why You Should Care) (ala)20651
career, flutter, economics
Top 10 Essential Productivity Software for 202520650
tooling, productivity, collaboration, communication
Some Software Bloat Is OK20649
quality, technical-debt, performance
How I Use AI to Build Frontend Apps: My Candid, Messy Process (bla)20648
ai, processes, debugging, claude
The Inner Workings of JavaScript Source Maps (man/pol)20647
javascript, typescript, source-maps
Learn React Server Components (jad)20646
videos, tutorials, react, components
WebKit Features for Safari 26.1 (jen/web)20645
release-notes, webkit, safari, browsers
What’s New in ViteLand: October 2025 Recap (man)20644
release-notes, vite, vitest, rolldown, oxc
Making a Design System That Gets Adopted (cle)20643
design-systems, case-studies
What Is Detached State in Git and How Do You Recover From It?20642
git, command-line
Dark Mode Is the New Comic Sans (and You Know It) (web)20641
dark-mode, design, accessibility
You Need to Become a Full Stack Person (loc)20640
ai, career
The Fundamentals Problem (chr)20639
fundamentals, design, prioritization
Why Most Developers Stay “Mid” Forever20638
career
“pathLength” Makes Makes SVG Path Animations Easier to Manage (ste)20637
svg, images, animations
Why We Migrated From Python to Node.js20636
migrating, python, nodejs
Grayscale Testing: The Missing Step in Color Accessibility (pop)20635
accessibility, testing, colors
The “Most Hated” CSS Feature: “tan()” (mon/css)20634
css, functions, math
Running Node.js in a Hugging Face Space (tom)20633
nodejs, hugging-face
I’ve Reviewed 500 Java Projects—Everyone Makes This Same Dumb Mistake20632
java, mistakes, strings
Why I Don’t Test Different Designs at the Same Time (ada)20631
design, testing
TL;DR: How Your Advantage Becomes Your Achilles Heel (ste)20630
product-management, ai
Top 100 Domains on Frontend Dogma (fro)20629
frontend-dogma
Reduce LLM Costs: Token Optimization Strategies (ros)20628
ai, token-optimization, economics
Global Digital Accessibility Salary Survey (web)20627
surveys, accessibility, career
AI Broke Interviews20626
ai, interviewing, hiring
It’s Almost 2026: Why Are We Still Arguing About CSS vs. Tailwind20625
tailwind, css, comparisons
12 Essential Java Best Practices Every Developer Should Follow20624
programming, java, best-practices, principles
Context Engineering for Non-Engineers (cwo)20623
ai, prompting, claude
Node.js 24 Becomes LTS: What You Need to Know (nod)20622
nodejs, nsolid
Your URL Is Your State (ahm)20621
urls, state-management
AI and Alt Text (ted+/web)20620
videos, ai, alt-text, images, accessibility
Evergreen Web Design Is a Lie (but Maybe That’s Okay) (web)20619
design, creativity
The Hidden Cost of Projects: Why Latency Kills Value20618
project-management, processes
Architectural Debt Is Not Just Technical Debt (may)20617
architecture, technical-debt
Just Use a Button (cfe)20616
html, buttons, semantics
Testing Methods: Keyboard (No Exception) (dec)20615
accessibility, testing, keyboard-navigation
Use Cases for Field Sizing (sha)20614
forms, css, examples
New to the Web Platform in October (rac)20613
release-notes, web-platform, browsers, firefox, chrome
After the AWS Outage20612
aws, cloud-computing
Comparing Interviews at 8 Large Tech Companies (ger)20611
interviewing, google, amazon, atlassian, comparisons
Self-Hosting Versus Lots of Small IndieWeb Providers20610
self-hosting, indieweb
HTML Minifier: A 12-Year Journey Building and Maintaining an Open Source Tool20609
html, minification, tooling, windows, asp-net, retrospectives
The Real Problem With AI Coding20608
ai
Developers Shouldn’t Learn Design—Designers Shouldn’t Code (phi)20607
design, programming, processes, collaboration, project-management
How to Use CSS “line-clamp” to Trim Lines of Text (dxn/log)20606
how-tos, css, typography
Removing XSLT for a More Secure Browser (dro)20605
chromium, chrome, browsers, xsl, web-platform, security
AI Frontend Generator Comparison: Claude Code vs. v0 vs. Cursor vs. Replit (hcr)20604
ai, code-editors, claude, vercel, cursor, tooling, comparisons
Blogging Gets Serious in 2001 With Warblogs and Movable Type (ric)20603
web, history, blogging, examples, movable-type
Amazon’s Return to Office Mandates Backfire (jpr)20602
amazon, aws, culture, economics
Getting Creative With Small Screens (mal/css)20601
design, responsive-design, mobile, css
The Coming War of AI Browsers: Why the Web Will Never Be the Same Again (web)20600
ai, browsers, open-web, personalization
Flutter’s Silent UI Killers20599
flutter
Arnas Donauskas on AI-Powered Troubleshooting for Websites (nat)20598
podcasts, interviews, ai, debugging, tooling
Sometimes the Best Accessibility Fix Is a Usability Fix20597
accessibility, usability
Get Started With Manual Testing (pop)20596
introductions, accessibility, testing
Node.js v22 to v24 (aug+/nod)20595
nodejs, migrating
I Built the Same App 10 Times: Evaluating Frameworks for Mobile Performance (che)20594
frameworks, mobile, performance, comparisons, nextjs, tanstack, nuxt, angular, marko, solidstart, solidjs, sveltekit, qwik, astro, htmx
Will npm’s New Security Steps Stop Attacks? (rev)20593
security, npm, maintenance, foss
HTTPS by Default (jde+)20592
http, security, chrome, browsers
ChatGPT Sez Build With Semantics First (ste)20591
chatgpt, chatgpt-atlas, ai, browsers, html, semantics, accessibility
Octoverse: A New Developer Joins GitHub Every Second as AI Leads TypeScript to #120590
github, metrics, productivity, ai, foss, security, programming
Import JavaScript Like It’s 2026 (sto)20589
javascript, performance
Mastering “URLPattern” for Cross-Platform Routing (jsd)20588
nodejs, routing
Start Implementing View Transitions on Your Websites Today (cyd/pic)20587
css, view-transitions, javascript, apis
Perfectly Pointed Tooltips: A Foundation (css/fro)20586
tooltips, css, anchor-positioning
Agentic AI and Security (ksi/mfo)20585
ai, architecture, security
Springs and Bounces in Native CSS (jos)20584
css, animations, transitions, effects, functions
Parenthetical Asidenotes (mey)20583
html, css
Who Rules AI Search? What 3 Months of AI Visibility Data Tells Us (sem)20582
search, ai, domains, metrics
Google Kills Privacy Sandbox (pro)20581
google, privacy, apis
Inlining Critical CSS: Does It Make Your Website Faster? (mat/deb)20580
css, critical-path, performance, lazy-loading
16 Charts That Explain the AI Boom (bin)20579
ai, metrics, economics, openai, anthropic, facebook+meta, oracle, google, microsoft, aws
What I Learned Porting Mastro From Deno to Node.js (mas)20578
lessons, migrating, deno, nodejs
Why Do We Need Dithering?20577
images, dithering
Your Accessibility Score Is Lying to You20576
accessibility, metrics, testing
The State of Django 2025 (wsv/jet)20575
surveys, metrics, django
A11y 101: 2.4.5 Multiple Ways (nat)20574
introductions, accessibility, wcag
JavaScript for Everyone: Iterators (wil/sma)20573
javascript
Express.js 6 and Beyond: Modernizing the Most Popular Node.js Framework (nod)20572
nodejs, express, frameworks, modernization
The JavaScript Feature You’ve Probably Never Used Allows Running Untrusted JavaScript Safely20571
javascript
Alt Text or Image Description?20570
accessibility, images, alt-text, comparisons, terminology
AI for War: Big Tech Empowering Israel’s Crimes and Occupation (mar)20569
ai, legal, google, aws, microsoft, palantir
“Good Engineering Management” Is a Fad (let)20568
engineering-management, prioritization
Don’t Forget These Tags to Make HTML Work Like You Expect (jim)20567
html
Crafting Engineering Strategy (let)20566
books, engineering-management, strategies
Testing Methods: No Keyboard Trap (dec)20565
accessibility, testing, wcag, keyboard-navigation
The Origin Story of JavaScript (ann/cas)20564
videos, history, web, javascript, ecmascript, browsers, browser-wars, browser-engines, standards
What’s New in Next.js 16 (tre)20563
nextjs
The Sky Is Falling, the Web Is Dead (ern/ted)20562
web, history
Mistakes I See Engineers Making in Their Code Reviews (sea)20561
code-reviews, processes, communication, mistakes
How to Write Clear and Effective Bug Reports That Everyone Loves20560
how-tos, bugs, documentation
The Edge Cases That Break Hearts (and Products) (lau/nng)20559
design, usability, accessibility, user-experience
The Curse of the Custom Cursor (mal)20558
cursors, design, accessibility
How Designers Become Builders and the Future of Tooling20557
videos, design, github
Directives and the Platform Boundary (tan/tan)20556
javascript, frameworks
High-Performance Syntax Highlighting With [the] CSS Highlights API20555
css, apis, syntax-highlighting
You Already Have a Git Server20554
git, servers, command-line
Code Like a Surgeon (geo)20553
ai
The Layered Aesthetic: Depth, Complexity, and Chaos Done Right (web)20552
design
CSS Animations That Leverage the Parent–Child Relationship (pre/css)20551
css, animations
What’s an Interactive Element? (mat)20550
html, focus, concepts
Introducing TanStack Start Middleware (ada/fro)20549
introductions, tanstack
Scrum Mistakes: What Teams Get Wrong and How to Fix It20548
scrum, agile, processes, releasing, mistakes
Atlas Ableism (ste)20547
chatgpt-atlas, browsers, accessibility, compliance
Your Tokens Have Become Infrastructure (mur)20546
design-tokens, design-systems
How to Create a Strong Design System and Survive: Case Study20545
how-tos, design-systems, case-studies, lessons
Container Queries and Units in Action (mia)20544
css, container-queries, units
Preparing for Verso and Beyond: Future-Proofing Your Frontend for New Browser Engines (ele/des)20543
guest-posts, verso, servo, browsers, browser-engines
Retrofitting a Design System Into an Existing Product20542
design-systems, consistency
A Brief History of Domains (pet)20541
web, history, domains, dns
Is It Time to Regulate React? (dbu)20540
react
NaN, the Not-a-Number Number That Isn’t NaN (wil/pic)20539
javascript
Does Your Site Need a /ai Page?20538
ai
Yes, Let’s Teach LLMs Accessibility, but Also Provide the Companies Using Them With Better Strategies (hdv)20537
ai, accessibility, advocacy
Meetings and Interruptions Are Still the Biggest Obstacles for Developers, Even With AI20536
productivity, collaboration
React vs. Backbone in 202520535
react, backbone, comparisons, frameworks
“Their History Is Just Erased”: Google Drops a Key Program for Boosting Women in Tech (cnn)20534
google, community
React and Remix Choose Different Futures20533
react, remix, simplicity, complexity, comparisons
Solved by Modern CSS: Section Layout (sha)20532
css, layout, grids, typography, liquid-design
CSS Layout: Flexbox, Grid, Media Queries, and Container Queries (rau)20531
css, layout, flexbox, grids, media-queries, container-queries, introductions
Error Handling—UX Design Patterns20530
user-experience, design, errors, forms
An Introduction to JavaScript Expressions (wil/css)20529
introductions, javascript
OpenAI, ARIA, and SEO: Making the Web Worse (aar)20528
chatgpt-atlas, openai, browsers, accessibility, aria, seo
The Charm of JavaScript: Boom Mics and Clown Shoes (wil+/iga)20527
podcasts, interviews, javascript
Build Your Own Database (nan)20526
guides, databases
The Hidden Costs of Bad Client Communication in Design Projects (and How to Fix Them)20525
business-relations, communication, collaboration, design
4 Unconventional Ways to Cast in TypeScript (pol)20524
typescript
Importing vs. Fetching JSON (jaf)20523
json, javascript, data-fetching, comparisons
Challenging the Idea of “Optional HTML” (mar)20522
guest-posts, html, minimalism
Solved by CSS Scroll State Queries: Hide a Header When Scrolling Down, Show It Again When Scrolling Up (bra)20521
css, scrolling
Introducing ChatGPT Atlas20520
introductions, chatgpt-atlas, browsers
Introducing ChatGPT Atlas (sim)20519
introductions, chatgpt-atlas, browsers
Fixing Temporal Input Styling in Safari (cfe)20518
forms, time, safari, browsers, css
CSS “@starting-style” Debugging Is Available in Chrome DevTools (bra)20517
css, transitions, debugging, dev-tools, chrome, browsers
Designers Often Do Invisible Work That Matters—Here’s How to Show It20516
design, user-experience, communication
Chasing “Done”: Why Software Never Ends—and Why That Matters (emb)20515
programming, maintenance, economics, processes
W3C Web Content Accessibility Guidelines 2.2 Approved as ISO/IEC International Standard (w3c)20514
accessibility, wcag, standards, w3c
How AI Works and How Users Think About It: Study Guide (nng)20513
guides, ai, training, link-lists
Next.js 16 (fee+)20512
release-notes, nextjs
My Highlights From the New Deno Deploy (phi/den)20511
deno, deploying
Why Accessibility Breaks Between Design and Development (a11)20510
accessibility, design, processes, collaboration, testing
How Senior Engineers Can Use AI for Real Impact20509
ai, architecture, debugging, code-reviews, refactoring
One Year With Next.js App Router—Why We’re Moving On20508
nextjs, react, routing, components, tooling
The Two Button Problem (chr/fro)20507
buttons, usability, design
My Work Is Human (doo)20506
ai, design, career
OpenAI Launches AI Web Browser ChatGPT Atlas—Here Is Everything We Know (eur)20505
openai, browsers, chatgpt-atlas
How to Fix Any Bug (dan)20504
how-tos, ai, debugging, react
Links and Anchors: Ancient HTML and JS Magic in Your Browser (cod/wea)20503
html, css, javascript, links
Rethinking Async Loops in JavaScript20502
javascript, loops, asynchrony
“URLPattern” Is Now Baseline Newly Available20501
urls, apis, javascript, web-platform, browsers, support
Build a Reusable Flutter Design System20500
design-systems, flutter
What State ARIA In? (tpg)20499
aria, html, accessibility
Now Is the Best Time to Break Into Tech (tre)20498
career
AI Doom Predictions Are Overhyped—Why Programmers Aren’t Going Anywhere20497
videos, ai, programming, career
Google Announces End of Many of Its [Privacy] Sandbox Technologies20496
google, privacy
Goodbye GIL—Exploring Free Threaded Python 3.14 (ada)20495
python, multithreading
An Opinionated Guide to Using AI Right Now (emo)20494
guides, ai, anthropic, google, openai
Glassworm: First Self-Propagating Worm Using Invisible Code Hits OpenVSX Marketplace20493
security, code-editors, vs-code
The CSS Reset, Again (paw)20492
css, resets
Why “NaN !== NaN” in JavaScript (and the IEEE 754 Story Behind It)20491
javascript, history, standards
Refactoring a Form to a Signal Form (tim)20490
refactoring, forms, angular, signals
Orion Browser by Kagi: Privacy-Centred Performance20489
orion, browsers, kagi, privacy, performance
CSS Finally Gets Inline Conditional Logic With New “if()” Function20488
css, functions, conditionals
I Used AI Every Day for a Year: Here’s What It Cost Me (jas)20487
ai, writing, career
Headers, Headings, and Titles (tem)20486
html, headings, comparisons, terminology
AI Is Revolutionizing User Testing in 2025—and Honestly, It’s About Time (web)20485
ai, usability, user-experience, testing
The Majority AI View (ani)20484
ai, communication
Is It Even Worth Learning to Code? (tre)20483
programming, learning, ai
How to Write an Accessibility Statement in 2025, With Examples (chr)20482
how-tos, accessibility, documentation, compliance, legal, examples
AI in UX: Achieve More With Less (boa/sma)20481
user-experience, design, ai, processes
50 Reasons to Build a Website (chr/fro)20480
web
Zero-Configuration Support for NestJS20479
vercel, nestjs
Implicit Labels Aren’t (cfe)20478
html, forms, labels
How to Audit Web Accessibility With [the] WAVE Extension20477
how-tos, accessibility, auditing, browser-extensions, wave, webaim
Claude for Code: How to Use Claude to Streamline Product Design Process20476
how-tos, claude, ai, design, processes
Improving the Trustworthiness of JavaScript on the Web20475
javascript, web-apps, security
Same-Document View Transitions Have Become Baseline Newly Available (bra)20474
css, view-transitions, browsers, support, web-platform
10 Niche Developer Tools You Didn’t Know Existed20473
tooling, link-lists, command-line, debugging, testing, documentation
The Hidden Cost of URL Design (ahm)20472
urls, routing, seo, principles
Making Context-Aware Components: How CSS “inherit()” Could Simplify Design Systems (stu)20471
components, css, functions, custom-properties
You’re a Real JavaScript Developer Only If…20470
javascript, career
Node.js 2025: What’s New and What’s Next (ruy)20469
slides, nodejs, outlooks
Do Backlinks Still Matter in AI Search? Insights From 1,000 Domains (sem)20468
ai, search, backlinks, links, metrics
Thirsty AI Mega Projects Raise Alarm in Some of Europe’s Driest Regions (sam/cnb)20467
ai, sustainability
Node.js v25.0.0 (Current) (raf/nod)20466
release-notes, nodejs
Release Notes for Safari Technology Preview 230 (jon/web)20465
release-notes, safari, browsers
Obituary: Farewell to robots.txt (1994–2025) (hei)20464
robotstxt, bots, search, internet-archive, ai
What Is Ollama? Complete Guide to Local AI Models (October 2025)20463
guides, ai, tooling
Are US Software Developers Worth the Premium?20462
hiring, economics
Writing an Emulator in JavaScript? (nik/nor)20461
videos, javascript
Secure Coding in JavaScript20460
javascript, frameworks, security
State of Developer Ecosystem Report 2025 (jet)20459
surveys, metrics
For Your Convenience, This CSS Will Self-Destruct (sco)20458
css, javascript, hiding
A Look Into Customizable HTML “select” Elements20457
forms, html, css
What’s Up in ES2027? (por/nor)20456
videos, ecmascript, javascript, outlooks
The Present and Potential Future of Progressive Image Rendering (jaf)20455
images, jpeg, png, webp, avif, jpeg-xl, pjpeg, comparisons, outlooks
Past Time for Passkeys (nor)20454
videos, passkeys, passwords, authentication, security
5 Things to Do to Avoid Prompt Treadmill When Crafting Design With AI20453
design, ai, prompting, processes
Weston Ruter on Unlocking WordPress Performance (wes+)20452
podcasts, interviews, wordpress, performance, link-lists
Page Headings Don’t Belong in the Header (tem)20451
html, headings, skip-links, accessibility
I Am Sorry, but Everyone Is Getting Syntax Highlighting Wrong (nik)20450
syntax-highlighting, information-design, plugins
Cisco: Most Companies Don’t Know What They’re Doing With AI (bra/the)20449
ai
Most Developers Can’t Answer These 11 Microservices Questions—Can You?20448
microservices, architecture
Sequential “linear()” Animation With n Elements (css/css)20447
css, functions, animations
How Are Engineering Leaders Approaching 2026 AI Tooling Budgets? (lau)20446
tooling, ai, economics, engineering-management