Life is about deciding who you are: Join us and decide to be for environmental protection, free education and generous social security, human rights and international law, and, of course, action against oppression and violence (starting with helping the people of occupied Palestine 🇵🇸). Hide

Frontend Dogma

News and Tools for Web Developers

Updated daily

Featured on Frontend Dogma? Help us help you, and whitelist your domain!

Articles and videos and books, people and projects and processes, tools and tips and tricks from the world of web development and design.

→ Stay up-to-date on all topics by various RSS feeds (main feed: only $12/year), on Mastodon, and on Bluesky (other channels)

Entry (Sources) and TopicsDate#
Popover API or Dialog API: Which to Choose? (zel/css)20,089
pop-overs, modals, apis, accessibility, javascript
Quick Tip: Hosting HTML/CSS/JS Demos From Source Code on GitHub Pages (cod)20,088
hosting, github-pages, tips-and-tricks
Configuration Collapse (nat)20,087
figma, components, configuration, props
Define the Theme Color for Safari 26 (gro)20,086
safari, apple, browsers, css
Claude Code vs. Cursor: Which AI IDE Wins for Real Development Work?20,085
claude, anthropic, cursor, ai, code-editors, comparisons
Yet Another Way to Center an (Absolute) Element (mon/css)20,084
css, centering
I Set Up My Own Web Server and Here’s What I Learned About nginx20,083
servers, nginx
CSS Snapshot 2026 (fri+/w3c)20,082
css, standards
Create Pages From JSON Files With Eleventy (san)20,081
eleventy, json, static-site-generation
The Pentagon Is Making a Mistake by Threatening Anthropic (bin)20,080
ai, anthropic
A Complete Guide to Bookmarklets (val/css)20,079
guides, bookmarklets, javascript, link-lists
The Rise of “Micro-Backends”: Why Frontend Devs Are Adopting Hono20,078
hono, express, comparisons, backend-for-frontend, architecture
Developer Experience at Scale—Lessons From Dropbox20,077
interviews, developer-experience, productivity, tooling, ai, lessons
CSS Masonry Layout Is Finally Coming: Native Grid Support Explained20,076
css, masonry, layout, examples
20,000 (fro)20,075
frontend-dogma
x86 CPU Made in CSS (reb)20,074
css, programming, functionality
Firefox 148 Brings Central AI Control and New Web Standards (hei)20,073
firefox, mozilla, browsers
How I Setup Production-Grade Deployment for My (Somewhat) Vibe-Coded App (mar/fro)20,072
deploying, aws
Web AI: Everything You Need to Know About On-Device AI for the Web20,071
ai
Getting Started With the Vercel AI SDK in Node.js20,070
introductions, nodejs, ai, vercel
Matt May Speaks (mat+)20,069
videos, interviews, accessibility, html, standards
Stop Using “/init” for AGENTS.md (add)20,068
ai, configuration, documentation
Sprites on the Web (jos)20,067
css, images, sprites, techniques
Standard HTML Video and Audio Lazy-Loading Is Coming (sco)20,066
html, multimedia, lazy-loading, standards, performance
Wasm vs. Javascript: Who Wins at a Million Rows? (the)20,065
webassembly, javascript, comparisons, performance
Why AI Is Exposing Design’s Craft Crisis20,064
ai, design, craft, figma, link-lists
My Malware Story Gets Stolen; Yet Another Argument for the IndieWeb (bre)20,063
malware, indieweb, licensing
Weird Issues With CSS Calculations in Safari 26.2 (cit)20,062
css, functions, safari, apple, browsers
Potentially Coming to a Browser “:near()” You (dxn/css)20,061
css, functions
WordPress 7.0 Beta 1 (wor)20,060
release-notes, wordpress
Big Tech Still Dreams of Mass Surveillance—Now People Are Pushing Back (tro/sal)20,059
privacy, amazon, google, ai
An Official* Logo for HTML (zac)20,058
html
Using the Browser’s “<canvas>” for Data Compression20,057
canvas, compression
A Web Revival: The Internet Didn’t Die, You’re Just Not on It20,056
videos, indieweb, web
An In-Depth Guide to Customising Lists With CSS (ric/pic)20,055
guides, css, lists
8 Things You Didn’t Know About Code Mode (bla)20,054
ai
Fastest Frontend Tooling for Humans and AI20,053
tech-stacks, tooling, typescript, developer-experience, optimization
Suffering From Bugs: How I Almost Deleted My Entire Project20,052
bugs, lessons
“border-shape”: The Future of the Non-Rectangular Web (una)20,051
css, shapes, borders
Vitest vs. Jest 2026: The Migration Guide With Real Benchmarks20,050
guides, migrating, vitest, jest, comparisons
Tailwind CSS v4: Container Queries and the Death of Media Queries20,049
tailwind, container-queries, media-queries, css
Claude Sonnet 4.6 vs. GPT-5: The 2026 Developer Benchmark20,048
claude, anthropic, openai, ai, comparisons, metrics, programming, documentation
Sometimes the Best Accessibility Fix Is a Usability Fix20,047
accessibility, usability
When Accessibility Demand Letters Land on Your Desk: A Framework for Strategic Response (dec)20,046
accessibility, strategies
Why Separate Guest and Logged in States Create Accessibility Barriers20,045
accessibility, authentication
Why You Need to Close Open Objects When Users Navigate Away20,044
accessibility, wcag
AI Is Giving Tech Companies Power That Once Belonged to Governments (res)20,043
ai, economics
5 CSS Fouls That I See Way Too Often (kev)20,042
videos, css
Distinguishing “Components” and “Utilities” in Tailwind (zel/css)20,041
tailwind, terminology
Analyst Reactions: How AI Is Reshaping Engineering Organizations20,040
ai, engineering-management
Web Development Is More Than Frontend and Backend (Here’s What Actually Matters)20,039
programming, career
Selectors Level 5 (fan+/w3c)20,038
css, selectors, standards
5 Source Map Best Practices for Frontend Production Deployments (ele/des)20,037
guest-posts, source-maps, javascript, best-practices
Europe Is Ready to Ditch US Tech for Private Alternatives (pro)20,036
tooling, privacy, security, metrics
Europeans Are Dangerously Reliant on US Tech—Now Is a Good Time to Build Our Own (joh/the)20,035
economics, policies, google, microsoft, amazon
We Cut Node.js’ Memory in Half (mco/pla)20,034
nodejs, v8, javascript, memory, metrics
Interop 2026 (geo/css)20,033
interoperability, web-platform, browsers, support, link-lists
Spiral Scrollytelling in CSS With “sibling-index()” (css)20,032
css, functions, scrolling, gsap
The Hidden Cost of AI Prototypes That Are Made to Die (uxd)20,031
prototyping, ai, design, product-management
How “Liquid Design” Broke the iPhone and Forced Apple’s Great Reset (web)20,030
design, usability, readability, liquid-glass, apple
Why It’s Important to Manually Test for Accessibility20,029
accessibility, testing
Style Headings Using the CSS “:heading” Pseudo-Class (stu)20,028
headings, css, selectors
Why WebAIM’s Report Only Found 6 Issues on a Million Pages20,027
videos, accessibility, webaim
Justifying “text-wrap: pretty”20,026
css, typography
A Programmer’s Loss of a Social Identity (rat)20,025
programming, career, community
JS-Heavy Approaches Are Not Compatible With Long-Term Performance Goals (ser)20,024
javascript, frameworks, performance, prioritization
Fun With TypeScript Generics (ada/fro)20,023
typescript, generics
Are We Having the Wrong AI Dreams? (jet)20,022
ai, outlooks
The EU Moves to Kill Infinite Scrolling (egr/pol)20,021
social-media, scrolling, legal
How to Debug the “@ starting-style” At-Rule in Polypane (pol)20,020
how-tos, debugging, css, animations, polypane, browsers
Virtual Scrolling for Billions of Rows—Techniques From HighTable (sev)20,019
html, tables, scrolling, performance, react
State of React 2025 [Results] (sac/dev)20,018
surveys, metrics, react
You Might Not Need “role="presentation"” (stv/pic)20,017
html, aria, accessibility
Interop 2026: Continuing to Improve the Web for Developers (rac/dev)20,016
interoperability, web-platform, browsers, support
Evaluating AGENTS.md: Are Repository-Level Context Files Helpful for Coding Agents? (ves+)20,015
studies, research, ai, ai-agents, documentation
Mastering Dialog Accessibility20,014
accessibility, modals, html, aria
Launching Interop 2026 (jaf/moz)20,013
interoperability, web-platform, browsers, support
Radix UI vs. Base UI (sha)20,012
react, libraries, radix, comparisons
The 80% Job: How Design Leads Are Using AI—and It’s Not About Mockups (uxd)20,011
design, ai, prototyping, communication, leadership, product-management, link-lists
What It Really Costs to Run a WordPress Website in 202620,010
wordpress, economics
Life After Figma Is Coming (and It Will Be Glorious) (jon)20,009
design, ai, tooling, figma
Designing for Agentic AI: Practical UX Patterns for Control, Consent, and Accountability (sma)20,008
design, user-experience, design-patterns, ai-agents, ai
ChatGPT Has 12% of Google’s Search Volume but Google Sends 190× More Traffic to Websites (ahr)20,007
traffic, search, chatgpt, google, metrics
How to Create a CSS-Only Elastic Text Effect (css/fro)20,006
how-tos, css, effects
Re-Creating a Pantone Color Deck in CSS (sto)20,005
css
Announcing TypeScript 6.0 Beta (dan/typ)20,004
typescript
Does Your Navigation Need an ARIA Menu? Probably Not (pop)20,003
accessibility, navigation, aria, keyboard-navigation
The Natural Design Process (uxd)20,002
design, processes
Building an Endless Procedural Snake With Three.js and WebGL (suj/cod)20,001
threejs, webgl, javascript
Shades of Halftone (max)20,000
effects, halftone
Polypane 28: Project Improvements, Elements Panel Updates, and Chromium 146 (pol)19,999
release-notes, polypane, browsers
The Software Sovereignty Scale (dri)19,998
foss, licensing, legal
It’s About to Get a Lot Easier for Your JavaScript to Clean Up After Itself (wil/pic)19,997
javascript, garbage-collection
The 2026 Frontend Dogma Survey (fro)19,996
frontend-dogma, surveys
Modern CSS Code Snippets19,995
websites, css, examples, comparisons
Design Is Dead, It’s All Evolution Now (ily)19,994
design, processes
Designing Useful Ads (uxd)19,993
design, monetization, ai
Emotional Design: Let’s Design for Silence (uxd)19,992
design
Background Patterns With CSS “corner-radius” (pre/fro)19,991
css, backgrounds, effects, examples
Vite, Rust, and the Future of JavaScript Tooling (eva+/bet)19,990
videos, interviews, vuejs, rust, javascript, oxc, bundling, tooling, ai
Trying to Make the Perfect Pie Chart in CSS (mon/css)19,989
css, html
Large Tech Companies Don’t Need Heroes (sea)19,988
processes, engineering-management, career
Underlining Links With CSS (stu)19,987
css, links
Definitive Guide to Multi-Threaded Rendering on the Web (hac)19,986
guides, dom, rendering
Why JavaScript Needs Structured Concurrency19,985
javascript, concurrency, asynchronicity
Interop 2025: A Year of Convergence (stu/web)19,984
interoperability, web-platform, browsers, retrospectives, metrics
Why Your Brain Rebels Against Redesigns—Even Good Ones (uxd)19,983
design, redesigning, link-lists
How Generative AI Is Redefining Brand Identity Systems19,982
ai, branding, design
How (and Why) to Stop Users From Selecting Text on Your Website19,981
css
The Browser Hates Surprises (fro)19,980
browsers, performance
The CSS Selection (ven/pro)19,979
css, metrics, studies, research
What to Expect in Angular 2219,978
angular
A New Meta Tag for Respecting Text Scaling on Mobile (mat)19,977
accessibility, metadata, scaling
Your Design System Needs an Enforcer (nng)19,976
design-systems, processes
The Return of the Intuitive Designer in the Age of AI (uxd)19,975
design, user-experience, ai
Git’s Magic Files (and)19,974
git, configuration
How to Use the “Auto” Value With “clamp()” (css)19,973
how-tos, css, functions
Accessibility Conformance Testing (ACT) Rules Format 1.1 (wil+/w3c)19,972
accessibility, compliance, testing, documentation
Minifier Benchmarks (j9t)19,971
minification, tooling, metrics, comparisons, html-minifier, htmlnano
CSS “@ scope”: An Alternative to Naming Conventions and Heavy Abstractions (sma)19,970
css, scope, naming
Measuring SVG Rendering Time (sto)19,969
svg, png, images, rendering, performance, web-vitals, metrics
How to Write Alt Text for News (sta/the)19,968
how-tos, alt-text, accessibility, images
Why Designers Secretly Love Constraints (Even When We Complain About Them) (web)19,967
design
Quick Tip: Do Not Replicate OS Behavior (nat)19,966
accessibility, tips-and-tricks
What’s New in ViteLand: January 2026 Recap (man/voi)19,965
release-notes, vite, vitest, rolldown, oxc
Clarity Is Not the Enemy of Depth (the)19,964
content, writing, accessibility
How to Improve Your HTML Game (j9t)19,963
how-tos, html, conformance, learning, career
Stop Installing Libraries: 10 Browser APIs That Already Solve Your Problems19,962
javascript, libraries, apis, web-platform
Introduction to the New HTML Element “<geolocation>” (mat)19,961
introductions, html, geolocation
[Webpack] Roadmap 2026 (eve)19,960
webpack
CSS Properties That Solve Annoying Problems (kev)19,959
videos, css
Building Bulletproof React Components19,958
react, components
How to Shoot a Screen Using a Board of Keys (mwi)19,957
screenshots, keyboard-shortcuts, history, apple
Introducing Deno Sandbox (tin/den)19,956
deno
State of JavaScript 2025 [Results] (sac/dev)19,955
surveys, metrics, javascript
Deno Deploy Is Generally Available (lca+/den)19,954
deno
Combobox vs. Multiselect vs. Listbox: How to Choose the Right One (vit/sma)19,953
how-tos, forms, design-patterns, comparisons
Nice Select (arg)19,952
forms, css
How Eleventy Survived: Funding, Growth, and Open Source Reality (zac+/fon)19,951
podcasts, interviews, eleventy, foss
A Percise Parser (rem)19,950
javascript, parsing
Elastic/Bouncy Text Effect (css)19,949
css, effects
Node.js Path Traversal: Prevention and Security Guide (loi)19,948
guides, nodejs, security
Implementing the Temporal Proposal in JavaScriptCore (you/iga)19,947
javascriptcore, javascript-engines, time
Accessible Design Is Digital Infrastructure (ann)19,946
accessibility, design
What’s Missing From the Web Platform? (wes+/syn)19,945
podcasts, web-platform, wish-lists
Performance-Optimized Video Embeds With Zero JavaScript (stf/fro)19,944
multimedia, performance
What Is JPEG XL: Do We Really Need Another Image Format? (aar/deb)19,943
jpeg-xl, images, quality, performance, metrics
Release Notes for Safari Technology Preview 236 (jon/web)19,942
release-notes, safari, apple, browsers
Building an RSS Aggregator With Astro (ray)19,941
astro, rss, syndication, functionality
Explicit Resource Management in JavaScript19,940
javascript
Stop Asking “Is This on Brand?”—It’s Killing Your Creativity (web)19,939
design, branding, creativity
Limiting Work in Progress Is a Superpower19,938
project-management, processes, productivity, agile, scrum
HTML Minifier Next 5, a Quick Upgrade Guide (j9t)19,937
guides, html-minifier
Selfish AI (cre)19,936
ai
The Indie Web Is Not Defined by Its Enemies (khu)19,935
indieweb, ai
Tim Cook Sold Apple’s Soul (kev)19,934
apple
Google Helped Israeli Military Contractor With AI, Whistleblower Alleges (was)19,933
google, ai, ethics, privacy
Repeatable Form Fields Made Simple (aar)19,932
forms, html, web-components
A Broken Heart (api)19,931
performance, fonts, emoji
My Opinionated ESLint Setup for Vue Projects (ale)19,930
eslint, configuration, vuejs
Tickering With Node.js Core on ARM64 Windows (joy)19,929
nodejs, building, windows, microsoft
When Design Stops Asking Why and Starts Asking, “Can AI Do It?” (uxd)19,928
design, ai, processes, quality
The Too Early Breakpoint (sha)19,927
css, layout
“WCAG Is Difficult to Read, Don’t Read It” Is a Self-Fulfilling Prophecy (yat)19,926
wcag, standards, accessibility
AI Agents Explained (tre)19,925
ai-agents, ai
Practical Use of AI Coding Tools for the Responsible Developer (ska/sma)19,924
ai, tooling, prompting
Announcing Rspress 2.019,923
release-notes
New to the Web Platform in January (rac/dev)19,922
release-notes, web-platform, browsers, firefox, mozilla, chrome, google
How the Same Content Always Has Multiple Different Versions19,921
accessibility, content, comparisons
React’s “ViewTransition” Element (chr/fro)19,920
react, view-transitions
Understanding Hydration in Frontend Frameworks: Definition, Challenges, and Optimization Strategies (ele/des)19,919
guest-posts, frameworks, hydration, optimization, concepts, strategies
The Design System Paradox: How Abstraction Can Hollow Out Quality (pjo/zer)19,918
design-systems, quality, training
How to Make an HTTP Request in Node.js (loi)19,917
how-tos, nodejs, http
Is Learning CSS a Waste of Time in 2026?19,916
css, learning, career, discussions
Vibe Prototyping Is a Double-Edged Sword (edd/uxd)19,915
prototyping, vibe-coding, ai, design
OpenJS Foundation Security Program: Annual Report 2025 (ope)19,914
openjs, security
Cryptography Usage in Web Standards (w3c)19,913
standards, cryptography, security
How Rolldown Works: High-Performance Code Splitting With Bitset Logic (atr)19,912
rolldown, bundling, code-splitting, performance
Why I Don’t Call Myself an Accessibility Expert19,911
accessibility, career
How an Accessibility Designer Adds Keyboard Shortcuts to a Web App (eri)19,910
web-apps, keyboard-shortcuts, accessibility
The Next Decade of UX: Why Psychology Matters More Than Ever (tbf/nng)19,909
videos, interviews, user-experience, design, outlooks
How to Design Great Alt Text: An Introduction (deq)19,908
how-tos, introductions, alt-text, images, accessibility
How to Style the New “::search-text” and Other Highlight-y Pseudo-Elements (dxn/css)19,907
how-tos, css, selectors
Introducing ReliCSS: A Tool for Front-End Archaeology (stu)19,906
introductions, tooling, css, auditing
AI’s Text-Trap: Moving Towards a More Interactive Future (uxd)19,905
ai, interaction-design, user-experience
A Year of Creator Wins: Highlights From the JetBrains Content Creators Program 2025 (jet)19,904
jetbrains, community
Are We Doing UX for AI the Right Way? (cxo/uxd)19,903
user-experience, design, conversational-design, ai, link-lists
7 Learnings From Anders Hejlsberg: The Architect Behind C# and TypeScript (git)19,902
lessons, scalability, typescript, foss, ai, collaboration
How AI Is Redefining the Way We Find Content (cle)19,901
ai, crawling, search, content, seo
Some Notes on Starting to Use Django (b0r)19,900
django
More Invoker Commands, and More Reasons Not to Use JavaScript Please (paw)19,899
html, examples
Unstacking CSS Stacking Contexts (sma)19,898
css, positioning
Try Text Scaling Support in Chrome Canary (jos)19,897
chrome, google, browsers, scaling, accessibility
We’re Creating a Knowledge Collapse and No One’s Talking About It19,896
ai, documentation, learning, career
Solving Shrinkwrap: New Experimental Technique (kiz)19,895
css, techniques
On the Need for Neutral Maintained Minifier Metrics (j9t)19,894
minification, tooling, html-minifier, htmlnano
Claude Code for Designers: A Practical Guide19,893
guides, design, claude, anthropic, ai
Design Systems Checklist (tyc)19,892
design-systems, checklists
9 Reasons to Choose Sketch in 2026 (fre/ske)19,891
sketch
Supporting Open Source in 2026: Why It Matters More Than Ever ($50,000) (mar/fro)19,890
foss, web-platform
Drawing Connections With CSS Anchor Positioning19,889
css, anchor-positioning
Improving Single Executable Application Building for Node.js (joy)19,888
nodejs
Density vs. Clarity: The Core Tension in Modern UI Design (web)19,887
design, information-design, minimalism, comparisons, figma
How Web Performance Impacts User Experience (deb)19,886
performance, user-experience, web-vitals, metrics
Why the Future of Design Is Less Flash and More Thought19,885
design, outlooks
There Is No Need to Trap Focus on a “dialog” Element (zel/css)19,884
modals, focus, accessibility
A Security Checklist for Your React and Next.js Apps (the)19,883
security, react, nextjs
Porting 100k Lines From TypeScript to Rust Using Claude Code in a Month (vje)19,882
migrating, typescript, rust, claude, anthropic, ai
SPAs Are a Performance Dead End (yeg)19,881
single-page-apps, performance
Using Maturity Models to Build Accessibility That Lasts (ted)19,880
accessibility
Figma Slots for Repeating Items (nat)19,879
figma, components
How to Use Font Ligatures19,878
how-tos, typography, fonts, tooling, adobe, figma, microsoft, css
npmx (dan/npm)19,877
websites, npm, packages
Software Design Principles That Matter19,876
software-design, principles, examples
6 Ways to Set Better Content Accessibility Goals in 202619,875
accessibility, processes
Anchor Interpolated Morph (AIM) (arg)19,874
css, animations, techniques
Responsive Hexagon Grid Using Modern CSS (css/css)19,873
css, functions, math, responsive-design
CSS Scope and Mixins (chr+/odd)19,872
videos, interviews, css, scope, mixins
Do We All See the Same Colors? (tba)19,871
colors, color-blindness, accessibility
Names Are Hard but They Don’t Have to Be (col)19,870
internationalization, naming, validation
Handling Breaking Changes in a Design System Without Causing Chaos (sha/zer)19,869
design-systems, maintenance, semver, communication
Understanding the Fundamentals of CSS Layout (pol)19,868
fundamentals, css, layout, grids, flexbox, positioning
The Context Collapse Problem19,867
ai, documentation
CSS Optical Illusions (alv)19,866
css, effects, examples
Claude’s New Constitution (ant)19,865
claude, anthropic, ai
Why Webflow Isn’t the Future—Yet (web)19,864
webflow, low-and-no-code
10 Digital Accessibility Predictions for 2026 (ons)19,863
accessibility, outlooks, wcag, career, ai, legal, assistive-tech
When Will CSS Grid Lanes Arrive? How Long Until We Can Use It? (jen/web)19,862
css, grids, masonry, layout
CTA Hierarchy in the Wild (jim)19,861
user-experience, buttons, youtube
10 Tips for Effective User Experience Evaluation19,860
user-experience, usability, content, design, testing, tips-and-tricks
Barriers From Links With ARIA (aar)19,859
accessibility, links, html, aria
The Conditionally Open Web (cor)19,858
open-web
Why Light-Weight Websites May One Day Save Your Life (mah)19,857
performance, accessibility, print, frameworks
How to Diagnose Lighthouse Score Discrepancies Between Tools (deb)19,856
how-tos, performance, lighthouse, google, tooling
Accessibility 101 and Core Concepts (kno)19,855
videos, accessibility, introductions, concepts
Floating Action Buttons Are Bad, and What to Do Instead (eri)19,854
buttons, usability, material-design, google
The Accessibility Manager Moment No One Warns You About19,853
accessibility, leadership, legal, communication
Securing npm Is Table Stakes (nza+/cha)19,852
podcasts, interviews, npm, security, ai
What Makes Generated UI Worth Keeping? (uxd)19,851
design, ai, branding, tooling
Demystifying Screen Reader Use for Manual Testing: Deneb Pulsipher and Kosi Asabere19,850
videos, accessibility, testing, screen-readers
CSS in 2026: The New Features Reshaping Frontend Development (log)19,849
css, functions
How to Favicon in 2026: Three Files That Fit Most Needs (sit/evi)19,848
how-tos, images, favicons
I Learned the First Rule of ARIA the Hard Way (css)19,847
accessibility, aria, semantics, html
Designing Beyond the Happy Path in Design Systems (ste/zer)19,846
design-systems, design
Developing Trustworthy Information (jma)19,845
writing, content, ai
Faking a Fieldset-Legend (tyl/clo)19,844
html, forms, css
Node.js 16 to 25 Performance Benchmarks19,843
nodejs, performance, metrics, comparisons
Lowering the Specificity of Multiple Rules at Once (mat)19,842
css, cascade
Inside Turbopack: Building Faster by Building Less (she+)19,841
turbopack, performance
A Brief History of Programming… (fir)19,840
videos, programming, history
Animating Responsive Grid Layout Transitions With GSAP Flip (cod)19,839
css, grids, layout, animations, gsap, plugins
Rethinking “Pixel Perfect” Web Design (ami/sma)19,838
design, quality
View Transitions and Playing Video (chr/fro)19,837
javascript, view-transitions, multimedia
AI’s Missing Ingredient (cwo)19,836
ai, vibe-coding, creativity, design
Some Thoughts on the Open Web (mno)19,835
open-web, web
Design Tokens With Confidence (luk/uxd)19,834
design-tokens, json, css
What Figma Got Wrong About Design Systems (web)19,833
figma, design-systems
The State of WebAssembly—2025 and 2026 (uno)19,832
webassembly, retrospectives, outlooks
“Code Only” Props in Figma (nat)19,831
figma, props
What Design Leaders Must Unlearn to Lead in an AI-First World (uxd)19,830
design, leadership, ai
Design in Code, Get Praise (ada)19,829
design, processes, communication
How to Build a WordPress Block Theme19,828
how-tos, wordpress, theming
Vercel vs. Netlify vs. Cloudflare: Serverless Cold Starts Compared19,827
vercel, netlify, cloudflare, serverless, comparisons, metrics
jQuery 4.0.0 (tim/jqu)19,826
jquery, release-notes
AdonisJS v7 Is Feature-Complete and Entering Final Validation (vir/ado)19,825
release-notes, adonisjs
ASCII Characters Are Not Pixels: A Deep Dive Into ASCII Rendering19,824
deep-dives, ascii, rendering
When Design Kills Usability—Meet the Custom Cursor (mal)19,823
videos, design, usability, cursors
Chrome 145 Adds Experimental Support for Vertical Tabs (bra)19,822
chrome, google, browsers
Better Defaults for Popovers (mat)19,821
pop-overs, css, resets
State of UX 2026: Design Deeper to Differentiate (nng)19,820
user-experience, design, outlooks, career, ai
PWA (htt)19,819
web-almanac, studies, research, metrics, progressive-web-apps, web-apps, web-workers
Ecommerce (htt)19,818
web-almanac, studies, research, metrics, ecommerce, tooling, performance, web-vitals, lighthouse
The Astro Technology Company Joins Cloudflare (ast)19,817
astro, cloudflare
CMS (htt)19,816
web-almanac, studies, research, metrics, content-management, tooling, wordpress, user-experience, performance, web-vitals, lighthouse, apis
Security (vik+/htt)19,815
web-almanac, studies, research, metrics, security, tls, certificates, cookies, csp, http-headers, apis, sanitization, configuration
On Coding Agents and the Future of Design (jef)19,814
ai, ai-agents, design, outlooks
Software as Fast Fashion (tan)19,813
programming, ai, sustainability, economics
Fonts (htt)19,812
web-almanac, studies, research, metrics, fonts, performance, css
The Missing Link for Web Components (kin/fro)19,811
web-components, typescript, json, mcp, ai, tooling
Building a Scroll-Driven Dual-Wave Text Animation With GSAP (cod)19,810
gsap, animations, scrolling
The Incredible Overcomplexity of the Shadcn Radio Button (pau)19,809
html, forms, complexity
Performance (25p+/htt)19,808
web-almanac, studies, research, metrics, performance, web-vitals, hints, speculation
Third Parties (htt)19,807
web-almanac, studies, research, metrics, embed-code
Using “100vw” Is Now Scrollbar-Aware (in Chrome 145+, Under the Right Conditions) (bra)19,806
css, units, scrolling, chrome, google, browsers
Accessibility (bog+/htt)19,805
web-almanac, studies, research, metrics, accessibility, colors, contrast, zooming, scaling, internationalization, keyboard-navigation, skip-links, forms, labels, placeholders, multimedia, images, aria, overlays, ai
Why Designers Are the New Bureaucrats (web)19,804
design, processes
Accessible Faux-Nested Interactive Controls (eri/pic)19,803
accessibility, conformance, html, nesting
Privacy (htt)19,802
web-almanac, studies, research, metrics, privacy, legal, consent-management, do-not-track
Generative AI (chr+/htt)19,801
web-almanac, studies, research, metrics, ai, robotstxt, llmstxt
WebAssembly (htt)19,800
web-almanac, studies, research, metrics, webassembly
CDN (htt)19,799
web-almanac, studies, research, metrics, content-delivery, http, performance, http-headers, compression, tls, hints
Usability Heuristics and Competition in Games (uxd)19,798
usability, heuristics, design, aesthetics
SEO (htt)19,797
web-almanac, studies, research, metrics, seo, robotstxt, llmstxt, links, content, structured-data, amp, html, internationalization
Cookies (htt)19,796
web-almanac, studies, research, metrics, cookies
Page Weight (bar+/htt)19,795
web-almanac, studies, research, metrics, performance, web-vitals, lighthouse, google
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability (ric/the)19,794
tailwind, comparisons, css-in-js, maintainability, css, javascript
So You Think Your Website Is Doing Great (cit)19,793
html, javascript, css, quality
Beyond Manual Audits: How Automation Strengthens Accessibility (equ)19,792
accessibility, auditing, automation, wcag
Making GitHub Actions Suck a Little Less19,791
github-actions
Node.js January 2026 Security Release: What Changed and Why It Matters (nod)19,790
nodejs, security
The “Senior Developer” Is Now the New “Entry Level”19,789
career, ai
Smashing Animations: Theming Animations Using CSS Relative Colour (mal/sma)19,788
animations, colors, theming, css
The Unhinged World of Tech in 2026… (fir)19,787
videos, outlooks, ai, javascript
Live Region Support (aar)19,786
accessibility, live-regions, support, screen-readers, nvda, jaws, voiceover
Everything You Need to Know About Ruby 4.0 (hon)19,785
ruby
EPUB and HTML—Survey Results and Next Steps (rei/w3c)19,784
surveys, epub, html
ARIA Roles Can Remove Their Children’s Semantics (ste)19,783
html, aria, semantics, accessibility
Traditional Code Review Is Dead: What Comes Next? (the)19,782
code-reviews, ai, processes, infrastructure, scalability
18 Predictions for 202619,781
outlooks, ai, usability, user-experience
Introducing the “<geolocation>” HTML Element (tom+/dev)19,780
introductions, html, geolocation, chrome, google, browsers
The Invisible Work (hvp)19,779
leadership, productivity, processes
Mitigating Denial-of-Service Vulnerability From Unrecoverable Stack Space Exhaustion for React, Next.js, and APM Users (mco+/nod)19,778
nodejs, security, vulnerabilities, react, nextjs, tooling, monitoring, performance
Tuesday, January 13, 2026 Security Releases (nod)19,777
release-notes, nodejs, security
Simulating Crop Marks (chr/fro)19,776
css
Astro 6 Beta (mat)19,775
release-notes, astro
Just the Browser (cor)19,774
websites, browsers, chrome, google, firefox, mozilla, edge, microsoft
Design Systems and Shareable Browser Support (rob)19,773
design-systems, browsers, browserslist, support
A Polyfill for the HTML “switch” Element (tom)19,772
html, forms, polyfills
Solid.js Best Practices (bre)19,771
solidjs, best-practices, examples
Is There Too Much Design in Design Systems? (sha)19,770
design, design-systems
Don’t Start With AI, Start With the Problem (cal/nng)19,769
videos, ai, processes
Aspire for JavaScript Developers (dav/mic)19,768
tooling, javascript, typescript
Manufacturing as Code Is the Future, and the Future Is Now19,767
programming, outlooks
OpenCode vs. Claude Code (bui)19,766
opencode, claude, anthropic, ai, comparisons
Stop Turning Everything Into Arrays (and Do Less Work Instead)19,765
javascript, methods, arrays
SVG Filters Are Just Amazing (ami)19,764
svg, filters
Focus Rings With Nested “contrast-color()”? (dav)19,763
css, selectors, functions, focus, contrast
Stop Using MySQL in 2026, It Is Not True Open Source (ott)19,762
mysql
Don’t Fall Into the Anti-AI Hype (ant)19,761
ai, career
How Wrong Can a JavaScript Date Calculation Go? (phi)19,760
javascript, time, apis
On Abbreviating Accessibility (ons)19,759
accessibility, microcontent
What Is the Minimum Markup Needed to Create a Modal?19,758
modals, minimalism, html, css, accessibility
Prompt Engineering Won’t Fix Your Architecture19,757
architecture, ai
How to Steal Any React Component19,756
react, components
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)19,755
mobile, javascript, animations
Death to Scroll Fade (dbu)19,754
scrolling, effects, performance
How Markdown Took Over the World (ani)19,753
markdown, web
Not All Browser APIs Are “Web” APIs (pol)19,752
apis
Brief Note on Application Keyboard Shortcuts (aar)19,751
accessibility, keyboard-shortcuts, screen-readers
Your Brand Just Evolved: The Rise of AI-Generated Identities (web)19,750
design, branding, ai
Very Good Components (bee)19,749
websites, components, html
Popover Context Menus With Anchor Positioning (chr/fro)19,748
css, tooltips, pop-overs, anchor-positioning
Node.js Package Configuration Guide (nod)19,747
guides, packages, dependencies, configuration, commonjs, esm
Judging Severity in Accessibility Issues (joe)19,746
accessibility
What Makes a Good Tech Meet-Up?19,745
discussions, community
A Data Model for Git (and Other Docs Updates) (b0r)19,744
git
Async React19,743
videos, react, asynchronicity
Exploring React Performance (en-)19,742
videos, react, performance
Profiling With React Performance Tracks19,741
videos, react, profiling, performance
Designing Page Transitions19,740
videos, design, transitions, effects
Software Is Culture (fig)19,739
culture
2026 Accessibility Hiring Looks Busy, Yet the Patterns Show Underlying Weakness19,738
accessibility, career
Common Misconceptions About Testing Accessibility (tet)19,737
accessibility, testing
Modern Emails Using React19,736
videos, email, react
Date Is Out, Temporal Is In (wil/pic)19,735
javascript, time
Ethical and Resilient Blog Hosting (pad)19,734
hosting, blogging, ethics
npm to Implement Staged Publishing After Turbulent Shift Off Classic Tokens (sar/soc)19,733
npm, dependencies, security, github
Web Dependencies Are Broken—Can We Fix Them? (lea)19,732
dependencies, javascript, import-maps, web-platform
4 CSS Features Every Front-End Developer Should Know in 2026 (arg)19,731
css, functions, scrolling
Designing With AI-Readable Design Systems in Cursor (uxd)19,730
design, design-systems, ai, cursor, code-editors
5 Accessibility Checks to Run on Every Component (hdv/zer)19,729
accessibility, components, testing, keyboard-navigation, design-tokens, microcontent, zooming, screen-readers
Google Broke My Heart (per)19,728
google, search, licensing, legal
2025 JavaScript Rising Stars19,727
javascript, frameworks, libraries, react, vuejs, tooling, ai, mobile, desktop, state-management, css-in-js, testing, static-site-generation, graphql, retrospectives
How to Create a Pixel-to-Voxel Video Drop Effect With Three.js and Rapier (cod)19,726
how-tos, javascript, effects, tooling, gsap, threejs
We Fixed a 6-Year-Old JavaScript Memory Leak (deb)19,725
javascript, memory
JavaScript Frameworks—Heading Into 2026 (rya/thi)19,724
javascript, frameworks, outlooks, ai
How I Evaluate an ACR (VPAT) (aar)19,723
accessibility, compliance, vpat-acr, processes
Claude Devs Complain About Surprise Usage Limits, Anthropic Blames Expiring Bonus (tho/the)19,722
claude, anthropic, ai
Eric Bailey’s Predictions for the Future of Accessibility (eri)19,721
accessibility, outlooks
Streaming JSON in Just 200 Lines of JavaScript19,720
streaming, json, javascript
Anna Thielke’s Predictions for the Future of Accessibility19,719
accessibility, outlooks
Damian Sian’s Predictions for the Future of Accessibility19,718
accessibility, outlooks
Kai Wong’s Predictions for the Future of Accessibility19,717
accessibility, outlooks
The Nine Levels of JavaScript Dependency Hell (and)19,716
javascript, dependencies, maintainability
Pre-Tenuring in V8 (win)19,715
v8, javascript-engines
How to “@ scope” CSS Now That It’s Baseline (dxn/fro)19,714
css, scope, examples
I Built an App in Every Frontend Framework19,713
frameworks, libraries, react, vuejs, svelte, angular, lit, marko, jquery, alpinejs, solidjs, astro, qwik, comparisons
How GitHub Monopoly Is Destroying the Open Source Ecosystem (plo)19,712
foss, github, microsoft
WASI 1.0: You Won’t Know When WebAssembly Is Everywhere in 2026 (the)19,711
webassembly, components, standards
The Next Two Years of Software Engineering (add)19,710
programming, career, outlooks, ai
V7: Typographic Scales and Technical Pens19,709
design, typography, css, case-studies
How Browsers Work (dmy)19,708
websites, guides, browsers, urls, http, tcp, html, dom
TIL: Why ARM Has a JavaScript Instruction19,707
javascript
Sounds on the Web19,706
web, multimedia
21 Lessons From 14 Years at Google (add)19,705
lessons, google, career
Web Development Is Fun Again19,704
ai, creativity
The Package Management Landscape (and)19,703
dependencies, tooling, overviews, link-lists
The Code Review That Cost $2 Million19,702
code-reviews, economics, ai
Managing Infrastructure Across Multiple Environments19,701
infrastructure, dev-ops, maintenance
Building a JavaScript Runtime in One Month (the)19,700
javascript, runtimes, functionality
10 UX Design Shifts You Can’t Ignore in 2026 (uxd)19,699
design, user-experience, ai, outlooks
2026: The Year of My Website (the)19,698
indieweb, social-media
Security Basics for Vibe-Coders (owe/pro)19,697
fundamentals, security, vibe-coding, ai
A Website to Destroy All Websites (hen)19,696
web, indieweb
JavaScript’s “for…of” Loops Are Actually Fast19,695
javascript, loops, performance
“!important” and CSS Custom Properties (chr/fro)19,694
css, custom-properties, cascade
On Using IndieWeb Protocols Like Webmentions and Keeping Your Website Separate From Social Media (pat)19,693
indieweb, webmentions, social-media
Teaching Agents About Performance Insights (web/per)19,692
performance, ai, ai-agents
Chrome DevTools Features I Use All the Time (and Why You Should Too) (kee/per)19,691
dev-tools, chrome, google, browsers, performance, accessibility, lighthouse, network, embed-code
What Happened to WebAssembly (emn)19,690
webassembly
More Efficiency, More Demand19,689
efficiency, ai, career
Building the Brain of Your Accessibility AI (ted)19,688
accessibility, ai
The Curious Case of the Shallow Session SPAs (sli/per)19,687
performance, single-page-apps, javascript, frameworks, metrics
From Theory to Tiny: Implementing Compression Dictionaries (rya/per)19,686
performance, compression, content-delivery
How Can You Tell What’s Allowed Inside Each HTML Element?19,685
html, conformance
Touch Targets and Web Accessibility19,684
accessibility, touch
Testing Methods: Status Messages (dec)19,683
accessibility, testing, wcag, notifications, link-lists
What’s !important: Conditional View Transitions, CSS/SVG Text Effects, the Best of CSS Bluesky, and More (dxn/css)19,682
css, retrospectives
8 Predictions for 2026: What Comes Next in AI? (phi)19,681
ai, outlooks
The 8 Trends That Will Define Web Development in 2026 (log)19,680
trends, outlooks, ai, frameworks, tanstack, typescript, edge-computing, presentational-html
Testing Methods: Name, Role, Value (dec)19,679
accessibility, testing, wcag, aria, link-lists
HTML Content Categories19,678
html, semantics
How to Design for (and With) Deaf People (vit/sma)19,677
how-tos, design, accessibility
7 Steps of a Web Performance Journey (ser/per)19,676
performance, processes
Introducing Flint (jos)19,675
introductions, tooling, linting
7 Real Predictions for Web Design in 2026 (web)19,674
design, outlooks, ai, aesthetics
“Why Do You Code?”—a Surprisingly Hard Question19,673
discussions, programming, career
Why Developers Are Ditching Frameworks for Vanilla JavaScript (the)19,672
frameworks, javascript, apis, performance, micro-frontends, architecture
Opening and Closing Dialogs Without JavaScript Using HTML Invoker Commands (sch)19,671
modals, html
Reliability by Design (uxd)19,670
design, ai, link-lists
pnpm in 2025 (koc/pnp)19,669
pnpm, retrospectives
Third Parties and Single Points of Failure (pau/per)19,668
performance, embed-code, metrics
How I Write Custom Elements With “lit-html” (fro)19,667
web-components, lit
How to Dynamically Install Custom Elements (hey)19,666
how-tos, web-components, naming, javascript
Testing Methods: Accessible Authentication (Enhanced) (dec)19,665
accessibility, testing, wcag, authentication, security
The Final Nail in the HTML5 Document Outline Coffin (tem)19,664
html, headings, accessibility
Tests for CSS Generated Content Alternative Text19,663
css, generated-content, alt-text, accessibility, support, voiceover, nvda, jaws, screen-readers
Testing Methods: Accessible Authentication (Minimum) (dec)19,662
accessibility, testing, wcag, authentication, security
Tips for Making the Performance Panel Less Overwhelming (duf/per)19,661
performance, dev-tools, browsers, chrome, google, tips-and-tricks
JavaScript Creator Warns Against “Rushed Web UX Over Native” as Windows 11 Leans Harder on WebView2 and Electron (win)19,660
windows, microsoft, web-apps, electron
Testing Methods: Redundant Entry (dec)19,659
accessibility, testing, wcag, forms
Trends That Defined JavaScript in 2025 (low/the)19,658
javascript, trends, retrospectives, react, frameworks, tooling, ai
Chrome DevTools for Debugging Web Performance (nuc/per)19,657
performance, debugging, dev-tools, chrome, google, browsers
You Can’t Design Software You Don’t Work On (sea)19,656
software-design, architecture
Testing Methods: Error Prevention (All) (dec)19,655
accessibility, testing, wcag, errors
Revisiting HTML Streaming for Modern Web Performance (per)19,654
performance, html, streaming
The Most Dangerous Person on Your Team Is “Dave” (and He Just Quit) (hac)19,653
collaboration, documentation, ai, prompting
The Cost of Consistency: Avoiding Design System Bottlenecks (omi)19,652
design-systems, consistency, lessons, angular
Testing Methods: Help (dec)19,651
accessibility, testing, wcag
Chasing BFCache Navigations (per)19,650
performance, bfcache, caching
How to Stay Ahead of AI as an Early-Career Engineer (gwe/iee)19,649
how-tos, career, ai
Ruby Turns 30: A Celebration of Code, Community, and Creativity (jet)19,648
ruby, ruby-on-rails, history, anniversaries
Nobody Knows How Large Software Products Work (sea)19,647
programming, software-design, complexity, maintainability
TTFB Doesn’t Mean What You Think It Means (pro/per)19,646
performance, concepts, http
The Three Semantics of HTML (mat)19,645
html, semantics
Node.js in 2026 with Rafael Gonzaga (raf)19,644
podcasts, interviews, nodejs, outlooks
Why Object of Arrays (SoA Pattern) Beat Interleaved Arrays: A JavaScript Performance Rabbit Hole19,643
javascript, performance, arrays
Fixing TypeScript Performance Problems: A Case Study (vig)19,642
typescript, performance, case-studies
Testing Methods: Error Suggestion (dec)19,641
accessibility, testing, wcag, errors, link-lists
For the Love of “<details>” (dev/mat)19,640
disclosure-widgets, html
Web Components Are the Comeback Nobody Saw Coming (the)19,639
web-components, frameworks, developer-experience
Fixing the URL Params Performance Penalty (tun/per)19,638
performance, urls, caching, http-headers, examples
The AI Divide19,637
ai, studies, research
The Two Most Important Tools for HTML Developers19,636
tooling, html, conformance, minification, html-minifier, htmlnano
Five Accessibility Trends to Watch in 202619,635
accessibility, trends
Testing Methods: Labels or Instructions (dec)19,634
accessibility, testing, wcag, labels, forms, link-lists
2026 Predictions: The Next Big Shifts in Web Accessibility (web)19,633
accessibility, outlooks, ai, wcag, html
Optimizing for 75% Is Fine—Optimizing for 90% Is Where It Gets Interesting (jor/per)19,632
performance, web-vitals, optimization
The HTML Elements Time Forgot (val/mat)19,631
html, history
A Year of Vibes (mit)19,630
ai, retrospectives, wish-lists
“text-decoration-inset” Is Like Padding for Text Decorations (dxn/css)19,629
css
Did You Know Some ARIA Roles Remove Child Semantics?19,628
html, aria, semantics, accessibility
Testing Methods: Error Identification (dec)19,627
accessibility, testing, wcag, errors, link-lists
Insights From 100 Site Speed Reviews in 2025 (per)19,626
performance, retrospectives
Styling by Language: Using the “lang” Attribute for Multilingual Design (mat)19,625
html, internationalization, css
The Many Lives of the Page Title (kat/mat)19,624
html, user-experience, accessibility, wcag
Optimizing CLS for Infinite Scroll and Load More (ver/per)19,623
performance, web-vitals, scrolling, optimization
8 PostgreSQL Tricks (kem)19,622
postgresql, databases, tips-and-tricks
Testing Methods: Consistent Help (dec)19,621
accessibility, testing, wcag, consistency
Tech Talk: Improving Window Resize Behavior (ele)19,620
electron, resizing, debugging, case-studies
Accessibility Is Personal (css)19,619
accessibility, html
The Anatomy of an Accessible Text Field (ink)19,618
forms, accessibility, html, labels
Early Signs of EAA Enforcement Across Europe (deq)19,617
accessibility, eaa, legal, compliance
Testing Methods: Change on Request (dec)19,616
accessibility, testing, wcag, link-lists
Introducing CSS Grid Lanes (jen+/web)19,615
introductions, css, masonry, layout
Masonry Layout Is Now Grid-Lanes (sun/css)19,614
css, layout, masonry
5 Terminal Commands That Saved Me Hours of Clicking19,613
command-line, productivity
Targeting by Reference in the Shadow DOM (mey)19,612
shadow-dom, html, javascript
Design Wrapped 2025 (uxd)19,611
design, retrospectives
Semantics Beyond the Tag Name (kno/mat)19,610
html, attributes, aria, semantics, accessibility
A Short History of Performance Engineering (per)19,609
performance, history
A Decade of Accessibility Weekly (dav)19,608
accessibility, retrospectives
Understanding Don Norman’s Principles of Interaction19,607
design, interaction-design, usability
Open-Source Funding: Do We Need a “No Maintenance” Month? (j9t)19,606
foss, economics, community
Web UX: Study Guide (nng)19,605
guides, user-experience, usability, training, link-lists
The Anatomy of LCP—a Deep Dive Into Sub-Parts (per)19,604
deep-dives, performance, web-vitals, tooling
Forms Are a Badly Designed Part of HTML (jen/mat)19,603
html, forms, standards
4 AI-Powered, No-Code Tools to Speed Up Your Frontend Workflow in 2026 (ele/des)19,602
guest-posts, ai, low-and-no-code, tooling, productivity
You Can’t Opt-Out of Accessibility (val)19,601
accessibility, design, legal
Beyond Components: From Design System to Design Language System19,600
design-systems, components, link-lists
Directional CSS With “scroll-state(scrolled)” (una)19,599
css, functions, scrolling
Testing Methods: Consistent Navigation (dec)19,598
accessibility, testing, wcag, navigation, consistency
How “aria-labelledby” Really Works19,597
accessibility, aria, attributes, html
Warp Speed to Accessibility: Fast-Tracking Inclusive Testing (a11)19,596
videos, accessibility, testing
Dialog View Transitions (med)19,595
modals, javascript, view-transitions
Your Post Is Cool, but Is It Accessible and Inclusive? (a11)19,594
videos, accessibility
3 Color Contrast Mistakes Designers Still Make (uxd)19,593
contrast, colors, images, wcag, accessibility, mistakes
The Rise of the Invisible Designer (web)19,592
design
What Continuous Improvement Model Is Best for Accessibility?19,591
accessibility, processes
Don’t Leave the Screen Reader Hungry (ger/mat)19,590
html, emoji, screen-readers, accessibility