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 and included. Hide

Frontend Dogma

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

→ 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#
Release Notes for Safari Technology Preview 238 (jon/web)20,574
release-notes, safari, apple, browsers
Lessons Learned From Failed Demos: Pure CSS Nav Thumb Flip on Scroll (ana/fro)20,573
lessons, css, effects
CSS Snapshot 2026 (fri+/w3c)20,572
css, standards
Create Pages From JSON Files With Eleventy (san)20,571
eleventy, json, static-site-generation
The Pentagon Is Making a Mistake by Threatening Anthropic (bin)20,570
ai, anthropic
An Exploit… in CSS?! (css)20,569
css, security
When Is a Link Not a Link? (dec)20,568
html, links, semantics, accessibility
AdonisJS v7 Is Here (vir/ado)20,567
release-notes, adonisjs
“Harmless” Website Updates Can Create Serious Problems for Your Users—Here’s How It Happens20,566
maintenance, accessibility
Accessibility Considerations for Off-Site Navigation and Downloads20,565
accessibility, navigation
16 Modern JavaScript Features That Might Blow Your Mind20,564
javascript
A Complete Guide to Bookmarklets (val/css)20,563
guides, bookmarklets, javascript, link-lists
The Rise of “Micro-Backends”: Why Frontend Devs Are Adopting Hono20,562
hono, express, comparisons, backend-for-frontend, architecture
Developer Experience at Scale—Lessons From Dropbox20,561
interviews, developer-experience, productivity, tooling, ai, lessons
CSS Masonry Layout Is Finally Coming: Native Grid Support Explained20,560
css, masonry, layout, examples
20,000 (fro)20,559
frontend-dogma
The React Foundation: A New Home for React Hosted by the Linux Foundation (mat/rea)20,558
react, facebook+meta, linux-foundation
Writing a Good AGENTS.md (phi)20,557
ai, documentation, agentsmd
How We Rebuilt Next.js With AI in One Week (sou)20,556
nextjs, ai, cloudflare, deploying
SVGs on the Web: Performance Comparison Based on How You Load Them (nuc)20,555
svg, images, performance, comparisons
Let’s Break Some WCAG Rules (ndc)20,554
videos, accessibility, wcag
Shift-Left Sustainability: How to Develop Green Software by Design20,553
how-tos, sustainability
Rewriting a 12-Year-Old JavaScript Library in TypeScript20,552
refactoring, javascript, typescript
Goodbye “innerHTML”, Hello “setHTML”: Stronger XSS Protection in Firefox 148 (moz)20,551
javascript, methods, xss, security, firefox, mozilla, browsers
If Code Is Cheap, Intent Is the Currency20,550
ai-agents, ai, code-reviews, documentation
Best Practices for CSS Scope in Angular Applications (ale)20,549
css, scope, angular, best-practices
Oxfmt Beta (bos+)20,548
release-notes, formatting, tooling
x86 CPU Made in CSS (reb)20,547
css, programming, functionality
Firefox 148 Brings Central AI Control and New Web Standards (hei)20,546
firefox, mozilla, browsers
How I Setup Production-Grade Deployment for My (Somewhat) Vibe-Coded App (mar/fro)20,545
deploying, aws
Web AI: Everything You Need to Know About On-Device AI for the Web20,544
ai
Stop Using “/init” for AGENTS.md (add)20,543
ai, configuration, agentsmd
AI as Art Director: Can Machines Develop Taste? (web)20,542
ai, design, aesthetics, art-direction
Breakpoints (css)20,541
design, accessibility, mobile, breakpoints, css
How Many AIs Does It Take to Read a PDF? (jos/ver)20,540
ai, pdf, tooling
A Designer’s Guide to Eco-Friendly Interfaces (sma)20,539
guides, design, user-experience, sustainability
Design Systems Are Platform Problems, Not Feature Problems (sha)20,538
design-systems
Virtual Scroll-Driven 3D Scenes (fro)20,537
css, scrolling, animations
“aria-haspopup” Might Not Do What You Think It Does (mat)20,536
html, aria, attributes, navigation, accessibility
On Software Quality (nic/pxl)20,535
quality, apple
Loading Smarter: SVG vs. Raster Loaders in Modern Web Design (hol/css)20,534
images, svg, progress-indicators, performance
How to Publish to npm From GitHub Actions (bah)20,533
how-tos, npm, github-actions
Dictionary Compression Is Finally Here, and It’s Ridiculously Good (pim/htt)20,532
compression, performance, javascript
From “instanceof” to “Error.isError”: Safer Error Checking in JavaScript20,531
javascript, errors
Upskilling in the AI Age (dac)20,530
ai, tooling, learning
Getting Started With the Vercel AI SDK in Node.js20,529
introductions, nodejs, ai, vercel
Matt May Speaks (mat+)20,528
videos, interviews, accessibility, html, standards
Sprites on the Web (jos)20,527
css, images, sprites, techniques
Wasm vs. JavaScript: Who Wins at a Million Rows?20,526
webassembly, javascript, comparisons, performance
The Problem With HTML Reset Buttons (ada)20,525
html, buttons, user-experience
AI Is Locking People Out—at Scale (kc)20,524
accessibility, ai, studies, research, metrics
Native HTML Components Don’t Guarantee Good UX (ada)20,523
html, components, user-experience
Standard HTML Video and Audio Lazy-Loading Is Coming (sco)20,522
html, multimedia, lazy-loading, standards, performance
ACCESSIBILITY.md (mgi)20,521
accessibility, documentation
Why AI Is Exposing Design’s Craft Crisis20,520
ai, design, craft, figma, link-lists
My Malware Story Gets Stolen; Yet Another Argument for the IndieWeb (bre)20,519
malware, indieweb, licensing
Big Tech Still Dreams of Mass Surveillance—Now People Are Pushing Back (tro/sal)20,518
privacy, amazon, google, ai, politics
What Is the IndieWeb? (bre)20,517
indieweb, terminology, concepts
“Made in EU”—It Was Harder Than I Thought20,516
privacy, hosting, tooling, tech-stacks
Everything You Never Wanted to Know About “visually-hidden” (dbu)20,515
html, css, hiding, accessibility
Lil’ Fun Langs (sur)20,514
programming, overviews, link-lists
Git Is the New Code (nec)20,513
ai, git, command-line, code-reviews
The Software Development Lifecycle Is Dead (bor)20,512
processes, ai, ci-cd
Weird Issues With CSS Calculations in Safari 26.2 (cit)20,511
css, functions, safari, apple, browsers
Potentially Coming to a Browser “:near()” You (dxn/css)20,510
css, functions
WordPress 7.0 Beta 1 (wor)20,509
release-notes, wordpress
An Official* Logo for HTML (zac)20,508
html
How to Cut LLM Token Costs and Speed Up AI Apps20,507
how-tos, ai, token-optimization, economics
A Considered Approach to Generative AI in Front-End Development (cle)20,506
ai, processes
Notes on Relying on the ARIA Authoring Practices Guide (ste)20,505
aria, accessibility, html
Design Systems Can’t Automate Away All of Your Accessibility Considerations (eri/zer)20,504
design-systems, components, automation, accessibility, aria
Using the Browser’s “<canvas>” for Data Compression20,503
canvas, compression
A Web Revival: The Internet Didn’t Die, You’re Just Not on It20,502
videos, indieweb, web
An In-Depth Guide to Customising Lists With CSS (ric/pic)20,501
guides, css, lists
8 Things You Didn’t Know About Code Mode (bla)20,500
ai
Fastest Frontend Tooling for Humans and AI20,499
tech-stacks, tooling, typescript, developer-experience, optimization
Suffering From Bugs: How I Almost Deleted My Entire Project20,498
bugs, lessons
“border-shape”: The Future of the Non-Rectangular Web (una)20,497
css, shapes, borders
Vitest vs. Jest 2026: The Migration Guide With Real Benchmarks20,496
guides, migrating, vitest, jest, comparisons
Tailwind CSS v4: Container Queries and the Death of Media Queries20,495
tailwind, container-queries, media-queries, css
Claude Sonnet 4.6 vs. GPT-5: The 2026 Developer Benchmark20,494
claude, anthropic, openai, ai, comparisons, metrics, programming, documentation
Sometimes the Best Accessibility Fix Is a Usability Fix20,493
accessibility, usability
When Accessibility Demand Letters Land on Your Desk: A Framework for Strategic Response (dec)20,492
accessibility, strategies
Why Separate Guest and Logged in States Create Accessibility Barriers20,491
accessibility, authentication
Why You Need to Close Open Objects When Users Navigate Away20,490
accessibility, wcag
AI Is Giving Tech Companies Power That Once Belonged to Governments (res)20,489
ai, economics
5 CSS Fouls That I See Way Too Often (kev)20,488
videos, css
Distinguishing “Components” and “Utilities” in Tailwind (zel/css)20,487
tailwind, terminology
Analyst Reactions: How AI Is Reshaping Engineering Organizations20,486
ai, engineering-management
Editor Improvements: Smooth Caret Animation and New Selection Behavior (jet)20,485
code-editors, jetbrains
Europeans Are Dangerously Reliant on US Tech—Now Is a Good Time to Build Our Own (joh/the)20,484
economics, politics, google, microsoft, amazon
Designing for Transparent Screens20,483
design, transparency+opacity, readability
Preserving the Web Is Not the Problem—Losing It Is (tec)20,482
web, ai
Web Rewind20,481
websites, web, history
Frontend Memory Leaks: A 500-Repository Static Analysis and Five-Scenario Benchmark Study20,480
memory, react, vuejs, angular, studies
From Random Chunks to Real Code—Wiring Up Next.js Source Maps in Sentry (get)20,479
nextjs, source-maps
Design Docs Considered Harmful20,478
documentation, software-design
The Future of Design Is Code and Canvas (zoi/fig)20,477
figma, design, outlooks
Building Typographic Scales in CSS With “:heading()”, “sibling-index()”, and “pow()” (stu)20,476
css, functions, math, typography
Igalia’s Eric Meyer and Ujjwal Sharma Chat With Designer, CSS Developer, and Illustrator Lynn Fisher (lyn+/iga)20,475
podcasts, interviews, css, design
Web Development Is More Than Frontend and Backend (Here’s What Actually Matters)20,474
programming, career
Selectors Level 5 (fan+/w3c)20,473
css, selectors, standards
5 Source Map Best Practices for Frontend Production Deployments (ele/des)20,472
guest-posts, source-maps, javascript, best-practices
Europe Is Ready to Ditch US Tech for Private Alternatives (pro)20,471
tooling, privacy, security, metrics
We Cut Node.js’ Memory in Half (mco/pla)20,470
nodejs, v8, javascript, memory, metrics
Interop 2026 (geo/css)20,469
interoperability, web-platform, browsers, support, link-lists
Spiral Scrollytelling in CSS With “sibling-index()” (css)20,468
css, functions, scrolling, gsap
Agentic UX: 7 Principles for Designing Systems With Agents20,467
ai-agents, ai, design, principles
The Hidden Cost of AI Prototypes That Are Made to Die20,466
prototyping, ai, design, product-management
Why We Hate AI (fal)20,465
ai
Angular Bindings: What Are They and How Do I Use Them? (ato)20,464
angular
Anchored Menus and a Lesson in Scoping (chr/fro)20,463
css, anchor-positioning, scope, lessons
Here’s How to Instruct a LLM to Reference the ARIA Authoring Practices Guide (eri)20,462
how-tos, ai, aria, accessibility
How “Liquid Design” Broke the iPhone and Forced Apple’s Great Reset (web)20,461
design, usability, readability, liquid-glass, apple
Why It’s Important to Manually Test for Accessibility20,460
accessibility, testing
Style Headings Using the CSS “:heading” Pseudo-Class (stu)20,459
headings, css, selectors
Why Your CEO Acts Like a Clown: The Tribal Myths of Leadership20,458
leadership, culture, engineering-management
AI Is Accidentally Making Documentation More Accessible (ger)20,457
ai, accessibility, documentation
Why WebAIM’s Report Only Found 6 Issues on a Million Pages20,456
videos, accessibility, webaim
We Scanned 250 Node.js Repos for Blocking I/O: 76% Had It—and the Benchmarks Explain Why That Matters20,455
nodejs, file-handling, performance, metrics
How Fast Is Fast Enough? Rethinking Web Performance in Pragmagical Terms (tam/spe)20,454
performance, user-experience, concepts
Justifying “text-wrap: pretty”20,453
css, typography
Quick and Dirty Linting (sto)20,452
linting, typescript, javascript, biome
A Programmer’s Loss of a Social Identity (rat)20,451
programming, career, community
JS-Heavy Approaches Are Not Compatible With Long-Term Performance Goals (ser)20,450
javascript, frameworks, performance, prioritization
Fun With TypeScript Generics (ada/fro)20,449
typescript, generics
Evaluating AGENTS.md: Are Repository-Level Context Files Helpful for Coding Agents? (ves+)20,448
studies, research, ai, ai-agents, agentsmd
Are We Having the Wrong AI Dreams? (jet)20,447
ai, outlooks
The EU Moves to Kill Infinite Scrolling (egr)20,446
social-media, scrolling, legal
How to Debug the “@starting-style” At-Rule in Polypane (pol)20,445
how-tos, debugging, css, animations, polypane, browsers
Interop 2026: Continuing to Improve the Web for Developers (rac)20,444
interoperability, web-platform, browsers, support
Virtual Scrolling for Billions of Rows—Techniques From HighTable (sev)20,443
html, tables, scrolling, performance, react
State of React 2025 [Results] (sac/dev)20,442
surveys, metrics, react
You Might Not Need “role="presentation"” (stv/pic)20,441
html, aria, accessibility
Mastering Dialog Accessibility20,440
accessibility, modals, html, aria
Launching Interop 2026 (jaf/moz)20,439
interoperability, web-platform, browsers, support
The 80% Job: How Design Leads Are Using AI—and It’s Not About Mockups20,438
design, ai, prototyping, communication, leadership, product-management, link-lists
Accessibility Contractors Have Their Place-but It’s Not Everywhere20,437
accessibility, business-relations, processes
The Beautiful Web (j9t)20,436
web, indieweb
Radix UI vs. Base UI (sha)20,435
react, libraries, radix, comparisons
What It Really Costs to Run a WordPress Website in 202620,434
wordpress, economics
Life After Figma Is Coming (and It Will Be Glorious) (jon)20,433
design, ai, tooling, figma
Designing for Agentic AI: Practical UX Patterns for Control, Consent, and Accountability (sma)20,432
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,431
traffic, search, chatgpt, google, metrics
How to Create a CSS-Only Elastic Text Effect (css/fro)20,430
how-tos, css, effects
Re-Creating a Pantone Color Deck in CSS (sto)20,429
css
Announcing TypeScript 6.0 Beta (dan/typ)20,428
typescript
Saying No to Good Ideas (kvl)20,427
processes, communication
The Natural Design Process20,426
design, processes
Container Timing: Measuring Web Components Performance (jda/iga)20,425
performance, web-components, chromium
You Know What? Just Don’t Split Words Into Letters (aar)20,424
accessibility, html, screen-readers, support
Does Your Navigation Need an ARIA Menu? Probably Not (pop)20,423
accessibility, navigation, aria, keyboard-navigation
Building an Endless Procedural Snake With Three.js and WebGL (suj/cod)20,422
threejs, webgl, javascript
Shades of Halftone (max)20,421
effects, halftone
Polypane 28: Project Improvements, Elements Panel Updates, and Chromium 146 (pol)20,420
release-notes, polypane, browsers
The Software Sovereignty Scale (dri)20,419
foss, licensing, legal
It’s About to Get a Lot Easier for Your JavaScript to Clean Up After Itself (wil/pic)20,418
javascript, garbage-collection
The 2026 Frontend Dogma Survey (fro)20,417
frontend-dogma, surveys
Designing Useful Ads20,416
design, monetization, ai
Emotional Design: Let’s Design for Silence20,415
design
Fast by Default (den)20,414
performance, architecture, tooling, code-reviews, processes
WebSocket Penetration Testing: A Complete Guide to CSWSH20,413
guides, security, websockets, testing
Webspace Invaders (mat)20,412
ai, traffic
“Design Courage”20,411
design
Modern CSS Code Snippets20,410
websites, css, examples, comparisons
Design Is Dead, It’s All Evolution Now (ily)20,409
design, processes
Background Patterns With CSS “corner-radius” (pre/fro)20,408
css, backgrounds, effects, examples
Vite, Rust, and the Future of JavaScript Tooling (eva+/bet)20,407
videos, interviews, vuejs, rust, javascript, oxc, bundling, tooling, ai
Trying to Make the Perfect Pie Chart in CSS (mon/css)20,406
css, html
AI Fatigue Is Real and Nobody Talks About It20,405
ai, code-reviews
Large Tech Companies Don’t Need Heroes (sea)20,404
processes, engineering-management, career
Underlining Links With CSS (stu)20,403
css, links
Definitive Guide to Multi-Threaded Rendering on the Web (hac)20,402
guides, dom, rendering
Why Your Brain Rebels Against Redesigns—Even Good Ones20,401
design, redesigning, link-lists
The Return of the Intuitive Designer in the Age of AI20,400
design, user-experience, ai
Why JavaScript Needs Structured Concurrency20,399
javascript, concurrency, asynchronicity
Interop 2025: A Year of Convergence (stu/web)20,398
interoperability, web-platform, browsers, retrospectives, metrics
How Generative AI Is Redefining Brand Identity Systems20,397
ai, branding, design
How (and Why) to Stop Users From Selecting Text on Your Website20,396
css
The Browser Hates Surprises (fro)20,395
browsers, performance
The CSS Selection (ven/pro)20,394
css, metrics, studies, research
What to Expect in Angular 2220,393
angular
A New Meta Tag for Respecting Text Scaling on Mobile (mat)20,392
accessibility, metadata, scaling
Your Design System Needs an Enforcer (nng)20,391
design-systems, processes
Minifier Benchmarks (j9t)20,390
minification, tooling, metrics, comparisons, swc, html-minifier, htmlnano
CSS “@scope”: An Alternative to Naming Conventions and Heavy Abstractions (sma)20,389
css, scope, naming
Git’s Magic Files (and)20,388
git, configuration
How to Use the “Auto” Value With “clamp()” (css)20,387
how-tos, css, functions
Accessibility Conformance Testing (ACT) Rules Format 1.1 (wil+/w3c)20,386
accessibility, compliance, testing, documentation
Measuring SVG Rendering Time (sto)20,385
svg, png, images, rendering, performance, web-vitals, metrics
How to Write Alt Text for News (sta/the)20,384
how-tos, alt-text, accessibility, images
Why Designers Secretly Love Constraints (Even When We Complain About Them) (web)20,383
design
Quick Tip: Do Not Replicate OS Behavior (nat)20,382
accessibility, tips-and-tricks
What’s New in ViteLand: January 2026 Recap (man/voi)20,381
release-notes, vite, vitest, rolldown, oxc
Clarity Is Not the Enemy of Depth (the)20,380
content, writing, accessibility
How to Improve Your HTML Game (j9t)20,379
how-tos, html, conformance, learning, career
You Probably Shouldn’t Be Annotating Focus Order (eri)20,378
accessibility, focus, forms, annotations
[Webpack] Roadmap 2026 (eve)20,377
webpack
AI Will Eliminate the Need for Accessibility Professionals? I Think Not20,376
ai, accessibility, testing, career
Stop Installing Libraries: 10 Browser APIs That Already Solve Your Problems20,375
javascript, libraries, apis, web-platform
Introduction to the New HTML Element “<geolocation>” (mat)20,374
introductions, html, geolocation
CSS Properties That Solve Annoying Problems (kev)20,373
videos, css
From Basic Adoption to Meaningful Measurement: How Design System Metrics Evolve (zer)20,372
design-systems
Building Bulletproof React Components20,371
react, components
How to Shoot a Screen Using a Board of Keys (mwi)20,370
screenshots, keyboard-shortcuts, history, apple
Introducing Deno Sandbox (tin/den)20,369
deno
State of JavaScript 2025 [Results] (sac/dev)20,368
surveys, metrics, javascript
Deno Deploy Is Generally Available (lca+/den)20,367
deno
Combobox vs. Multiselect vs. Listbox: How to Choose the Right One (vit/sma)20,366
how-tos, forms, design-patterns, comparisons
Nice Select (arg)20,365
forms, css
How Eleventy Survived: Funding, Growth, and Open Source Reality (zac+/fon)20,364
podcasts, interviews, eleventy, foss
A Percise Parser (rem)20,363
javascript, parsing
Elastic/Bouncy Text Effect (css)20,362
css, effects
Accessible Inline Collapsible (eri)20,361
accessibility, html, disclosure-widgets
Accessibility Progress and Healthy Engineering Teams (hbu)20,360
accessibility, technical-debt, web-platform, prioritization
Node.js Path Traversal: Prevention and Security Guide (loi)20,359
guides, nodejs, security
Implementing the Temporal Proposal in JavaScriptCore (you/iga)20,358
javascriptcore, javascript-engines, time
Accessible Design Is Digital Infrastructure (ann)20,357
accessibility, design
What’s Missing From the Web Platform? (wes+/syn)20,356
podcasts, web-platform, wish-lists
Performance-Optimized Video Embeds With Zero JavaScript (stf/fro)20,355
multimedia, performance
What Is JPEG XL: Do We Really Need Another Image Format? (aar/deb)20,354
jpeg-xl, images, quality, performance, metrics
Release Notes for Safari Technology Preview 236 (jon/web)20,353
release-notes, safari, apple, browsers
Building an RSS Aggregator With Astro (ray)20,352
astro, rss, syndication, functionality
Explicit Resource Management in JavaScript20,351
javascript
Stop Asking “Is This on Brand?”—It’s Killing Your Creativity (web)20,350
design, branding, creativity
Limiting Work in Progress Is a Superpower20,349
project-management, processes, productivity, agile, scrum
HTML Minifier Next 5, a Quick Upgrade Guide (j9t)20,348
guides, html-minifier
Selfish AI (cre)20,347
ai
The Indie Web Is Not Defined by Its Enemies (khu)20,346
indieweb, ai
Tim Cook Sold Apple’s Soul (kev)20,345
apple
Google Helped Israeli Military Contractor With AI, Whistleblower Alleges (was)20,344
google, ai, ethics, privacy
When Design Stops Asking Why and Starts Asking, “Can AI Do It?”20,343
design, ai, processes, quality
The Too Early Breakpoint (sha)20,342
css, layout, breakpoints
Repeatable Form Fields Made Simple (aar)20,341
forms, html, web-components
A Broken Heart (api)20,340
performance, fonts, emoji
My Opinionated ESLint Setup for Vue Projects (ale)20,339
eslint, configuration, vuejs
Tickering With Node.js Core on ARM64 Windows (joy)20,338
nodejs, building, windows, microsoft
New to the Web Platform in January (rac)20,337
release-notes, web-platform, browsers, firefox, mozilla, chrome, google
“WCAG Is Difficult to Read, Don’t Read It” Is a Self-Fulfilling Prophecy (yat)20,336
wcag, standards, accessibility
AI Agents Explained (tre)20,335
ai-agents, ai
Practical Use of AI Coding Tools for the Responsible Developer (ska/sma)20,334
ai, tooling, prompting
Announcing Rspress 2.020,333
release-notes
How the Same Content Always Has Multiple Different Versions20,332
accessibility, content, comparisons
React’s “ViewTransition” Element (chr/fro)20,331
react, view-transitions
Understanding Hydration in Frontend Frameworks: Definition, Challenges, and Optimization Strategies (ele/des)20,330
guest-posts, frameworks, hydration, optimization, concepts, strategies
Vibe Prototyping Is a Double-Edged Sword (edd)20,329
prototyping, vibe-coding, ai, design
The Design System Paradox: How Abstraction Can Hollow Out Quality (pjo/zer)20,328
design-systems, quality, training
How to Make an HTTP Request in Node.js (loi)20,327
how-tos, nodejs, http
Is Learning CSS a Waste of Time in 2026?20,326
css, learning, career, discussions
OpenJS Foundation Security Program: Annual Report 2025 (ope)20,325
openjs, security
Cryptography Usage in Web Standards (w3c)20,324
standards, cryptography, security
llms.txt and robots.txt: Optimizing for AI Bots and Answer Engines20,323
ai, optimization, aiso, robotstxt, llmstxt, comparisons
Why I Use Kirby CMS (jon)20,322
kirby
Making Interesting Borders With CSS “corner-shape” (cas)20,321
css, borders
How Rolldown Works: High-Performance Code Splitting With Bitset Logic (atr)20,320
rolldown, bundling, code-splitting, performance
Why I Don’t Call Myself an Accessibility Expert20,319
accessibility, career
How an Accessibility Designer Adds Keyboard Shortcuts to a Web App (eri)20,318
web-apps, keyboard-shortcuts, accessibility
The Next Decade of UX: Why Psychology Matters More Than Ever (tbf/nng)20,317
videos, interviews, user-experience, design, outlooks
How to Design Great Alt Text: An Introduction (deq)20,316
how-tos, introductions, alt-text, images, accessibility
How to Style the New “::search-text” and Other Highlight-y Pseudo-Elements (dxn/css)20,315
how-tos, css, selectors
Introducing ReliCSS: A Tool for Front-End Archaeology (stu)20,314
introductions, tooling, css, auditing
AI’s Text-Trap: Moving Towards a More Interactive Future20,313
ai, interaction-design, user-experience
Are We Doing UX for AI the Right Way? (cxo)20,312
user-experience, design, conversational-design, ai, link-lists
7 Learnings From Anders Hejlsberg: The Architect Behind C# and TypeScript20,311
lessons, scalability, typescript, foss, ai, collaboration
A Year of Creator Wins: Highlights From the JetBrains Content Creators Program 2025 (jet)20,310
jetbrains, community
How AI Is Redefining the Way We Find Content (cle)20,309
ai, crawling, search, content, seo
Some Notes on Starting to Use Django (b0r)20,308
django
More Invoker Commands, and More Reasons Not to Use JavaScript Please (paw)20,307
html, examples
Unstacking CSS Stacking Contexts (sma)20,306
css, positioning
Try Text Scaling Support in Chrome Canary (jos)20,305
chrome, google, browsers, scaling, accessibility
We’re Creating a Knowledge Collapse and No One’s Talking About It20,304
ai, documentation, learning, career
Solving Shrinkwrap: New Experimental Technique (kiz)20,303
css, techniques
On the Need for Neutral Maintained Minifier Metrics (j9t)20,302
minification, tooling, html-minifier, htmlnano
A Security Checklist for Your React and Next.js Apps20,301
security, react, nextjs
How Web Performance Impacts User Experience (mat/deb)20,300
performance, user-experience, web-vitals, metrics
Claude Code for Designers: A Practical Guide20,299
guides, design, claude, anthropic, ai
Design Systems Checklist (tyc)20,298
design-systems, checklists
9 Reasons to Choose Sketch in 2026 (fre/ske)20,297
sketch
Supporting Open Source in 2026: Why It Matters More Than Ever ($50,000) (mar/fro)20,296
foss, web-platform
Drawing Connections With CSS Anchor Positioning20,295
css, anchor-positioning
Improving Single Executable Application Building for Node.js (joy)20,294
nodejs
Density vs. Clarity: The Core Tension in Modern UI Design (web)20,293
design, information-design, minimalism, comparisons, figma
Why the Future of Design Is Less Flash and More Thought20,292
design, outlooks
There Is No Need to Trap Focus on a “dialog” Element (zel/css)20,291
modals, focus, accessibility
SPAs Are a Performance Dead End (yeg)20,290
single-page-apps, html, performance
How to Implement Rate Limiting in nginx (naw/one)20,289
how-tos, servers, nginx, rate-limiting, security
Porting 100k Lines From TypeScript to Rust Using Claude Code in a Month (vje)20,288
migrating, typescript, rust, claude, anthropic, ai
Vibe Prototyping Isn’t Solving Any Problems—but It’s Creating Many New Ones (pav)20,287
prototyping, design, ai, vibe-coding
Using Maturity Models to Build Accessibility That Lasts (ted)20,286
accessibility
npmx (dan/npm)20,285
websites, npmx, npm, packages
Figma Slots for Repeating Items (nat)20,284
figma, components
How to Use Font Ligatures20,283
how-tos, typography, fonts, tooling, adobe, figma, microsoft, css
Software Design Principles That Matter20,282
software-design, principles, examples
6 Ways to Set Better Content Accessibility Goals in 202620,281
accessibility, processes
Anchor Interpolated Morph (AIM) (arg)20,280
css, animations, techniques
Responsive Hexagon Grid Using Modern CSS (css/css)20,279
css, functions, math, responsive-design
The Context Collapse Problem20,278
ai, documentation
CSS Scope and Mixins (chr+/odd)20,277
videos, interviews, css, scope, mixins
Do We All See the Same Colors? (tba)20,276
colors, color-blindness, accessibility
Names Are Hard but They Don’t Have to Be (col)20,275
internationalization, naming, validation
Handling Breaking Changes in a Design System Without Causing Chaos (sha/zer)20,274
design-systems, maintenance, semver, communication
Understanding the Fundamentals of CSS Layout (pol)20,273
fundamentals, css, layout, grids, flexbox, positioning
CSS Optical Illusions (alv)20,272
css, effects, examples
Claude’s New Constitution (ant)20,271
claude, anthropic, ai
Why Webflow Isn’t the Future—Yet (web)20,270
webflow, low-and-no-code
10 Digital Accessibility Predictions for 2026 (ons)20,269
accessibility, outlooks, wcag, career, ai, legal, assistive-tech
When Will CSS Grid Lanes Arrive? How Long Until We Can Use It? (jen/web)20,268
css, grids, masonry, layout
CTA Hierarchy in the Wild (jim)20,267
user-experience, buttons, youtube
10 Tips for Effective User Experience Evaluation20,266
user-experience, usability, content, design, testing, tips-and-tricks
Barriers From Links With ARIA (aar)20,265
accessibility, links, html, aria
The Conditionally Open Web (cor)20,264
open-web
What Makes Generated UI Worth Keeping?20,263
design, ai, branding, tooling
How to Diagnose Lighthouse Score Discrepancies Between Tools (mat/deb)20,262
how-tos, performance, lighthouse, google, tooling
Floating Action Buttons Are Bad, and What to Do Instead (eri)20,261
buttons, usability, material-design, google
Mobile App Accessibility Under EN 301 549 v4.1.020,260
accessibility, mobile, standards
Why Light-Weight Websites May One Day Save Your Life (mah)20,259
performance, accessibility, print, frameworks
Accessibility 101 and Core Concepts (kno)20,258
videos, accessibility, introductions, concepts
The Accessibility Manager Moment No One Warns You About20,257
accessibility, leadership, legal, communication
Securing npm Is Table Stakes (nza+/cha)20,256
podcasts, interviews, npm, security, ai
Demystifying Screen Reader Use for Manual Testing: Deneb Pulsipher and Kosi Asabere20,255
videos, accessibility, testing, screen-readers
CSS in 2026: The New Features Reshaping Frontend Development (log)20,254
css, functions
How to Favicon in 2026: Three Files That Fit Most Needs (sit/evi)20,253
how-tos, images, favicons
I Learned the First Rule of ARIA the Hard Way (css)20,252
accessibility, aria, semantics, html
Designing Beyond the Happy Path in Design Systems (ste/zer)20,251
design-systems, design
Developing Trustworthy Information (jma)20,250
writing, content, ai
Faking a Fieldset-Legend (tyl/clo)20,249
html, forms, css
Node.js 16 to 25 Performance Benchmarks20,248
nodejs, performance, metrics, comparisons
Lowering the Specificity of Multiple Rules at Once (mat)20,247
css, cascade
Inside Turbopack: Building Faster by Building Less (she+)20,246
turbopack, performance
A Brief History of Programming… (fir)20,245
videos, programming, history
Animating Responsive Grid Layout Transitions With GSAP Flip (cod)20,244
css, grids, layout, animations, gsap, plugins
Rethinking “Pixel Perfect” Web Design (ami/sma)20,243
design, quality
View Transitions and Playing Video (chr/fro)20,242
javascript, view-transitions, multimedia
AI’s Missing Ingredient (cwo)20,241
ai, vibe-coding, creativity, design
Some Thoughts on the Open Web (mno)20,240
open-web, web
Design Tokens With Confidence (luk)20,239
design-tokens, json, css
What Figma Got Wrong About Design Systems (web)20,238
figma, design-systems
The State of WebAssembly—2025 and 2026 (uno)20,237
webassembly, retrospectives, outlooks
What Design Leaders Must Unlearn to Lead in an AI-First World20,236
design, leadership, ai
“Code Only” Props in Figma (nat)20,235
figma, props
Design in Code, Get Praise (ada)20,234
design, processes, communication
How to Build a WordPress Block Theme20,233
how-tos, wordpress, theming
Vercel vs. Netlify vs. Cloudflare: Serverless Cold Starts Compared20,232
vercel, netlify, cloudflare, serverless, comparisons, metrics
jQuery 4.0.0 (tim/jqu)20,231
jquery, release-notes
AdonisJS v7 Is Feature-Complete and Entering Final Validation (vir/ado)20,230
release-notes, adonisjs
ASCII Characters Are Not Pixels: A Deep Dive Into ASCII Rendering20,229
deep-dives, ascii, rendering
The Astro Technology Company Joins Cloudflare20,228
astro, cloudflare
Beyond Compliance: 5 Surprising Ways the UVAC Framework Turns Accessibility Into a Brand Powerhouse (wil)20,227
accessibility, processes, concepts
When Design Kills Usability—Meet the Custom Cursor (mal)20,226
videos, design, usability, cursors
Chrome 145 Adds Experimental Support for Vertical Tabs (bra)20,225
chrome, google, browsers
Better Defaults for Popovers (mat)20,224
pop-overs, css, resets
State of UX 2026: Design Deeper to Differentiate (nng)20,223
user-experience, design, outlooks, career, ai
PWA (htt)20,222
web-almanac, studies, research, metrics, progressive-web-apps, web-apps, web-workers
Ecommerce (htt)20,221
web-almanac, studies, research, metrics, ecommerce, tooling, performance, web-vitals, lighthouse
CMS (htt)20,220
web-almanac, studies, research, metrics, content-management, tooling, wordpress, user-experience, performance, web-vitals, lighthouse, apis
Security (vik+/htt)20,219
web-almanac, studies, research, metrics, security, tls, certificates, cookies, csp, http-headers, apis, sanitization, configuration
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability (ric)20,218
tailwind, comparisons, css-in-js, maintainability, css, javascript
Usability Heuristics and Competition in Games20,217
usability, heuristics, design, aesthetics
The Incredible Overcomplexity of the Shadcn Radio Button (pau)20,216
html, forms, shadcn, complexity
On Coding Agents and the Future of Design (jef)20,215
ai, ai-agents, design, outlooks
Software as Fast Fashion (tan)20,214
programming, ai, sustainability, economics
Fonts (htt)20,213
web-almanac, studies, research, metrics, fonts, performance, css
The Missing Link for Web Components (kin/fro)20,212
web-components, typescript, json, mcp, ai, tooling
Building a Scroll-Driven Dual-Wave Text Animation With GSAP (cod)20,211
gsap, animations, scrolling
Performance (25p+/htt)20,210
web-almanac, studies, research, metrics, performance, web-vitals, hints, speculation
Third Parties (htt)20,209
web-almanac, studies, research, metrics, embed-code
Using “100vw” Is Now Scrollbar-Aware (in Chrome 145+, Under the Right Conditions) (bra)20,208
css, units, scrolling, chrome, google, browsers
Accessibility (bog+/htt)20,207
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)20,206
design, processes
Accessible Faux-Nested Interactive Controls (eri/pic)20,205
accessibility, conformance, html, nesting
Privacy (htt)20,204
web-almanac, studies, research, metrics, privacy, legal, consent-management, do-not-track
Generative AI (chr+/htt)20,203
web-almanac, studies, research, metrics, ai, robotstxt, llmstxt
WebAssembly (htt)20,202
web-almanac, studies, research, metrics, webassembly
CDN (htt)20,201
web-almanac, studies, research, metrics, content-delivery, http, performance, http-headers, compression, tls, hints
SEO (htt)20,200
web-almanac, studies, research, metrics, seo, robotstxt, llmstxt, links, content, structured-data, amp, html, internationalization
Cookies (htt)20,199
web-almanac, studies, research, metrics, cookies
Page Weight (bar+/htt)20,198
web-almanac, studies, research, metrics, performance, web-vitals, lighthouse, google
So You Think Your Website Is Doing Great (cit)20,197
html, javascript, css, quality
Beyond Manual Audits: How Automation Strengthens Accessibility (equ)20,196
accessibility, auditing, automation, wcag
Making GitHub Actions Suck a Little Less20,195
github-actions
Node.js January 2026 Security Release: What Changed and Why It Matters (nod)20,194
nodejs, security
The “Senior Developer” Is Now the New “Entry Level”20,193
career, ai
Smashing Animations: Theming Animations Using CSS Relative Colour (mal/sma)20,192
animations, colors, theming, css
The Unhinged World of Tech in 2026… (fir)20,191
videos, outlooks, ai, javascript
Live Region Support (aar)20,190
accessibility, live-regions, support, screen-readers, nvda, jaws, voiceover
Everything You Need to Know About Ruby 4.0 (hon)20,189
ruby
EPUB and HTML—Survey Results and Next Steps (rei/w3c)20,188
surveys, epub, html
Traditional Code Review Is Dead: What Comes Next?20,187
code-reviews, ai, processes, infrastructure, scalability
How to Use OpenCode: A Practical Guide and Builds20,186
guides, opencode, ai, mcp, tooling, installing
Introducing the “<geolocation>” HTML Element (tom+)20,185
introductions, html, geolocation, chrome, google, browsers
ARIA Roles Can Remove Their Children’s Semantics (ste)20,184
html, aria, semantics, accessibility
18 Predictions for 202620,183
outlooks, ai, usability, user-experience
The Invisible Work (hvp)20,182
leadership, productivity, processes
Mitigating Denial-of-Service Vulnerability From Unrecoverable Stack Space Exhaustion for React, Next.js, and APM Users (mco+/nod)20,181
nodejs, security, vulnerabilities, react, nextjs, tooling, monitoring, performance
Tuesday, January 13, 2026 Security Releases (nod)20,180
release-notes, nodejs, security
Simulating Crop Marks (chr/fro)20,179
css
Astro 6 Beta (mat)20,178
release-notes, astro
Just the Browser (cor)20,177
websites, browsers, chrome, google, firefox, mozilla, edge, microsoft
Aspire for JavaScript Developers (dav)20,176
tooling, javascript, typescript
Design Systems and Shareable Browser Support (rob)20,175
design-systems, browsers, browserslist, support
A Polyfill for the HTML “switch” Element (tom)20,174
html, forms, polyfills
Solid.js Best Practices (bre)20,173
solidjs, best-practices, examples
Is There Too Much Design in Design Systems? (sha)20,172
design, design-systems
Don’t Start With AI, Start With the Problem (cal/nng)20,171
videos, ai, processes
Manufacturing as Code Is the Future, and the Future Is Now20,170
programming, outlooks
OpenCode vs. Claude Code (bui)20,169
opencode, claude, anthropic, ai, comparisons
Stop Turning Everything Into Arrays (and Do Less Work Instead)20,168
javascript, methods, arrays
SVG Filters Are Just Amazing (ami)20,167
svg, filters
Comments Considered Harmful in the Age of LLMs (yeg)20,166
comments, ai, maintainability
Focus Rings With Nested “contrast-color()”? (dav)20,165
css, selectors, functions, focus, contrast
Stop Using MySQL in 2026, It Is Not True Open Source (ott)20,164
mysql
Don’t Fall Into the Anti-AI Hype (ant)20,163
ai, career
How Wrong Can a JavaScript Date Calculation Go? (phi)20,162
javascript, time, apis
On Abbreviating Accessibility (ons)20,161
accessibility, microcontent
What Is the Minimum Markup Needed to Create a Modal? (rus)20,160
modals, minimalism, html, css, accessibility
Prompt Engineering Won’t Fix Your Architecture20,159
architecture, ai
How to Steal Any React Component20,158
react, components
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)20,157
mobile, javascript, animations
Death to Scroll Fade (dbu)20,156
scrolling, effects, performance
How Markdown Took Over the World (ani)20,155
markdown, web
Not All Browser APIs Are “Web” APIs (pol)20,154
apis
Brief Note on Application Keyboard Shortcuts (aar)20,153
accessibility, keyboard-shortcuts, screen-readers
Your Brand Just Evolved: The Rise of AI-Generated Identities (web)20,152
design, branding, ai
Very Good Components (bee)20,151
websites, components, html
Popover Context Menus With Anchor Positioning (chr/fro)20,150
css, tooltips, pop-overs, anchor-positioning
Node.js Package Configuration Guide (nod)20,149
guides, packages, dependencies, configuration, commonjs, esm
Judging Severity in Accessibility Issues (joe)20,148
accessibility
What Makes a Good Tech Meet-Up?20,147
discussions, community
A Data Model for Git (and Other Docs Updates) (b0r)20,146
git
Getting Started With Mistral Vibe CLI and Exploring Devstral 2 Small—Best Local Model?20,145
videos, introductions, mistral, ai
Async React20,144
videos, react, asynchronicity
Exploring React Performance (en-)20,143
videos, react, performance
Profiling With React Performance Tracks20,142
videos, react, profiling, performance
Designing Page Transitions20,141
videos, design, transitions, effects
Software Is Culture (fig)20,140
culture
2026 Accessibility Hiring Looks Busy, Yet the Patterns Show Underlying Weakness20,139
accessibility, career
Common Misconceptions About Testing Accessibility (tet)20,138
accessibility, testing
Modern Emails Using React20,137
videos, email, react
Date Is Out, Temporal Is In (wil/pic)20,136
javascript, time
Ethical and Resilient Blog Hosting (pad)20,135
hosting, blogging, ethics
npm to Implement Staged Publishing After Turbulent Shift Off Classic Tokens (sar/soc)20,134
npm, dependencies, security, github
Web Dependencies Are Broken—Can We Fix Them? (lea)20,133
dependencies, javascript, import-maps, web-platform
4 CSS Features Every Front-End Developer Should Know in 2026 (arg)20,132
css, functions, scrolling
Designing With AI-Readable Design Systems in Cursor20,131
design, design-systems, ai, cursor, code-editors
5 Accessibility Checks to Run on Every Component (hdv/zer)20,130
accessibility, components, testing, keyboard-navigation, design-tokens, microcontent, zooming, screen-readers
Google Broke My Heart (per)20,129
google, search, licensing, legal
2025 JavaScript Rising Stars20,128
javascript, frameworks, libraries, react, vuejs, tooling, ai, mobile, desktop, state-management, css-in-js, testing, static-site-generation, graphql, retrospectives
WASI 1.0: You Won’t Know When WebAssembly Is Everywhere in 202620,127
webassembly, components, standards
We Fixed a 6-Year-Old JavaScript Memory Leak (mat/deb)20,126
javascript, memory
The Text Mode Lie: Why Modern TUIs Are a Nightmare for Accessibility20,125
accessibility, command-line, ai, gemini, nvda, vi+vim, unix-like
How to “@scope” CSS Now That It’s Baseline (dxn/fro)20,124
css, scope, examples
How to Create a Pixel-to-Voxel Video Drop Effect With Three.js and Rapier (cod)20,123
how-tos, javascript, effects, tooling, gsap, threejs
JavaScript Frameworks—Heading Into 2026 (rya/thi)20,122
javascript, frameworks, outlooks, ai
How I Evaluate an ACR (VPAT) (aar)20,121
accessibility, compliance, vpat-acr, processes
Claude Devs Complain About Surprise Usage Limits, Anthropic Blames Expiring Bonus (tho/the)20,120
claude, anthropic, ai
Eric Bailey’s Predictions for the Future of Accessibility (eri)20,119
accessibility, outlooks
Streaming JSON in Just 200 Lines of JavaScript20,118
streaming, json, javascript
Anna Thielke’s Predictions for the Future of Accessibility20,117
accessibility, outlooks
Damian Sian’s Predictions for the Future of Accessibility20,116
accessibility, outlooks
Kai Wong’s Predictions for the Future of Accessibility20,115
accessibility, outlooks
The Nine Levels of JavaScript Dependency Hell (and)20,114
javascript, dependencies, maintainability
Pre-Tenuring in V8 (win)20,113
v8, javascript-engines
I Built an App in Every Frontend Framework20,112
frameworks, libraries, react, vuejs, svelte, angular, lit, marko, jquery, alpinejs, solidjs, astro, qwik, comparisons
How GitHub Monopoly Is Destroying the Open Source Ecosystem (plo)20,111
foss, github, microsoft
The Next Two Years of Software Engineering (add)20,110
programming, career, outlooks, ai
V7: Typographic Scales and Technical Pens20,109
design, typography, css, case-studies
How Browsers Work (dmy)20,108
websites, guides, browsers, urls, http, tcp, html, dom
TIL: Why ARM Has a JavaScript Instruction20,107
javascript
Sounds on the Web20,106
web, multimedia
Being a Colourblind Designer (wpa)20,105
videos, accessibility, color-blindness, colors, design
21 Lessons From 14 Years at Google (add)20,104
lessons, google, career
Web Development Is Fun Again20,103
ai, creativity
The Package Management Landscape (and)20,102
dependencies, tooling, overviews, link-lists
10 UX Design Shifts You Can’t Ignore in 202620,101
design, user-experience, ai, outlooks
The Code Review That Cost $2 Million20,100
code-reviews, economics, ai
Managing Infrastructure Across Multiple Environments20,099
infrastructure, dev-ops, maintenance
Building a JavaScript Runtime in One Month (the)20,098
javascript, runtimes, functionality
2026: The Year of My Website (the)20,097
indieweb, social-media
Security Basics for Vibe-Coders (owe/pro)20,096
fundamentals, security, vibe-coding, ai
A Website to Destroy All Websites (hen)20,095
web, indieweb
JavaScript’s “for…of” Loops Are Actually Fast20,094
javascript, loops, performance
“!important” and CSS Custom Properties (chr/fro)20,093
css, custom-properties, cascade
On Using IndieWeb Protocols Like Webmentions and Keeping Your Website Separate From Social Media (pat)20,092
indieweb, webmentions, social-media
How Can You Tell What’s Allowed Inside Each HTML Element? (rus)20,091
html, conformance
What’s !important: Conditional View Transitions, CSS/SVG Text Effects, the Best of CSS Bluesky, and More (dxn/css)20,090
css, retrospectives, view-transitions, design-systems, firefox, svg
Teaching Agents About Performance Insights (web/per)20,089
performance, ai, ai-agents
Chrome DevTools Features I Use All the Time (and Why You Should Too) (kee/per)20,088
dev-tools, chrome, google, browsers, performance, accessibility, lighthouse, network, embed-code
What Happened to WebAssembly (emn)20,087
webassembly
More Efficiency, More Demand20,086
efficiency, ai, career
Building the Brain of Your Accessibility AI (ted)20,085
accessibility, ai
The Curious Case of the Shallow Session SPAs (sli/per)20,084
performance, single-page-apps, javascript, frameworks, metrics
From Theory to Tiny: Implementing Compression Dictionaries (rya/per)20,083
performance, compression, content-delivery
Touch Targets and Web Accessibility20,082
accessibility, touch
Testing Methods: Status Messages (dec)20,081
accessibility, testing, wcag, notifications, link-lists
8 Predictions for 2026: What Comes Next in AI? (phi)20,080
ai, outlooks
Why Developers Are Ditching Frameworks for Vanilla JavaScript20,079
frameworks, javascript, apis, performance, micro-frontends, architecture
HTML Content Categories (rus)20,078
html, semantics
“require(esm)” in Node.js: From Experiment to Stability (joy)20,077
nodejs, esm
The 8 Trends That Will Define Web Development in 2026 (log)20,076
trends, outlooks, ai, frameworks, tanstack, typescript, edge-computing, presentational-html
Testing Methods: Name, Role, Value (dec)20,075
accessibility, testing, wcag, aria, link-lists