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 that they be respected. Hide

Frontend Dogma

News and Tools for Web Developers, 1990s to Now (7)

→ 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#
Why I Ditched Docker for Podman (and You Should Too)19450
docker, podman, migrating
Don’t Inherit the Box Model (mia/odd)19449
css, box-model
Accessible Writing Techniques for Web Content (a11)19448
accessibility, writing, content, techniques
You Don’t Need Animations (emi)19447
animations, design
The Fundamentals of CSS Alignment (css)19446
fundamentals, css, alignment, examples
Functional Custom Elements the Easy Way (gin/pic)19445
web-components, javascript
Release Notes for Safari Technology Preview 227 (jon/web)19444
release-notes, safari, browsers
Who’s Funding Open Source in 2025? A Guide for Maintainers (eli)19443
guides, foss, monetization, economics
CORS Explained: Stop Struggling With Cross-Origin Errors19442
security, cors, http-headers, http
Baby Steps Accessibility—Color Contrast of Text (dec)19441
accessibility, colors, contrast, wcag
Advanced PostgreSQL Indexing: Multi-Key Queries and Performance Optimization (ada/fro)19440
databases, postgresql, performance, optimization
.htaccess: A Helper Script to Easily Block Website Traffic by Country (j9t)19439
apache, servers, traffic, tooling, advocacy
15 Ways Your Website Loads From Google Search and How to Measure Each One (paw)19438
google, search, speculation, signed-exchanges, amp, performance
What the Internet Was Like in 1999 (ric)19437
web, history, microsoft, netscape, google, blogging, syndication
Vibe Design for Designers19436
design, ai
UDP in Node.js: Deep Technical Guide (pav)19435
guides, nodejs, protocols
How OpenJS-Hosted Projects Benefit From Security Support (ope)19434
openjs, hosting, security, foss
The Last Days of Social Media (jam/noe)19433
social-media, ai
Testing Methods: Low or No Background Audio (dec)19432
accessibility, testing, multimedia, wcag
No, You Don’t Want to Hire “the Best Engineers” (oth)19431
hiring, engineering-management
Learning Web Development: Asynchronous JavaScript—Promises and “async” Functions (rau)19430
javascript, asynchronicity, promises, functions
Why You Should Test Your Page Without JavaScript19429
javascript, support, progressive-enhancement, accessibility
Why Did I Ever Abandon HTML/CSS? (syl)19428
html, css
What We Actually Know About Optimizing for LLM Search (lou/ahr)19427
ai, search, optimization, seo
The Most Popular Python Frameworks and Libraries in 2025 (jet)19426
python, frameworks, libraries, django, comparisons
Should the CSS “light-dark()” Function Support More Than Light and Dark Values? (sun/css)19425
css, functions, dark-mode
Google Chrome at 17—a History of Our Browser (add)19424
chrome, google, browsers, history, anniversaries
The Design of Shallow Thinking19423
design, web, retrospectives
Design Is a Conversation19422
design, communication, ai
How to Minimize Legal Risks in Accessibility Compliance (nat)19421
how-tos, accessibility, compliance, legal
How Designing for Disability Benefits Everyone19420
accessibility, history, economics
Anatomy of Good Icons (nng)19419
videos, icons, images, design
We Used AI to Compare and Demo 6 JavaScript Charting Libraries (kyl+/web)19418
videos, javascript, libraries, visualization, comparisons, ai
Why Inclusive Products Are Green Products (tet)19417
accessibility, dei, principles, user-experience, consistency, sustainability
Who Owns the Web Now? Centralization vs. Decentralization in the Age of AI (web)19416
web, ai, web-2.0
Introduction to Postgres Indexes (ada/fro)19415
introductions, databases, postgresql
Best LLM Visibility Trackers for 2025: Track Your Brand in AI Search19414
ai, branding, tooling, comparisons
NodeBook19413
websites, books, nodejs, runtimes
My AI Predictions for 202719412
ai, outlooks
Thoughts on Object Creation (fra)19411
programming, software-design-patterns, oop
CSS Overrides Without “!important” Using Layers in Astro Components (jle/cod)19410
astro, components, css, cascade
Learning Web Development: JSON and Processing Files in Node.js (rau)19409
javascript, json, nodejs, arrays, objects
Focus on the People That Make Things Happen (tem)19408
accessibility, culture, processes
Why Do Browsers Throttle JavaScript Timers? (nol)19407
javascript, time, browsers
How Senior Frontend Developers Think About React Architecture19406
react, components, architecture
7 Top 2025 Web Design Trends19405
design, trends, simplicity, performance, dark-mode, accessibility, ai, content
The Git Workflow That Eliminated Merge Conflicts Forever19404
git, version-control, processes
9 JavaScript Patterns I Wish I Used Earlier19403
javascript, software-design-patterns
Learning Web Development: JavaScript Maps (rau)19402
javascript
The “-path” of Least Resistance II (ami/fro)19401
css, clipping
Vibe Coding Is Not the Same as AI-Assisted Engineering (add)19400
ai, vibe-coding, processes, software-design
Can Design Make You Healthier? Inside the Architecture of Wellness (wal)19399
design
Tricks to Write HTML and CSS 10× Faster (jay)19398
html, css, efficiency, tips-and-tricks
A Complete Guide to HTTP Caching (jon)19397
guides, http, caching, performance
Prompting Is a Design Act: How to Brief, Guide, and Iterate With AI (sma)19396
ai, prompting, design
Learning Web Development: JavaScript Exceptions (rau)19395
javascript, errors
JavaScript’s Trademark Problem (rau)19394
javascript, oracle, legal, deno
VS Code Tips—How to Restore Deleted Files Easily Using Local History (zor/css)19393
videos, how-tos, vs-code, code-editors, tips-and-tricks
Added Support for WebP Images19392
webp, images, github
Partytown: Optimize Third Party Scripts With Web Workers (jac/deb)19391
libraries, embed-code, web-workers, performance, optimization
Do the Simplest Thing That Could Possibly Work (sea)19390
simplicity, software-design, prioritization
Why You Absolutely Need to Have Automated Dependency Management in Place (j9t)19389
dependencies, maintainability, maintenance, security, automation, tooling
Should You Preload Fonts for Performance? (erw)19388
performance, preloading, fonts
Learning Web Development: Plain Objects in JavaScript (rau)19387
javascript, objects
10 CSS Features I’ve Found Really Useful19386
css
The History of Themeable User Interfaces (bra)19385
design, theming, history
You No Longer Need JavaScript (reb)19384
javascript, css, html, examples
Why Digital Accessibility Starts Within: Lessons From Crystal Preston-Watson (tri/hac)19383
accessibility, lessons
The Basics of Anchor Positioning (sha)19382
fundamentals, css, anchor-positioning
Python: The Documentary (cul)19381
videos, python, history
Open Source Is One Person (jos)19380
foss, community, economics
The “-path” of Least Resistance (ami/fro)19379
css, clipping
Learning Web Development: Modules and Testing in JavaScript (rau)19378
javascript, modules, testing
Designing for Discovery: Why AI and Accessibility Are Now UX Priorities (web)19377
design, ai, accessibility, user-experience
Accessible Authentication (kar)19376
accessibility, authentication, testing
Why Kagi? (rat)19375
kagi
AI Contrarians on the Problems With Vibe Coding19374
ai, vibe-coding, quality, slop, career
Artificial Intelligence Companies and the Dark Side of Data Scraping19373
ai, scraping, ethics, legal, openai, google, facebook+meta, anthropic
UN Calls Out Google and Amazon for Abetting Gaza Genocide (pro)19372
microsoft, amazon, google, politics
JavaScript Engines Zoo19371
javascript-engines, javascript, overviews, comparisons, v8, spidermonkey, quickjs, javascriptcore, chakracore
JavaScript Engines Explained—Comparing V8, SpiderMonkey, JavaScriptCore, and More (ele/des)19370
guest-posts, javascript, javascript-engines, v8, spidermonkey, javascriptcore, quickjs, chakracore
The One Mistake Everyone Makes in AI19369
ai, mistakes
The One Architecture Decision That Destroyed Every Project I Touched19368
architecture, databases
Design Systems: The True Source of Frontend Peace (cod)19367
design-systems, design
Stop Trying to Kill the SPA (max)19366
single-page-apps, link-lists
Hack to the Future—Frontend (the)19365
history, html, css, javascript, design, layout, flash, image-replacement, libraries, frameworks, hacks, xhtml, tooling, testing, outlooks
Visualizing Responsive Typography (mia/odd)19364
css, typography, responsive-design, functions
Optimizing PWAs for Different Display Modes (val/sma)19363
progressive-web-apps, web-apps, responsive-design, css, media-queries, optimization
Opening a “details” Element From the URL (chr/fro)19362
html, disclosure-widgets, urls
Nested Scroll Bars Are the One of the Biggest Accessibility Evils, Ever19361
accessibility, scrolling, tables, wcag
Learning Web Development: Web Servers (rau)19360
servers, nodejs
I Am an AI Hater (ant)19359
ai
How Developers Can Use Tracing in the UI to Add Backend-Style Observability19358
tracing, observability, opentelemetry, tooling
Being a Developer in the Vibe Coding Era19357
vibe-coding, ai, career
Learning Web Development: Shells and Node.js (rau)19356
shells, nodejs
From McCabe to Essential Complexity19355
programming, quality, complexity, metrics
10 Python Libraries That Supercharge Web Scraping19354
scraping, python, libraries, tooling
10 Web Dev Trends for 2025 That Will Make or Break Your Career (web)19353
trends, career, ai, frameworks, low-and-no-code, serverless, content-management, spatial-web, design-systems, apis
Understanding “Promise.any()”: When One Success Is Enough19352
javascript, promises, asynchronicity
Enable “--strict” by Default (dan/typ)19351
discussions, typescript
Accessibility Statements Are Not Legal Contracts—They’re Value Signals19350
accessibility, documentation, compliance, legal
Why Disabled Buttons Hurt UX (and How to Fix Them)19349
videos, buttons, forms, user-experience
Where AI Is Failing Design Systems, and Where We Are Failing AI (ben)19348
ai, design-systems
Very Early Playing With “random()” in CSS (chr/fro)19347
css, functions, randomness
How to Create an Accessible Table With Clickable Rows (ale)19346
how-tos, tables, html, accessibility
An Illustrated Guide to OAuth19345
guides, oauth, authorization
A11y 101: 2.4.3 Focus Order (nat)19344
introductions, accessibility, focus
Building an Automated Workflow Platform With n8n19343
translations, n8n, ai
Why Does Big Tech Not Run Accessibility Bug Bounties?19342
accessibility, processes, bugs
React 19 Broke Update Stability, Keeping Half of Developers Stuck19341
react, angular, vuejs, comparisons, maintenance
Handling 500M Clicks With a $4 VPS (asc)19340
videos, servers, economics
Use of Color (Level A) WCAG 1.4.1—Accessibility Design Tips19339
accessibility, colors, wcag, tips-and-tricks
Learning Web Development: Loops in JavaScript (rau)19338
javascript, loops
Boosting Laravel Boost19337
laravel, mcp, ai
Big O (sam)19336
algorithms, performance, programming
3D Layered Text: The Basics (ami/css)19335
fundamentals, css, effects, 3d
How to Interpret LLM Benchmark Results: A Practical Guide19334
guides, how-tos, ai
Experimental: Firefox Now Supports Progressive Web Apps on Windows19333
firefox, browsers, progressive-web-apps, web-apps
Design Hacks From the Pre-CSS Era (den/hac)19332
html, tables, layout, hacks, history
Google Games Numbers to Make AI Look Less Thirsty (tob/the)19331
google, infrastructure, ai, sustainability
Why /dev/null Is an ACID Compliant Database19330
unix-like, databases, comparisons
10 Terminal Tricks Most Developers Don’t Know (but Should) (ris)19329
command-line, keyboard-shortcuts, tips-and-tricks, efficiency
CSS Pulse Animation (mar)19328
css, animations, effects
Unit Formatting With “Intl” in JavaScript (ray)19327
javascript, units, localization
Quick Dark Mode Toggles (chr/fro)19326
dark-mode, dev-tools, browsers
No, Google Did Not Unilaterally Decide to Kill XSLT (mey)19325
xsl, google, browsers, web-platform
Making Sense of CSS Length Units19324
css, units
4 Reasons to Stop Using CSS Preprocessors (hel)19323
css, preprocessors
What Makes Claude Code So Damn Good (and How to Recreate That Magic in Your Agent)!?19322
how-tos, claude, ai
Why Do Software Developers Love Complexity? (kyr)19321
complexity, marketing
Creative Ways to Fund Open Source Projects (ger)19320
foss, monetization
Interaction Design and Accessibility: UX Without Barriers (a11)19319
interaction-design, accessibility, user-experience
You’re Loading Fonts Wrong (and It’s Crippling Your Performance) (jon)19318
fonts, performance, css, image-replacement, flash-of-x, history
What Are OKLCH Colors? (jak)19317
colors, oklch
The ARRM Framework: What It Is and How It Can Be Leveraged for Digital Inclusion (dbo+/kno)19316
interviews, accessibility, dei, processes
Rolling the Dice With CSS “random()” (jon+/web)19315
css, functions, randomness, examples
New Bookmarklet: WCAG SCs Lookup Tool (llo)19314
bookmarklets, wcag, accessibility
How We Migrated Our Rush.js Monorepo to Node Type Stripping (cal)19313
migrating, nodejs, typescript
How to Create a CRO Strategy That Turns Traffic Into Revenue (moz)19312
how-tos, user-conversion, monetization, seo, strategies, economics
How to Audit Developer Docs: A Quick, Effective Method (hac)19311
how-tos, documentation, auditing
Firefox 142 for Developers (mdn)19310
release-notes, firefox, browsers
A Proposal for Inline LLM Instructions in HTML Based on llms.txt (ind)19309
html, ai, llmstxt
AWS in 2025: The Stuff You Think You Know That’s Now Wrong (qui/las)19308
aws, s3, lambda, dynamodb, network, authentication, economics
Trusting the Browser (med)19307
accessibility, focus, keyboard-navigation, browsers, support
Open Source Is Dying and We’re All to Blame19306
foss, community, economics
Why Is CSS “::first-letter” Not Working? (whi)19305
css, selectors
What’s Next for JavaScript? (jsd)19304
javascript, outlooks
To Infinity… but Not Beyond (mey)19303
css
Obsessing Over Smooth “radial-gradient()” Disc Edges (ana/fro)19302
css, functions, gradients
Michelle Frechette and Jonathan Desrosiers on the Story of .com and .org (mic+)19301
podcasts, interviews, wordpress, domains, history
Constant Refactoring: Refactoring My Refactored Website (ope)19300
refactoring, maintenance
“Best Practice” Is Just Your Opinion (cra)19299
accessibility, auditing, quality, best-practices
About “Best Practices” (yat)19298
accessibility, best-practices
AGENTS.md19297
websites, ai, documentation, conventions, agentsmd
We Must Build AI for People, Not to Be a Person (mus)19296
ai
How to Stand Out When Anyone Can Build Anything (ant)19295
how-tos, economics, communication, craft, ai
Universal Design vs. Inclusive Design (ons/tpg)19294
design, accessibility, dei, concepts, comparisons
The Good, the Bad, and the Unreadable (mal)19293
fonts, readability, legibility, accessibility, wcag
Testing Methods: Images of Text (dec)19292
accessibility, testing, wcag, images
Launching MDN’s New Front End (mdn)19291
mdn
Beyond Vibe Coding: Amazon Introduces Kiro, the Spec-Driven Agentic AI IDE (inf)19290
introductions, kiro, code-editors, ai
The State of Python 2025 [Results] (mke/jet)19289
surveys, metrics, python
GitHub for AI Engineers19288
github
Web Design: What Is the Web Capable of That Is Hard to Express in Design Software? (chr/fro)19287
design, interaction-design, tooling
The First Rule of ARIA (nat)19286
accessibility, aria, principles, html
Resize Any DOM Element Using Two Lines of CSS (ami)19285
dom, resizing, css
Learning Web Development: Arrays in JavaScript (rau)19284
javascript, arrays
Jack Dorsey’s Vibe Coding Tips (ang/ope)19283
vibe-coding, ai, tips-and-tricks
Icon Interpretation vs. Recognizability19282
videos, icons, images, usability
How to Rank in Google’s AI Overviews: 7 Pro Tips (sem)19281
how-tos, google, seo, ai, tips-and-tricks
Accessibility Issues of CAPTCHA (oze)19280
captcha, accessibility
The End of Type Annotations (yeg)19279
programming, annotations, compiling
Google Is Killing the Open Web (obl)19278
google, open-web, xml, xsl, chromium
Interviewer: “So You’re a Senior Dev? Then Optimize This Code”—Here’s the Perfect Answer19277
interviewing, career, optimization, java
Is There an “AsyncLocalStorage” Penalty?19276
nodejs, asynchronicity, performance
10 Programming Mistakes That Will Ruin Your Life19275
programming, mistakes
Learning Web Development: Strings and Methods in JavaScript (rau)19274
javascript, strings, methods
Vibe Coding and the Illusion of Progress19273
vibe-coding, ai, quality, technical-debt
Email Is Easy (sam)19272
websites, email, quizzes
[Node.js] End-of-Life (EOL) (nod)19271
nodejs
Simple Is Not Always Easy (jun)19270
information-design, simplicity
How AI Is Changing Search Behaviors (nng)19269
ai, search, searching, usability
The Future of Vue Is You (and You) (eva)19268
podcasts, interviews, vuejs
My Top 4 [CSS Properties] (don)19267
css
Learning Web Development: Numbers, Variables, Functions in JavaScript (rau)19266
javascript, variables, functions
CSS-Only Solutions Are Not Accessible (cfe)19265
css, focus, accessibility
Covering “hidden=until-found” (geo/css)19264
html, hiding
Animated Sites Are Unique, but Not Always Accessible19263
accessibility, animations, multimedia, wcag, user-experience
Modern CSS Features You Should Know in 202519262
css, examples
10 Bash Scripts That Automate 90% of My Daily DevOps Tasks19261
shells, automation, dev-ops
React Mock Interview: Kent C. Dodds, Jack Herrington, and Roadside Coder Solve React Coding Question (ken+/shr)19260
videos, interviews, interviewing, react
How Much Should You Spend on Accessibility? (kar)19259
accessibility, compliance, economics
Eliminating JavaScript Cold Starts on AWS Lambda (goo)19258
javascript, lambda, aws, runtimes
Dynamic Media/Container Queries Using “if()” (css)19257
css, conditionals, media-queries, container-queries
Another Article About Centering in CSS (bel/pic)19256
css, centering, examples
Has Efficiency Killed Beauty? A Designer’s Search for Meaning19255
design, efficiency, aesthetics, user-experience, history
5 Useful CSS Functions Using the New “@function” Rule (una)19254
css, functions, examples
JavaScript Is Tough to Master19253
javascript, learning
How to Write Clean Code, Actually…19252
how-tos, programming, software-design, principles
We Might Need Something Between Root and Relative CSS Units for “Base Elements” (zel/css)19251
css, units
Tailwind CSS vs. Bootstrap: Which Framework Is Right for Your Next Project?19250
tailwind, bootstrap, comparisons
Style Your Underlines (ada)19249
css, links, interaction-design, accessibility
On Dashes, AI, and Screen Readers (ons/tpg)19248
typography, ai, screen-readers, accessibility
Can Components Conform to WCAG? (hdv)19247
components, accessibility, wcag, compliance
State of CSS 2025 [Results] (sac/dev)19246
surveys, metrics, css
Nobody’s Hiring You Because You Lack These 7 Developer Skills19245
career, ai
How a Blind Person Uses Social Media and AI to Drive Accessibility (equ)19244
interviews, accessibility, ai, social-media
Conformance vs. Compliance, Accessibility Standards Edition (hdv)19243
accessibility, standards, conformance, compliance, terminology, comparisons, wcag
A Gentle Introduction to Anchor Positioning (sar/web)19242
introductions, anchor-positioning, css
CSS Questions (sun)19241
websites, css, quizzes
Git Rebase—Explained Like You’re New to Git19240
git, command-line
Reflections on the React Community (lee)19239
react, nextjs, vercel, community
jQuery 4.0.0 Release Candidate 1 (tim/jqu)19238
release-notes, jquery
Getting Creative With Quotes (mal/css)19237
css, design
Designing With AI, Not Around It: Practical Advanced Techniques for Product Design Use Cases (sma)19236
design, ai, techniques, processes, product-management
Agent Experience (AX): The Concept of AI Agent Designing19235
agent-experience, ai, concepts, principles
A Nice Vanilla App [Architecture] Using Web Components and CSS Module Scripts (chr/fro)19234
architecture, web-components, css
5 Heading Accessibility Issues to Avoid (pop)19233
accessibility, headings, html
Personalization vs. Customization: The Misunderstanding Between the Two19232
personalization, customization, comparisons, user-experience
7 Architecture Mistakes Even Senior Engineers Make (and How to Fix Them)19231
architecture, mistakes, career
A Progressive Complexity Manifesto (che)19230
manifestos, complexity, web-apps, html, htmx, javascript, web-components, frameworks, principles
Speeding Up the JavaScript Ecosystem—SemVer (mar)19229
javascript, performance, semver, versioning, dependencies
AI Automation Won’t Kill Developer Jobs19228
ai, automation, productivity, career
Mozilla Under Fire for Firefox AI “Bloat” That Blows Up CPU and Drains Battery (neo)19227
firefox, mozilla, browsers, ai, performance
Your A/B Tests Are Lying to You—the Myth of Data Driven Design (web)19226
a-b-testing, myths, design
This One CSS Property Fixed My Font Headaches Forever19225
css, typography
I Built the Perfect Portfolio—it Got Me Zero Interviews (oso)19224
interviewing, career
Bulk Upgrade Deprecated Node.js Versions19223
nodejs, vercel, deprecation
The Power of the “Intl” API: A Definitive Guide to Browser-Native Internationalization (fuq/sma)19222
guides, apis, javascript, internationalization
Should We Never Use Non-Logical Properties? (j9t)19221
css, logical-properties
An Engineer’s Perspective on Hiring (jyn)19220
hiring, interviewing, engineering-management
Accessibility Pushback19219
accessibility, advocacy
Think Twice Before Adopting the AI Label19218
ai, design, product-management
Refactoring the Button Component19217
refactoring, buttons, components, figma, design-systems
Environment Variables in SvelteKit (thi)19216
sveltekit, environments, variables
Using the Custom Highlight API (chr/fro)19215
apis, javascript, css, syntax-highlighting
How I Learned System Design19214
architecture, system-design, software-design
Agentic AI: On Evaluations (ils)19213
ai, testing, tooling
ohyaml.wtf (sig)19212
websites, quizzes, yaml
There’s a New “stretch” Keyword in CSS? (mia/odd)19211
videos, css
The Best Line Length (gly)19210
readability, code-editors
Node.js Supports Import Maps (ste)19209
nodejs, import-maps
Let’s Stop Pretending That Managers and Executives Care About Productivity (bal)19208
economics, productivity, ai, engineering-management
Item Flow: Next Steps for Masonry (jen+/web)19207
css, masonry, layout
Infinite Pixels (mey)19206
css
HTML Popovers Shown on Interest Should Be Accessible on Mobile Devices (uti)19205
html, pop-overs, mobile, usability
Baseline for CSS Properties Now in Chrome DevTools (mal)19204
css, support, browsers, web-platform, dev-tools, chrome
We Keep Reinventing CSS, but Styling Was Never the Problem (den)19203
css
The Psychology of Coding: Why Developers Avoid Planning (and How AI Planning Tools Like Continue Fix It) (bek)19202
project-management, processes, ai
Stop Using Tailwind Like a Beginner—Here’s How Pros Do It19201
tailwind, configuration
Your Website Doesn’t Rank #1 Because You’re Missing These 3 Pages19200
seo
When HTML Speaks Clearly19199
html, accessibility, conformance, semantics
Rebuilding Graphs for Accessibility: Inside Khan Academy’s Inclusive Design (kha)19198
accessibility, visualization, information-design, case-studies
HTML Is Dead, Long Live HTML (unc)19197
html, css, dom, standards, metrics
Get the Number of “auto-fit”/“auto-fill” Columns in CSS (ana/fro)19196
css, layout
Automating Design Systems: Tips and Resources for Getting Started (sma)19195
design-systems, automation, tips-and-tricks, tooling, ai
July 2025 Baseline Monthly Digest (mal)19194
browsers, support, web-platform, code-editors, jetbrains, dev-tools, chrome, vs-code
How to Use the Safari Developer Tools (mat/deb)19193
how-tos, safari, browsers, dev-tools
What’s New in ViteLand: July 2025 Recap (man/voi)19192
release-notes, vite, rolldown, oxc, vitest
Information Pollution, Poisoning, and Hygiene19191
content, information-architecture, user-experience, economics
What Building Products Looks Like in the Age of AI19190
ai, product-management, prompting, tooling, processes
What’s the European Accessibility Act Got to Do With My Design System? (ger/zer)19189
design-systems, accessibility, eaa, compliance, legal
Free Cloud GPU Credits in 2025: 10 Programs Worth $250k+19188
cloud-computing, tooling, link-lists
The Slow Poisoning of Tech Jobs19187
ai, career
What We Learned From Creating PostCSS (sit+/evi)19186
postcss, history, lessons, tips-and-tricks
The Hidden Cost of Context (mco/pla)19185
nodejs, tracing, observability, performance, opentelemetry
Run Express.js on Cloudflare Workers (jro)19184
express, cloudflare, hono
Framework Benchmarks (lis)19183
websites, frameworks, metrics, react, angular, svelte, preact, solidjs, qwik, vuejs, jquery, alpinejs, lit, comparisons
Perplexity Is Using Stealth, Undeclared Crawlers to Evade Website No-Crawl Directives19182
ai, bots, crawling
Thinking Deeply About Theming and Color Naming (zel/css)19181
theming, naming, semantics, color-palettes, colors, pico
The Problems With Modals, and How to Solve Them (noe)19180
how-tos, modals, vuejs, typescript
Skeleton Screens Are Just Gray Lies We Tell Ourselves (web)19179
design, placeholders, performance
Our Fight With Oracle Is Getting Crazy… (den)19178
videos, javascript, oracle, legal, licensing
New in PHP 8.5: Closures as Constant Expressions (chr)19177
php
Infinite Marquee Animation Using Modern CSS (css/fro)19176
css, animations, effects
How We Made “JSON.stringify” More Than Twice as Fast19175
javascript, json, strings, v8, javascript-engines, optimization, performance
How to Collect and Clean Usability-Testing Data (uxm)19174
how-tos, usability, testing
How JavaScript Really Evolves: Inside TC39 With Daniel Ehrenberg (lit+/wee)19173
videos, interviews, javascript, ecmascript
From Data to Decisions: UX Best Practices for Real-Time Performance Dashboard Design (uxm)19172
user-experience, best-practices, information-design
Friends at Last: Tailwind and CSS… Whodathunkit?! (jar/van)19171
css, tailwind
Building Extensible Frontend Systems (cfe)19170
web-components, extensibility, javascript, css
A11y 101: 2.4.1 Bypass Blocks (nat)19169
introductions, accessibility, wcag, skip-links
Stop Wasting LLM Power: The One Prompt Hack That Made Chatgpt, Gemini, and Grok 5× Smarter for Me (cod)19168
ai, prompting, efficiency, sustainability, chatgpt, gemini
He Was a Senior Developer, Until We Read His Pull Request19167
career, code-reviews
The Great Disappointment (j9t)19166
community, advocacy
A Few Things About the Anchor Element’s “href” You Might Not Have Known (jim)19165
html, attributes, links, data-urls
What Your Website’s Style Says About You—and How Hackers Can Use It Against You (err)19164
security, css, javascript
Deploy Hono Backends With Zero Configuration19163
hono, vercel
Programming Is Becoming Prompting19162
programming, prompting, vibe-coding, ai
Nobody Waits for Your Fancy Animations Anymore (and They Never Really Did) (web)19161
animations, parallax, effects, performance, user-experience, design
JavaScript Isn’t the Problem—Replacing the Browser Was (p4p/red)19160
javascript, single-page-apps, browsers
Horizontal Scrolling Containers Are Not a Content Strategy (aar)19159
accessibility, scrolling, carousels
Focus Not Obscured (taf)19158
accessibility, focus, keyboard-navigation, wcag
A Quick Guide to a Multi-Language Astro Site19157
guides, astro, internationalization
npm Trusted Publishing With OIDC Is Generally Available19156
npm, dependencies, provenance
New to the Web Platform in July (rac)19155
release-notes, web-platform, browsers, firefox
Why Most MCP Servers Won’t Last and That’s Okay (jed)19154
mcp, ai, servers
It’s Incredible How Many Bad User Experiences Are Still Out There in 202519153
user-experience, design
Forget SEO—Everyone Does RAO19152
seo, mcp, ai, outlooks
Never Forget Anything (jac)19151
learning, processes
WCAG vs. EAA: Understanding Where WCAG Stops and Where the EAA Starts19150
accessibility, wcag, eaa
Should We Never Use Non-Logical Properties? (chr/fro)19149
css, logical-properties
More Than Just Text: The Real Power of Labels (tpg)19148
accessibility, labels, forms, html
6 Weeks of Claude Code (ort/puz)19147
claude, ai, refactoring, maintenance
Why Your Design System Is Failing (and How to Fix It)19146
design-systems, mistakes
The Biggest Threat to Your Design System Is Your Need to Be Liked (lau)19145
design-systems, career
Vibe Code Is Legacy Code (ste/val)19144
ai, vibe-coding, technical-debt
The Web Isn’t URL-Shaped Anymore (jon)19143
web, urls, ai
The CSS “if()” Function: Conditional Styling Will Never Be the Same (log)19142
css, functions, conditionals
Design System Deviation Is a Signal (ben)19141
design-systems, design, metrics
Cross-Browser Testing Strategies: Including Often-Overlooked Browsers in the Frontend QA Process (ele/des)19140
guest-posts, browsers, testing, processes, strategies, chrome, safari, uc-browser
HTML-First, Framework-Second: Is JavaScript Finally Growing Up?19139
html, javascript, frameworks
Many Servers Don’t Properly Support HTTP Prioritization (mat/deb)19138
servers, http, performance, support
How to Build a Cohesive Icon Library for Your Design System19137
how-tos, design-systems, icons, images
Why Microservices Are Out and Monoliths Are Making a Comeback19136
microservices, monoliths, architecture
What Do We Have That AI Doesn’t?19135
ai
Vision for W3C (cdu+/w3c)19134
w3c, web, web-platform, standards, outlooks
Testing Methods: Audio Control (dec)19133
accessibility, testing, wcag, multimedia
Publishers Cry Foul Over W3C Crusade to Rid Web of Third-Party Cookies (tho/the)19132
w3c, cookies, privacy
Making a Faded Text Effect in (Mostly) CSS (cas)19131
css, effects
I Know When You’re Vibe Coding (ale)19130
vibe-coding, ai, quality
Hardening Node.js Apps in Production: 8 Layers of Practical Security19129
nodejs, security, best-practices
Getting Started With Manual Testing (jay/pop)19128
videos, introductions, accessibility, testing
Found an Accessibility Issue? Now What? (ser/a11)19127
videos, accessibility, processes, communication
Creating a Scroll-Spy With 2 Lines of CSS (una)19126
css, scrolling
Cascading Layers of !mportance (mia/jsh)19125
videos, css, cascade
Built-In Accessibility: Blessing or Curse? (hdv/jsh)19124
videos, accessibility
Content for Fun vs. Content for Purpose: Designing for Two Distinct Modes of Consumption (div)19123
content, ai, outlooks
Liquid Glass on the Web (chr/fro)19122
design, effects, liquid-glass, css, examples
Introducing Copilot Mode in Edge: A New Way to Browse the Web19121
introductions, edge, browsers, ai
Neo-Brutalism: Breaking Rules, Loudly19120
design, brutalism, history, trends
Frontend News #15: Transform Order Matters, Creative Drop Caps, Frontend Developer Quiz (zor/css)19119
videos, css, animations, transforms, apis, debugging, buttons
Is Open Source Software Infrastructure? (fro)19118
podcasts, foss, link-lists
Web Components: Working With Shadow DOM (sma)19117
web-components, shadow-dom, dom, html
The Useless “useCallback” (tkd)19116
react, callbacks, memoization
The Death of the Click: How Scrolling Took Over the Web (web)19115
web, scrolling, user-experience
Making a Masonry Layout That Works Today (zel/css)19114
css, layout, masonry
Logical Assignment Operators in JavaScript: Small Syntax, Big Wins19113
javascript, operators
Foundations: Types of Assistive Technology and Adaptive Strategies (tet)19112
fundamentals, assistive-tech, screen-readers, screen-magnification, keyboard-navigation, tooling, accessibility
Customise “Select” Element With CSS (No JS) (jad)19111
videos, forms, css
AI Is Eating the Internet (pao)19110
ai, web, crawling, google
A11y 101: 2.3.1 Three Flashes or Below Threshold (nat)19109
introductions, accessibility, wcag
Gemini CLI vs. Claude Code vs. Codex Compared—Should You Use an AI CLI?19108
videos, ai, gemini, claude, openai, comparisons, command-line
99% of Developers Haven’t Seen Claude Code Sub Agents (It Changes Everything)19107
claude, ai
AI Won’t Kill UX—We Will19106
ai, user-experience, design, creativity
Why Doesn’t Productivity Work19105
productivity
The Many, Many, Many JavaScript Runtimes of the Last Decade (shi)19104
javascript, runtimes, history
Ladybird Proves You Can Just Build a New Web Browser19103
videos, ladybird, browsers
AI Has Flipped Software Development19102
ai, programming, design, prototyping, processes
Trump Just Declared War on Tech Jobs19101
career, dei
The Needs of People With Cognitive Disabilities (oze)19100
accessibility, wcag
Countdowns and Timers—Forgotten Detail That Can Make Your Users Really Hate Your Product (cer)19099
accessibility, time, user-experience
Vanilla JavaScript Support for Tailwind Plus (phi+/tai)19098
tailwind, javascript
Three HTTP Versions Later, Forms Are Still a Mess19097
http, protocols, forms
Stop Skimming Documentation19096
documentation, learning
Making Sense of the Performance Extensibility API (css)19095
performance, profiling, apis
How to Discover a CSS Trick (css)19094
how-tos, css
I Tried GitHub Copilot vs. ChatGPT for Coding: What I Learned19093
comparisons, ai, github-copilot, chatgpt
Google Gemini CLI Cheatsheet (phi)19092
google, gemini, ai, command-line, cheat-sheets
Vue.js Plugins Collection (jac)19091
websites, vuejs, plugins
Why and How to Write Minimal and Valid HTML, a Link Guide (j9t)19090
html, minimalism, conformance, how-tos, guides, link-lists
The “figcaption” Problem (chr/fro)19089
html, css
The “Accessibility” Link Is a Lie: My Adventures in Weaponizing Corporate Virtue Signaling (wei)19088
accessibility, legal
Tabs vs. Spaces: The War Is Over (xn)19087
formatting, comparisons
Node.js Is Growing Up: 3 Major Releases That Changed the Game (hac)19086
nodejs, history
It’s Time for Modern CSS to Kill the SPA (jon)19085
css, single-page-apps, tech-stacks
Implementing Accessible SVG Elements (a11)19084
accessibility, svg, images, fundamentals
Design Systems in 2025: Why They’re the Blueprint for Consistent UX19083
design-systems, design, user-experience, consistency
Release Notes for Safari Technology Preview 224 (jon/web)19082
release-notes, safari, browsers
Brick by Brick: Help Us Build CSS Masonry (pat)19081
css, masonry, layout, chrome, edge, browsers
How to Sell the European Accessibility Act to Your Boss (edd)19080
how-tos, eaa, legal, accessibility, advocacy, link-lists
The Web Is About to Get Better for Everyone, Everywhere (den)19079
web, accessibility, eaa
Instant Back/Forward Navigations in WordPress (wes)19078
wordpress, plugins, bfcache, performance
npm “Accidentally” Removes Stylus Package, Breaks Builds and Pipelines (ax/ble)19077
npm, stylus
Never Write Your Own Date Parsing Library (zac)19076
javascript, libraries, comparisons, time, parsing
Impact of AI on Tech Content Creators (chr)19075
ai, content, monetization, career
How Formatting Text in Web Design Increases Conversions (web)19074
design, user-conversion
Celebrating 20 Years of MDN (mdn)19073
anniversaries, mdn
How Semantics and ARIA Attributes Support Accessible Design (tpg)19072
accessibility, semantics, aria, html, attributes
9 Python Problems You Can Solve in 10 Lines or Less19071
python
10 Java Performance Secrets Every Senior Developer Knows19070
java, performance, tips-and-tricks
Web Serial: The Only Reason I’ll Admit JavaScript Isn’t All Bad19069
javascript
The Untold Story of JavaScript19068
videos, javascript, history
Testing Methods: Use of Color (dec)19067
accessibility, testing, wcag, colors
State of HTML 2025 Now Open (lea)19066
surveys, html
How to Create Audio Description VTT Files for Free: No Fancy Tools Needed (mer)19065
how-tos, multimedia, captions, accessibility
Designing for User Font-Size and Zoom (mia/odd)19064
design, typography, zooming, css, units, functions
Kiro vs. Cursor: How Amazon’s AI IDE Is Redefining Developer Productivity19063
kiro, cursor, code-editors, ai, comparisons
Does Ranking Higher on Google Mean You’ll Get Cited in AI Overviews? (ahr)19062
google, search, ai, seo, aiso
Why Senior Engineers Are Choosing Hexagonal Over Layered Architecture19061
architecture, software-design-patterns
Why Semantic HTML Still Matters (jon)19060
html, semantics
Why Quick Cache Implementation Creates More Problems Than It Solves: The Hidden Tech Debt Crisis19059
performance, caching, technical-debt, maintainability, architecture
The Hidden Cost of Poor Navigation: How Information Architecture Directly Impacts Business Metrics (uxm)19058
information-architecture, navigation, economics
The Future of the Web Is Decentralized (Whether You Like It or Not) (web)19057
web
The Evolving Role of AI in User Experience (uxm)19056
user-experience, design, ai, trends
The Communication Crisis That’s Killing UX Design Careers (uxm)19055
user-experience, design, career, communication, ai, accessibility
Super Short Note: Placeholder Perfidy (ste)19054
accessibility, html, placeholders
Quick Tip: Use Fewer Links (nat)19053
links, accessibility, tips-and-tricks
Performant Vue Applications With Vapor (jac)19052
performance, vuejs
Introducing Zustand (State Management) (ada/fro)19051
introductions, state-management, zustand, react
Handling JavaScript Event Listeners With Parameters (sma)19050
javascript, events
Git Worktrees: Git Done Right (nic)19049
git, productivity
eslint-config-prettier Compromised: How npm Package With 30 Million Downloads Spread Malware19048
prettier, eslint, npm, security, malware
CSS Logical Properties—What, Why, and How (sch)19047
videos, css, logical-properties
A Primer on Focus Trapping (zel/css)19046
introductions, focus, keyboard-navigation, javascript, accessibility
A Friendly Introduction to SVG (jos)19045
introductions, svg, images
10 Best VS Code Extensions Transformed My Coding in 202519044
vs-code, code-editors, tooling, productivity
Revisiting My 2010 JavaScript Library (dia)19043
retrospectives, javascript, libraries, internet-explorer, browsers
AI Might Be the Best Thing to Happen to Design Communication19042
design, ai, communication, processes
Web Vital API (thi)19041
videos, performance, web-vitals, apis
Responsive Video Is (Almost) Easy Now (koo)19040
multimedia, responsive-design
Compile Svelte 5 in Your Head19039
svelte, compiling, javascript
Garbage Collection Was a Mistake (imp)19038
garbage-collection, memory, java, programming
Writing “!= null”? That’s What Junior Devs Do—Here’s the Senior Way19037
javascript
Making Sense of Accessibility and the Law (tem)19036
accessibility, legal, eaa, ada, section-508, compliance
IntelliJ IDEA Moves to the Unified Distribution (jet)19035
code-editors, intellij-idea
AI Agents Are Creating a New Security Nightmare for Enterprises and Startups19034
ai, security, apis
Why 80% of Java Developers Struggle With Multithreading19033
java, multithreading
Unconditional Love for Conditional CSS (geo)19032
css, functions, conditionals, mixins, container-queries, transitions
npm Phishing Email Targets Developers With Typosquatted Domain (sar/soc)19031
npm, security
European Accessibility Act (EAA) FAQ (tet)19030
eaa, legal, accessibility
Can AI Replace Web Developers: A Practical Look at Current Tools and Limitations19029
ai, tooling, career
The Vibe Coder’s Career Path Is Doomed19028
ai, vibe-coding, career
AI Tools + AI Fluency + Human Advantage = AI-Native Designer19027
design, user-experience, ai, tooling, career, link-lists
The Multi-Repository TypeScript Problem19026
typescript, monorepos
New Colors Without Shooting Lasers Into Your Eyes (dyn)19025
colors
Generative User Interfaces (mik+/cod)19024
videos, interviews, ai, prompting, developer-experience, tooling
99% of Users Don’t Know About These 10 ChatGPT Secret Codes19023
chatgpt, ai, prompting
What Is Bot Detection: Tools, Techniques, and Ways to Prevent Against Bot Attacks19022
bots, bot-detection, metrics, techniques, link-lists
The Agentic AI Era at JetBrains Is Here (jet)19021
code-editors, jetbrains, junie, ai
This Is Why Nobody Submits PRs to Open Source Anymore19020
foss, community, maintenance, ai
The Untold Story of JavaScript (den)19019
videos, javascript, history
React Router and React Server Components: The Path Forward (mar/rem)19018
react, react-router, components, outlooks
How AI Vibe Coding Is Destroying Junior Developers Careers19017
career, ai, vibe-coding, learning
Eight Skunkworks Projects That Advance Accessibility Without Approval19016
accessibility, examples, advocacy
Charlotte Bax on Reducing Your Website’s Carbon Footprint (dig+)19015
podcasts, interviews, sustainability, wordpress
Shipping WebGPU on Windows in Firefox 141 (jbl/moz)19014
webgpu, firefox, browsers, windows
Why Women in Tech Isn’t Enough (whi)19013
community, career
We Migrated Our Site to Eleventy and Increased Performance by 24%19012
migrating, nextjs, eleventy, performance, comparisons
Tuesday, July 15, 2025 Security Releases (nod)19011
release-notes, nodejs, security
Stacked Transforms (chr/fro)19010
css, transforms, animations
Public CSS Custom Properties in the Shadow DOM (mic)19009
css, custom-properties, shadow-dom, dom, animations
Naked and Semantic (ark+/dea)19008
podcasts, interviews, awareness-days, css, semantics, maintainability
Fast, Simple, High Impact: DIY Accessibility Testing for Any Team (a11)19007
accessibility, testing, keyboard-navigation
Everything That Is Coming in PHP 8.5 (ami)19006
php
Design Tokens for Links19005
design-tokens, links
Announcing Nuxt 4.0 (dan/nux)19004
release-notes, nuxt
Did AI Kill the System’s Thinking Skills in UX?19003
user-experience, product-management, ai
Improving Design Critiques19002
design, processes, communication, optimization
I Used n8n and ChatGPT and Reddit to Make $2.4K in 7 Days—Here’s How (ask)19001
monetization, tooling, n8n, chatgpt, ai
The Three Great Virtues of an AI-Assisted Programmer (sea)19000
programming, ai, principles, career
Why I’m Writing Pure HTML and CSS in 202518999
html, css
Setting Line Length in CSS (and Fitting Text to a Container) (dxn/css)18998
css, units, typography
Proposal—Shift Node.js to Annual Major Releases and Shorten LTS Duration (raf)18997
discussions, nodejs
Modern Async Iteration in JavaScript With “Array.fromAsync()”18996
javascript, arrays, asynchronicity
How Keyboard Traps Impact Web Accessibility (a11)18995
accessibility, keyboard-navigation, focus, testing
How I Made My Next.js Blog Serve Markdown Files for Agent Experience SEO (AX–SEO)18994
nextjs, markdown, seo, agent-experience
Dynamic “nth-child()” Using “sibling-index()” and “if()” (css)18993
css, functions, conditionals
Design Patterns for AI Interfaces (vit/sma)18992
ai, design, design-patterns, agent-experience
Contagious Interview Campaign Escalates With 67 Malicious npm Packages and New Malware Loader (soc)18991
security, npm, dependencies
Checkbox Design: 8 Guidelines18990
videos, guidelines, forms, labels, usability
Apple’s Browser Engine Ban Persists, Even Under the DMA (owa)18989
apple, browser-engines, webkit, safari, legal, browsers
Am I Becoming Irrelevant? (jor)18988
career
A11y 101: 2.2.2 Pause, Stop, Hide (nat)18987
accessibility, wcag, multimedia, animations, reduced-motion
A Label and a Name Walk Into a Bar (ste)18986
accessibility, labels, html, concepts, examples
There’s No Such Thing as a CSS Reset (aaa)18985
css, resets
Crawling a Billion Web Pages in Just Over 24 Hours, in 202518984
crawling
“No Code” Is Dead18983
low-and-no-code, vibe-coding, ai
Pair Programming Is the Better Code Review18982
quality, code-reviews, collaboration
Write Flutter Like Google (dee)18981
flutter, google, software-design-patterns
PHP vs. Node.js: Real Truth About Backend Development in 2025 (jay)18980
php, nodejs, comparisons
We Need to Talk About Your Accessibility Statement (cer)18979
accessibility, documentation, compliance
Deploy a Site With a Build Process and a Custom Domain Name (chr/fro)18978
deploying, building, domains, astro, netlify
I Replaced My Primary Browser With Dia for a Month, and Here’s How It Went18977
dia, browsers, arc, brave, edge
How I Use Claude Code (and My Best Tips)18976
videos, claude, ai, tips-and-tricks
Two AI Legends Predict the Future of Programming (and It’s Not What You Think)18975
ai, programming, outlooks
I’m More Proud of These 128 Kilobytes Than Anything I’ve Built Since18974
performance, case-studies, flash-of-x, svg, minification, optimization
The Customizable Select: Optgroup, Creating a True Select Menu (uti)18973
forms, css
Scroll-Driven Sticky Heading (ami/css)18972
headings, css, animations, positioning, scrolling, effects
Playing With the New Caret CSS Properties (reg/iga)18971
css
Creator of Bun Jarred Sumner on Building Bun, Node.js Compatibility, and AI in Dev Workflows (jar/git)18970
videos, interviews, bun, ai
5 Things I Learned From 5 Years at Vercel (lee)18969
lessons, vercel
Screen Reader HTML Support Tables (ste/tet)18968
html, support, screen-readers, jaws, nvda, accessibility
“@property” (kev)18967
css, houdini
Why I Don’t Trust WCAG 2.2 and What I’m Hoping From 3.0 (dxn/log)18966
accessibility, wcag, standards
Please, Can We Have ARIA Notify (nic)18965
accessibility, aria, live-regions, apis
Parsing 1 Billion Rows in Bun/TypeScript Under 10 Seconds18964
bun, typescript, parsing, performance
Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity18963
ai, productivity, foss, studies, research
Managing the State of Your Promises (ato)18962
javascript, state-management, promises
Get the Index of an Element Within Its Parent (css)18961
css, functions
Back When Websites Had a Pulse18960
user-experience, multimedia
Benchmarking in UX—an Organizational Framework18959
user-experience, design, processes, research
Managing Focus and Visible Focus Indicators: Practical Accessibility Guidance for the Web (tpg)18958
accessibility, focus, keyboard-navigation, wcag
HTML Minifier Next (a Maintained Fork of HTML Minifier) (j9t)18957
html, html-minifier, minification, optimization, tooling
How to Communicate Performance to Clients as an Agency (a Practical Guide) (jor)18956
guides, performance, business-relations, communication
“:has()” Is More Than a Parent Selector (kev)18955
videos, css, selectors
How to Measure the ROI of AI Coding Assistants18954
how-tos, ai, code-editors, economics
Design Is Flattening. So, How Will You Fight for Your Users? (ian)18953
design, user-experience
These 5 Programming Languages Are Quietly Taking Over in 202518952
programming, rust, python, go, javascript
When Accessibility Standards Slip, Design Steps Up18951
accessibility, design