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

Frontend Dogma

“2025” News Archive (6)

Entry (Sources) and Additional TopicsDate#
War Story: The Hardest Bug I Ever Debugged (jak)772
debugging, javascript, google, v8, chrome, browsers, bugs
AI Is the Future of Accessibility (kar)771
accessibility, ai, outlooks
Grid First, Flex Third (fim)770
css, layout, grids, flexbox
When Do Retry, Backoff, and Jitter Work? (the)769
dev-ops, concepts
Whose Design Process? (uxd)768
design, ai, creativity, processes
Directives: A Core Feature of the Angular Toolkit767
angular, extensibility
Don’t Use Scores From Automatic Tools in Your Accessibility Statement (cer)766
accessibility, documentation, compliance, tooling
Holographic Masks (hej)765
code-pens, css, gradients, blend-modes, effects
How Navigation Should Work for Keyboard Users (tem)764
navigation, keyboard-navigation, focus, accessibility
UI Algorithms: A Tiny Undo Stack (jul)763
javascript, algorithms, functionality, undo-redo
Collecting Code Coverage in Node.js (nod)762
nodejs, code-coverage
Is Vite Faster Than Turbopack?761
nextjs, webpack, turbopack, vite, rollup, rolldown, bundling, performance, comparisons
Create an HTML Dialog When You Click an Image (cas)760
html, images, modals
How to Create Quality Content (Follow Our 5-Level Framework) (ahr)759
how-tos, content, microcontent, seo, sem
JavaScript Basics for a Senior Dev758
fundamentals, concepts, javascript, examples
Mitigating Browser Fingerprinting in Web Specifications (npd+/w3c)757
standards, privacy, fingerprinting, browsers, w3c
Previewing Content Changes in Your Work With “document.designMode” (sma)756
browsers, dev-tools, javascript, content, design
Revisiting CSS “border-image” (mal/css)755
css, borders, images, data-urls
The Software Engineering Identity Crisis (cod)754
career, craft, ai, vibe-coding
This Is the Optimal Team Size That Improves Performance by 400%753
engineering-management, productivity
Cracking the Code of Vibe Coding (uxd)752
programming, processes, ai, vibe-coding, craft, technical-debt, design-debt
Cursor, “Vibe Coding,” and Manus: The UX Revolution That AI Needs (uxd)751
ai, chatgpt, cursor, history, vibe-coding, user-experience
Carousels With CSS (arg/dev)750
css, carousels, scrolling
Composite vs. Simple Tokens749
design-tokens, comparisons, terminology, maintainability
Cowardly Defaults and Courageous Overrides With Modern CSS (tyl/clo)748
css, presentational-html, cascade
How WebAssembly Components Can Replace JavaScript SDKs (sac)747
webassembly, components, javascript
Keyword Research for SEO in 2025: Step-By-Step Tutorial746
videos, keywords, seo, google, tooling
My Thoughts on Asynchronous Accessibility APIs (jcs)745
accessibility, asynchronicity, apis
One Thing “@ scope” Can Do Is Reduce Concerns About Source Order (chr/fro)744
css, scope, source-order
Quick Reminder That “:is()” and “:where()” Are Basically the Same With One Key Difference (geo/css)743
css, selectors, cascade
Revisiting Fluid Type (ric+/odd)742
videos, interviews, typography, fonts, responsive-design
Stop Chasing New JavaScript Frameworks: Build With Fundamentals Instead741
fundamentals, javascript, frameworks, react, vuejs, angular, svelte, solidjs
Testing Design Systems in 2025 (blv)740
design-systems, testing, storybook, vitest
The “contenteditable” “plaintext-only” Attribute Value Combination Is Now Baseline Newly Available (tom/dev)739
html, attributes, browsers, support, web-platform
Web Accessibility Requirements in the EU (mar/uxd)738
accessibility, eaa, legal, compliance, history, metrics
Five Things Vibe Coders Should Know (From a Software Engineer) (uxd)737
vibe-coding, security, sanitization
SSR Deep Dive for React Developers736
deep-dives, server-side-rendering, react, javascript
Where Frontend Dogma Gets Its News From (j9t)735
cross-posts, frontend-dogma, community, link-lists
GitHub Suffers a Cascading Supply Chain Attack Compromising CI/CD Secrets (inf)734
github, security, ci-cd
Minding the Gaps: A New Way to Draw Separators in CSS (pat/mic)733
css, borders
Naming Things in Design Systems—and Why It’s the Worst (pjo)732
design-systems, naming, components
Node.js TSC Votes to Stop Distributing Corepack (sar/soc)731
nodejs, corepack
Not All AI-Assisted Programming Is Vibe Coding (but Vibe Coding Rocks) (sim)730
programming, processes, ai, vibe-coding
Quick Accessibility Wins That Are Easy to Implement (kev)729
videos, accessibility, html, semantics, alt-text, images, contrast, colors, keyboard-navigation, focus, skip-links
Style Legend (ada)728
forms, css
The Bare Minimum You Need to Enable View Transitions on Your Website (ami)727
html, css, view-transitions, minimalism
Understanding the European Accessibility Act (EAA) (tin/tet)726
eaa, legal, accessibility
Vibe Coding and CHOP: What You Need to Know About AI-Driven Development (big/gra)725
ai, vibe-coding, processes, tooling
Why UI Automation Is Insufficient as an Accessibility API for the Web (jcs)724
accessibility, automation, microsoft
Generate Growing Images Using Gemini API723
images, ai, gemini, apis
Introducing Motion for Vue (cit)722
introductions, animations, tooling, vuejs
A Deep Dive Into the Inline Background Overlap Problem (ana/fro)721
deep-dives, css, svg, filters, backgrounds
Downtime vs. Slowtime: Which Costs You More? (tam/spe)720
performance, economics, branding
How to Think About Baseline and Polyfills (mal/dev)719
how-tos, support, browsers, web-platform, polyfills
Next.js vs. TanStack718
nextjs, tanstack, comparisons
Past and Present Futures of User Interface Design717
design, desktop, history, outlooks
Polite Is Often Better Than Being Alerted (oze)716
accessibility, aria, screen-readers
Reducing CSS Complexity With the “:is()” Pseudo-Class (cfe)715
css, selectors, complexity
Self Gap (sha)714
css, flexbox, layout
Twenty Twenty-Five Theme: The Ultimate Guide (abr)713
guides, wordpress, themes
Designing Design Systems: A Framework for Names, Terms, and Definitions712
design-systems, naming, documentation, processes
A11y 101: 1.4.2 Audio Control (nat)711
introductions, accessibility, wcag, multimedia
Breadcrumbs Are Dead in Web Design (web)710
design-patterns, navigation, breadcrumbs
But How to Get to That European Cloud? (ber)709
cloud-computing, policies, foss
Explaining UX Design Through the Lens of Construction (uxm)708
user-experience, design, processes, concepts
Is React Accessible? That’s the Wrong Question707
accessibility, react, jsx, semantics, html
Leveraging 3 Types of User Feedback to Create Better User Experiences (uxm)706
user-experience, testing
Please Stop Externalizing Your Costs Directly Into My Face (sir)705
ai, crawling, traffic, economics
Web Components vs. Framework Components: What’s the Difference? (sma)704
web-components, components, frameworks, html, comparisons
Bulk Actions: 3 Design Guidelines (nng)703
videos, guidelines, design, usability
What Are MCPs? A Beginner’s Guide to the Future of AI and Automation702
guides, ai, mcp, architecture, automation
Styling Counters in CSS (mon/css)701
overviews, css, lists
A Review of HTML Linters700
overviews, html, linting, conformance, tooling, link-lists, comparisons
10 Uses for Variables Beyond Light and Dark Mode (ali)699
figma, variables, dark-mode
Accessibility Requires Clear Responsibilities or It Will Fail (cer)698
accessibility, processes, culture
“Classless.css” Framework697
frameworks, css
Maintaining Screenshot Quality and Color Profile in Figma (max)696
figma, screenshots, images, quality, colors
Let’s Knock Down Social Media’s Walled Gardens (tim/fin)695
web, social-media
Web Scraping With Cheerio in 2025 (api)694
guides, scraping, tooling
Coding vs. Vibe Coding693
processes, ai, vibe-coding, programming, comparisons
Designers, Your Excuse Is Gone. Stunning, Animated, and Accessible. Yes, You Can! (bov)692
design, accessibility
Popping Preconceived Popover Ponderings (sco)691
accessibility, html, pop-overs
Why the Latest JavaScript Frameworks Are a Waste of Time690
frameworks, javascript, react, angular
System Design Roadmap for Beginners689
architecture, system-design, concepts
The Hidden Burden of Architectural Decision Fatigue (and How to Fix It)688
architecture, documentation
ADA Compliance vs. WCAG Conformance687
accessibility, ada, wcag, compliance, comparisons, legal
Browse No More (sta)686
browsing, searching, ai, web, user-experience
How GitHub Engineers Learn New Codebases (bri/git)685
github, learning, documentation
How to Get Deep Traces in Your Node.js Backend With OTel and Deno (den)684
how-tos, observability, tracing, nodejs, deno, tooling
How to Prevent WordPress SQL Injection Attacks (sma)683
how-tos, wordpress, sql, databases, security
“Intl.DurationFormat”: Format Time Durations With Locale Support (tre)682
javascript, localization
State of Vue.js Report 2025681
surveys, vuejs, metrics, frameworks
Accelerating Large-Scale Test Migration With LLMs680
testing, migrating, ai, case-studies
Chilled Out Text Underlines (chr/fro)679
css, links, colors
Create a Fun Quick Text Flip Effect (kev)678
videos, css, effects
“:in-range” Pseudo-Class (kev)677
css, selectors, forms
Nobody Should Be a “Content Creator” (cod)676
content, social-media, ai, career
Support for CSS and Baseline Has Shipped in ESLint (mal/dev)675
eslint, css, browsers, support, web-platform
A Perplexing JavaScript Parsing Puzzle (hil)674
javascript, parsing, history
How WebAssembly Crushes Technical Debt673
webassembly, technical-debt, metrics
Connect Claude Code to a GitHub MCP Server (mat)672
github, claude, anthropic, ai, mcp
A 10× Faster TypeScript671
videos, typescript
What’s Missing With AI-Generated Code? Refactoring (ste/the)670
surveys, studies, research, ai, productivity, quality, maintenance, refactoring
Retrieval-Augmented Generation With Node.js, Podman AI Lab, and React669
ai, nodejs, podman, react
View Transitions Applied: Smoothly Animating a “border-radius” With a View Transition (bra)668
css, animations, view-transitions, borders
Why Microsoft Is Rewriting Their TypeScript Compiler in Go (imp)667
microsoft, typescript, compiling, go
On JavaScript Closures (With Examples of Interview Questions) (mar)666
guest-posts, javascript, closures, variables, examples, interviewing
A11y 101: 1.4.1 Use of Color (nat)665
introductions, accessibility, wcag, colors
Automated Tools Can Ensure Full Accessibility Compliance664
accessibility, compliance, tooling, automation
Content Churn in Google Doubled Over Five Years (moz)663
google, search, content, seo, metrics
CSS System Colors (ant)662
css, colors
Design Systems Report 2025 (zer)661
surveys, studies, research, design-systems, metrics
DOJ Pushes for Google to Sell Chrome to Break Search Monopoly660
google, search, legal, chrome, browsers
Future of CSS: “select” Styling Without the Hacks659
css, selectors, forms, html
Lazarus Strikes npm Again With New Wave of Malicious Packages (soc)658
npm, dependencies, security
Ten Years Ago Today I Coined the Shorthand “js;dr” for “JavaScript Required; Didn’t Read” (tan)657
javascript, support, terminology
Angular Hacks Every Developer Should Know656
angular
Relative Colors (sha)655
css, colors, functions, contrast
The Hype and Risks of Vibe Coding (uxd)654
trends, design, processes, ai, vibe-coding
Here’s How Chrome Could Lose the Browser War653
chrome, google, browsers, browser-wars, history
Devs: Draw Your Line (rem)652
privacy, ethics, career
How to Handle “Urgent Request” in Scrum651
how-tos, scrum, agile, project-management, prioritization
WAI a Day (yat)650
websites, accessibility, link-lists
Is Cursor Better Than VS Code With Copilot? Absolutely and It’s Not Close649
code-editors, cursor, vs-code, microsoft, github-copilot, ai, comparisons
“aria-label” Requires a Valid Role (cfe)648
accessibility, aria
Creating Animated Accordions With the “details” Element and Modern CSS (ste/bui)647
html, css, disclosure-widgets, accordions, animations, transitions
DeepSeek and HTML (j9t)646
ai, html, minimalism, conformance
Implementing “aria-describedby” for Web Accessibility (flo/a11)645
accessibility, aria, forms, labels, html
Introducing “command” and “commandfor” (kei/dev)644
introductions, html, attributes
Prompt Engineering for Web Development643
ai, prompting, examples
Top 10 Common Accessibility Issues in Websites642
accessibility
Updates on CVE for End-of-Life Versions (raf/nod)641
nodejs, security
Usability Testing With Disabled Users Is a Good Investment (nic)640
testing, usability, accessibility
What Is the OWASP Top 10 and How Can Your Team Benchmark Security? (jet)639
owasp, security, vulnerabilities, qodana, jetbrains
Why Do We Have a “Cache-Control” Request Header? (css)638
caching, http-headers, http
10 Hidden Gems in Angular That You Should Use637
angular, functions
Great Software Design Looks Underwhelming (sea)636
software-design, simplicity
Page Speed: Avoid Large Base64 Data URLs in HTML and CSS (deb)635
performance, html, css, data-urls, compression, base64
Standards for ANSI Escape Codes (b0r)634
escaping, encoding
Cool Native HTML Elements You Should Already Be Using (hrr)633
html, modals, disclosure-widgets, forms, progress-indicators
Defending Tailwind (don)632
tailwind, presentational-html, naming, productivity, maintainability, scalability
Delaying the Shipping of CSS “@ function” From Chrome 136 to 139 (arg/dev)631
chrome, google, browsers, css
How to Fix Largest Contentful Paint Issues With Subpart Analysis (sma)630
how-tos, performance, web-vitals, metrics
How to Protect Your Web Applications From XSS (tor/w3c)629
how-tos, web-apps, security, xss
JavaScript Best Practice: Use “return await”628
javascript, asynchronicity, best-practices
Making the Fediverse More Accessible With Claude 3.7 Sonnet (jud/the)627
fediverse, bluesky, social-media, ai, claude, anthropic
Maybe Don’t Use Custom Properties in Shorthand Properties (mat)626
css, shorthands, custom-properties
Node Just Added TypeScript Support. What Does That Mean for Deno? (tin/den)625
typescript, nodejs, deno
On Ethics in Web Development (With a Brief Overview of Ethical Theories) (j9t)624
overviews, ethics
The Angular Language Server: Understanding IDE Integration Approaches (nik/jet)623
angular, code-editors, vs-code, microsoft, neovim, webstorm, jetbrains
Your Best Engineers Could Be Your Biggest Communication Liability (and How to Fix It)622
communication, collaboration
In Tech, What Matters and What Is Dangerous (ham)621
security, community, foss, open-web
From Designing Things to Designing Change (uxd)620
design, principles, collaboration
An Aura of Accessibility (tpg)619
accessibility, zooming, reflow, wcag
Automatically Generate Changelogs With Git (dan)618
git, documentation, automation
Don’t Use Fake Bold or Italic in Social Media (aar)617
social-media, unicode, screen-readers, pronunciation, accessibility
From “You Will Fail” to 15,000 GitHub Stars: The Story of Wasp, a “Laravel for JS” Full-Stack Framework616
wasp, history
Grouping Selection List Items Together With CSS Grid (pre/css)615
html, lists, forms, css, grids, layout
How ECMAScript Engines Optimize Your Variables (boa)614
ecmascript, variables, optimization
Our Favorite DevTools Features of 2025 (deb)613
dev-tools, browsers, chrome, google, edge, microsoft
Super Crispy SVG Icons (ale)612
svg, images, icons, optimization
Accessible Solutions Benefit Everyone: Here’s How (nng)611
videos, design, accessibility, examples
Is Biome Ready to Replace Prettier and ESLint?610
formatting, linting, tooling, biome, prettier, eslint
5 Questions to Ask Your Manager to 10× Your Impact at Work (cod)609
career, productivity, prioritization, communication, culture
How to Troubleshoot Node.js Images in OpenShift608
how-tos, nodejs, docker, debugging, tooling
Agentic AI Is the New Web App, and Your AI Strategy Must Evolve (the)607
ai, outlooks
Building Websites With LLMS (jim)606
html, css, view-transitions
Firefox 136 Launches With Vertical Tabs, but One Requested Feature Is Still Missing605
firefox, mozilla, browsers
Myth: Technical Debt Is the Developers Problem604
myths, technical-debt, processes, scrum, agile
Reservoir Sampling (sam)603
algorithms, randomness, visualization
SEO Is the Worst It’s Ever Been (and It’s Still Your Best Marketing Channel) (ahr)602
seo, sem, marketing, ai, outlooks
Tailwind UI Is Now Tailwind Plus (ada/tai)601
tailwind
Truth, Lies, and Progress Bars (tyl/clo)600
design, progress-indicators
Underrated Angular Features (arm/dan)599
angular
Unlock Exciting Use Cases With the Document Picture-in-Picture API (jad/dev)598
html, apis
Using and Styling the “details” Element (geo/css)597
html, css, disclosure-widgets, examples
View Transitions Applied: Dealing With the Snapshot Containing Block (bra)596
css, view-transitions
Ethical Foundations in Modern Software Development (fra)595
fundamentals, principles, ethics, foss, ai
The Professional Standing of Frontend Developers (mar)594
guest-posts, career, learning, html, css, javascript, communication, collaboration, community, ai
10 Best AI Code Review Tools and How They Work593
ai, code-reviews, tooling, comparisons, link-lists
7 Best Practices of File Upload With JavaScript and React592
file-handling, javascript, react, best-practices
A11y 101: 1.3.5 Identify Input Purpose (nat)591
introductions, accessibility, wcag, forms
CSS Meets Voxel Art: Building a Rendering Engine With Stacked Grids (cod)590
css, html, art
Everything I Was Lied to About Node.js Came True With Elixir589
nodejs, concurrency, memory, performance
Functions in CSS?! (mon/css)588
css, functions
JavaScript (htt)587
web-almanac, studies, research, metrics, javascript, performance, bundling, transpiling, web-workers, libraries, web-components
Other Causes of Signed Exchanges Errors (paw)586
signed-exchanges, errors, debugging, performance, cloudflare, google
Secure UX: Building Cybersecurity and Privacy Into the UX Lifecycle (uxm)585
user-experience, processes, security
The Case For Minimal WordPress Setups: A Contrarian View On Theme Frameworks (sma)584
wordpress, theming, tooling, minimalism
UX Analytics: How to Measure Your User Experience the Right Way (uxm)583
how-tos, user-experience, metrics, accessibility, performance, tooling
Who Is Free Software For? (tan)582
foss, licensing
One Kilobyte to Copilot: My Journey Through Programming History581
programming, ai, history
AI in the Workplace: A Productivity Boost, Not a Replacement580
ai, productivity, career
Dark Mode: Essential, Not a Preference579
dark-mode, accessibility
License to Kill: Coding With Cursor AI Agents578
cursor, code-editors, ai, ai-agents
I Finally Understand What FAANG Wants in a Candidate (uxd)577
interviewing, facebook+meta, amazon, apple, netflix, google
AX, DX, UX (jim)576
agent-experience, developer-experience, user-experience, comparisons
Be Wary of Accessibility Guarantees From Anyone (aar)575
accessibility, automation
Image Comparison Slider in 6 Lines of JavaScript574
sliders, images, javascript
My Sales Pitch for TypeScript (rau)573
typescript
Update on QUIC (jas/nod)572
nodejs, quic, tls, protocols, support
Values (yat)571
accessibility, ai, community, culture
“I’m Not a Designer But…” (ada)570
design, usability, forms, ecommerce
I Quit My FAANG Job Because It’ll Be Automated by the End of 2025 (jas)569
career, ai
Learn Zod So You Can Trust Your Data and Your Types (did)568
libraries, types, typescript, examples
Mozilla Updates Firefox Terms Again After Backlash Over Broad Data License Language (the)567
firefox, mozilla, browsers, licensing
What’s New in Svelte: March 2025 (dre/sve)566
release-notes, svelte, sveltekit
Leverage on Redux to Execute Your Tests 100× Times Faster565
react, redux, testing, performance, examples
Chrome on Android Edge-to-Edge Migration Guide (bra/dev)564
guides, chrome, google, browsers, mobile
Custom Property Fallbacks (mat/fro)563
css, custom-properties
JavaScript Fatigue Strikes Back (all)562
javascript, react, frameworks, libraries, tooling
New to the Web Platform in February (rac/dev)561
release-notes, web-platform, browsers, firefox, mozilla, chrome, google, safari, apple
Testing Tools for Accessibility Enhancement560
videos, accessibility, testing, tooling
There’s No Such Thing as “Menubar Navigation” (tem)559
accessibility, navigation, html
Views on Views (hdv)558
accessibility, wcag, terminology
When Config Becomes the Code: The Trap of Over-Abstracting Logic (max)557
configuration, debugging, low-and-no-code
Building APIs With Next.js (lee)556
nextjs, apis
Advanced Network Analysis With Chrome DevTools (jec/dev)555
videos, dev-tools, chrome, google, browsers, performance, network, caching
How to Reduce Web Application Bundle Size? (ant)554
how-tos, web-apps, bundling, javascript, tooling
Is the Button Focusable? (mat)553
accessibility, buttons, focus, quizzes
Using AI in the Browser for Typo Rewriting (ray)552
chrome, google, browsers, ai, apis, content
What Is TypeScript? An Overview for JavaScript Programmers (rau)551
overviews, typescript, javascript, comparisons
When to Use Lists for Better Accessibility550
accessibility, html, lists
New to Web Development? Run Your Own Website (j9t)549
career, training, indieweb
5 Tips to Do Less and Better Work With AI (pro)548
ai, productivity, automation, writing, prompting
Examples of Why the Web Needs Anchored Popovers (chr/fro)547
design, pop-overs, examples
Firefox: Mozilla Confirms Support for Classic Extensions and Manifest V3 Add-Ons546
firefox, mozilla, browsers, browser-extensions
Google’s Principles for Measuring Developer Productivity545
google, principles, productivity, studies, research
Open-Source Is Where Dreams Go to Die (tre)544
foss, culture, community, economics
The Existential Challenge of Design System Team Morale (pjo)543
design-systems, processes, culture
The Fallacy of Balance: Challenging the Notion of Security and Accessibility as Opposing Objectives (deq)542
videos, accessibility, security
What It Really Takes: Building an Accessibility-First Corporate Culture (deq)541
videos, accessibility, culture, strategies
8 Best Things About Working in UX (nng)540
videos, user-experience, career
The Six Cs of Accessibility539
accessibility
Next.js 15.2538
release-notes, nextjs
@ 11ty/image-color (zac)537
packages, npm, images, colors
Accessibility Maturity Models (deq)536
videos, accessibility
Better Anchor Positioning With “position-area” (jam/odd)535
css, anchor-positioning
Browsers: A Snapshot (bry)534
browsers, browser-extensions, chromium, edge, microsoft, firefox, mozilla, brave, safari, apple
CSS Snapshot 2024 (tab+/w3c)533
css, standards
How to Use “attr()” in CSS for Columns, Colors, and Font-Size (chr/fro)532
how-tos, css, functions, layout, colors, typography
Intent to Experiment for Longer (kiz)531
chrome, google, browsers, css, functions, conditionals
Justified Text, JS “moveBefore” Method, Performance Optimization (zor/css)530
videos, css, typography, javascript, performance, optimization
Turbocharging V8 With Mutable Heap Numbers529
v8, javascript-engines, javascript, performance, randomness
Why I Like Designing in the Browser (tyl/clo)528
design, processes, browsers
5 Questions for Jeremy Keith (ada+/fro)527
interviews, web, web-platform, interoperability, mobile
2024 Web Almanac: Uncovering Global Accessibility Insights With axe (mgi/deq)526
videos, accessibility, web-almanac, studies, research, metrics, axe
11 Practical Tips to Make Code Reviews Easier as a Developer525
code-reviews, tips-and-tricks, ai, principles, linting, formatting, quality, collaboration
A11y 101: 1.3.4 Orientation (nat)524
introductions, accessibility, wcag, design
Applying the Web Dev Mindset to Dealing With Life Challenges (css)523
career
Avoiding Tokens (don)522
design-systems, design-tokens
Best Practices for Cognitive Accessibility in Web Design (a11)521
accessibility, wcag, best-practices
Common Dataviz Accessibility Issues (fos/sma)520
videos, accessibility, visualization
Overlay Timeline (ove)519
websites, overlays, accessibility, history, link-lists
Simple Interactive CLI App With Node.js (rwi)518
tutorials, nodejs, command-line
Strong Opinions on URL Design (val)517
urls, user-experience
Subverting Control With Weak References (jlo)516
programming, javascript
The Figma Dilemma: Too Many Cooks, Too Few Decisions (web)515
design, figma, collaboration
Trusting AI With My Images Wasn’t Easy (dri)514
ai, images, alt-text, accessibility, automation, tooling
Web Scraping With Playwright513
scraping, playwright, typescript, youtube, functionality
Solved by Style Observer: “Element.matchContainer()” (bra)512
css, javascript
Top 10 Front-End Dev Trends for 2025 (bhu)511
trends, ai, low-and-no-code, css, edge-computing, frameworks, dark-mode, sustainability, webauthn, interaction-design, voice
1.4.10: Adversarial Conformance (aar)510
accessibility, wcag, compliance
Skip Links: What, Why, and How (tem)509
accessibility, skip-links, keyboard-navigation, wcag
Speeding Up the JavaScript Ecosystem—Rust and JavaScript Plugins (mar)508
javascript, performance, rust, plugins
It Is No Longer Safe to Move Our Governments and Societies to US Clouds (ber)507
cloud-computing, security, privacy, legal
Clean Code in JavaScript: A Comprehensive Guide506
guides, javascript, principles, conventions, variables, objects, functions, comments, testing, quality
In Defense of Text Labels (chr)505
labels, icons, images, usability, design
Stop Your Angular Apps From Leaking Memory (cod)504
videos, angular, memory
Top Benefits of Choosing Node.js for High-Performance Applications503
nodejs, performance, native
How to Do Visual Regression Testing in Vue With Vitest? (ale)502
how-tos, testing, regressions, vuejs, vitest
You Need TDD if You Use AI (lor)501
ai, testing, processes
10 Open-Source Documentation Frameworks to Check Out500
foss, documentation, tooling, link-lists, zola
Accessible Design Checklist (lau/pen)499
accessibility, design, checklists
Debugging Mutable Subresources: A Detective Story (paw)498
signed-exchanges, caching, debugging
Fixing “rowspan=0” on Tables on WebKit (kar)497
html, tables, webkit, browser-engines, browsers
Introduction to Frontend Development (the)496
introductions, html, css, javascript, frameworks, libraries, tooling, career, trends
“ruby-align” Is Baseline Newly Available (dev)495
ruby-markup, html, css, browsers, support, web-platform
Toe Dipping Into View Transitions (geo/css)494
css, view-transitions
Web Accessibility Lawsuit Moves Forward Against the State of Louisiana (lfl)493
accessibility, legal, ada
Why We Ditched Next.js and Never Looked Back (tdj)492
nextjs
UX Is Dead, Long Live UX (nng)491
user-experience, ai, economics
The Effort Paradox in AI Design (uxd)490
design, product-management, history
A Guide to AI Prototyping for Product Designers (uxd)489
guides, design, prototyping, ai, product-management
Everything You Need to Know About Invoker Commands (kei/web)488
videos, html, pop-overs
Debugging CSS Anchor Positioning (tab+/odd)487
videos, interviews, css, anchor-positioning, debugging
Digital Accessibility and the Cost of Exclusion (deq)486
accessibility, economics, ethics
Intro to Datastar (and Craft CMS) (cra)485
videos, introductions, tooling
TC39 Advances 3 Proposals to Stage 4: RegExp Escaping, Float16Array, and Redeclarable Global Eval Vars (sar/soc)484
standards, ecmascript, javascript, regex, escaping, arrays, math
Google Just Confirmed the AI Reality Many Programmers Are Desperately Trying to Deny (tar)483
programming, ai, productivity, google, github-copilot, code-editors, cursor
What I Wish I Knew as a Junior Developer (cod)482
career, lessons
3 Best Practices for Multi-Language Support in Frontend Development (ele/des)481
guest-posts, internationalization, localization, automation, ai
10 Practical Bash Commands to Simplify Complex Tasks (ski)480
shells, command-line, productivity
20 Years of AJAX: The Technology That Revolutionized Web Development479
ajax, javascript, history, data-fetching
Breakpoint-Free CSS Grid Layouts (kev)478
videos, css, grids, layout, functions
Documenting Web Components With Storybook477
documentation, design-systems, web-components, storybook, examples
Human-Centered Design Through AI-Assisted Usability Testing: Reality or Fiction? (sma)476
design, usability, testing, ai
Tracing of Node.js for Better Visibility and Performance With N|Solid (nod)475
nodejs, tracing, tooling
Why You Shouldn’t Use AI to Write Documentation (lur/zer)474
documentation, writing, ai
Flutter Is at a Critical Inflection Point473
flutter
Demystifying MIME Types: Basics, Use Cases, Best Practices (mar)472
guest-posts, mime-types, fundamentals, best-practices, performance, servers, apache, nginx, email
A Color Input That Also Shows the Value (chr/fro)471
forms, colors, web-components
AI Killed the Tech Interview. Now What?470
interviewing, hiring, ai, career, outlooks
Basic Design Patterns469
software-design, software-design-patterns
CDEs Aren’t Just for Developers: How QA, Tech Writers, and Designers Benefit Too (jet)468
code-editors, jetbrains, case-studies
Decoding CSS Selectors: “:has(:not)” vs. “:not(:has)” (pol)467
css, selectors, comparisons
ESLint Now Officially Supports Linting of CSS (nza/esl)466
eslint, css, linting
How OWASP Helps You Secure Your Full-Stack Web Applications (eri/sma)465
security, owasp, monitoring, authentication, vulnerabilities, configuration, csrf, cryptography, authorization
Meeting European Accessibility Act (EAA) Standards: A Developer’s Checklist464
accessibility, checklists, eaa, legal
Navigating the Web Platform (pat)463
web-platform, documentation, browsers, standards, link-lists, cheat-sheets
Static vs. Dynamic Content: Which Should Developers Favor? (the)462
content, client-side-rendering, server-side-rendering, performance, frameworks, comparisons
These (Still) Aren’t the SCs You’re Looking For (pat)461
videos, wcag, accessibility, compliance
Tim Frick on Web Sustainability and Building a Greener Digital World460
interviews, design, content, hosting, sustainability
TypeScript in a Node.js Project (rwi)459
typescript, nodejs, configuration
CSS “@ function” + CSS “if()” = 🤯 (bra)458
css, functions, conditionals, custom-properties, dark-mode
How I Review Design Work (ted/uxd)457
design, consistency, creativity, complexity, processes
CSS-Only Click Handlers You Might Not Be Using, but You Should456
css, selectors
A Really (Really) Long but Authentic History of Design Evolution in India (uxd)455
design, culture, history
10 Awesome CSS Text Effects for Your Next Project (pau)454
css, effects, code-pens
10 Common Web Development Mistakes to Avoid Right Now453
mistakes, mobile, performance, accessibility, seo, navigation, security, analytics, testing
Accessible UX Design: 6 Advanced Techniques to Elevate Your Process (a11)452
design, user-experience, accessibility, principles, techniques, processes
Aspect Ratio Changes With CSS View Transitions (jim)451
css, view-transitions, aspect-ratio
Getting the Relationship Between UX Design and Business Strategy Right (uxm)450
design, user-experience, product-management, strategies, economics, collaboration, business-relations
How to Build a Design System? Rolling It Out and Driving Adoption449
how-tos, design-systems, advocacy
React Libraries for 2025 (rwi)448
react, libraries, tooling, link-lists
Rethinking Find-in-Page Accessibility: Making Hidden Text Work for Everyone (sch)447
accessibility, search, hiding, browsers, html
The “attr()” Function in CSS Now Supports Types (ami)446
css, functions, attributes, types
The Dark Side of UX: Lessons From OnlyFans’ Addictive Design (web)445
lessons, design, dark-patterns, ethics, user-experience, case-studies
The Difference Between Zoom and Scale (css)444
css, zooming, transforms, tips-and-tricks
Top Lawyers in 16 States Push Back on Anti-DEIA Executive Orders (lfl)443
dei, accessibility, legal
Interaction Design Demands More Than Visual Creativity (uxd)442
design, interaction-design, design-systems, creativity
It’s Right There in the Back of the Book (hom)441
accessibility, html, semantics
Implementing a Dissolve Effect With Shaders and Particles in Three.js (cod)440
effects, threejs
Five Things AI Will Not Change (met)439
ai, outlooks
Generic LLM Chatbot Attestation (aar)438
ai, processes
How to Use Chrome’s Developer Tools (deb)437
how-tos, chrome, google, browsers, dev-tools
The New “withAttributes” Method for Relationships and Scopes in Laravel (ami)436
laravel, php
The “:not” Selector in Use (cit)435
css, selectors
Top 5 Uses of WebAssembly for Web Developers (the)434
webassembly, performance, migrating, ecommerce, dev-tools
How to Move the First Element to the End in JavaScript433
how-tos, javascript
10 Secret Git Commands That Will Save You 5+ Hours Every Week432
git, command-line
Advice to New Engineering Managers (tre)431
engineering-management, leadership, culture
Create Contextual Console Loggers (pat/dev)430
console, javascript, debugging, dev-tools, browsers, edge, microsoft, chrome, google
5 Ways to Increase the Quality of Your Design System Documentation429
design-systems, documentation, quality
Common Accessibility Challenges When Navigating Tables428
accessibility, tables, images, keyboard-navigation
Does WebPerf Matter to Your SEO Ranking? (tod/per)427
videos, performance, seo, keywords
How Do We Know What Components to Work On? (lur/zer)426
design-systems, components, prioritization
Love at First Slide! Creating a Carousel Purely Out of CSS (uti)425
css, scrolling, carousels, functionality
Rainbow Selection in CSS (chr/fro)424
css, selectors, effects
Sunsetting “Create React App” (mat+/rea)423
react
The Great AI UI Unification (mgs)422
ai, usability, chatgpt, openai
The Hardest Working Font in Manhattan (mwi)421
fonts, typography, history
We Were Wrong About GPUs (fly)420
cloud-computing, edge-computing, ai, docker, containerization, developer-experience
Comcast: A New Standard for Internet Energy Efficiency419
web, network, infrastructure, sustainability
2025: 10 Free Must-Know Websites for Every Developer418
productivity, creativity, link-lists
Don’t Start Testing Accessibility With a Screen Reader (eri)417
accessibility, testing, screen-readers, keyboard-navigation
How to Test and Measure Content in UX (vit/sma)416
how-tos, user-experience, design, content, testing, analytics
Interop 2025: Another Year of Web Platform Improvements (rac/dev)415
interoperability, web-platform, browsers, support
Interop 2025 (pat)414
interoperability, web-platform, browsers, support
Using the “step” and “pattern” Attributes to Make Number Inputs More Useful (cas/pic)413
html, forms
Which HTML Element Are You?412
quizzes, html
Launching Interop 2025 (moz)411
interoperability, web-platform, browsers, support
When an Engineering Manager Marries a Product Manager: Planning, Roadmaps, and Bug Fixes (cod)410
engineering-management, product-management, career, collaboration, processes
Better Text Rendering in Chromium-Based Browsers on Windows (pat/dev)409
typography, rendering, browser-engines, browsers, chromium, windows, microsoft
Faux Containers in CSS Grids (tyl/clo)408
css, grids, layout
How to Improve Webpage Speed: Tips and Best Practices407
how-tos, performance, optimization, tips-and-tricks, best-practices, redirecting, fonts, images, testing, tooling, webpagetest
State of AI 2025 (sac/dev)406
surveys, ai, code-editors, tooling
Style Observer: JS to Observe CSS Property Changes, for Reals (lea)405
tooling, libraries, css, javascript
Tech Continues to Be Political (mia)404
community, dei, ethics, policies, ai, career
Testing 10 JavaScript Frameworks on Their HTML Defaults (j9t)403
frameworks, javascript, html, conformance, comparisons, link-lists
Time to First Byte: Beyond Server Response Time (sma)402
performance, optimization, redirecting, content-delivery
Why Emojis Are the Ultimate User Interface (web)401
emoji, user-experience, design
Reimagining Fluid Typography (mia/odd)400
typography, css, responsive-design, liquid-design
State of React 2024 [Results] (sac+/dev)399
surveys, metrics, react
12 Web Accessibility Tips to Make Your Site More User-Friendly398
accessibility, tips-and-tricks, contrast, alt-text, keyboard-navigation, navigation, captions, labels, skip-links, microcontent
Don’t Put Your Team in a Bubble397
agile, scrum, product-management, engineering-management
How to Refactor Code With GitHub Copilot (git)396
how-tos, refactoring, ai, github-copilot, github
How to Start a React Project (rwi)395
how-tos, react
Simplify Nested Code (kei)394
programming, nesting, conditionals, simplicity
Structuring Design Tokens for Interactive States393
design-tokens
The Mystery of Mutable Subresources in Signed Exchanges (paw)392
authentication, signed-exchanges, caching, ruby-on-rails, nextjs, compression, http-headers, http
Web Components Toolkit (stu)391
websites, web-components
“Create React App” Officially Deprecated Amid React 19 Compatibility Issues (sar/soc)390
react, vite, migrating, single-page-apps, deprecation
Designing Accessible Website Navigation: Best Practices for Inclusive UX389
accessibility, design, user-experience, navigation
Exploring Routes Rendering Modes in Angular (mai)388
angular, routing
How I Created a Popular WordPress Theme and Coined the Term “Hero Section” (Without Realizing It) (sma)387
wordpress, themes, terminology, history
How to Write Cypress Tests That Don’t Suck (ato)386
how-tos, testing, cypress
Optimizing Images for Web Performance (tod/fro)385
images, performance, optimization, jpeg, png, webp, avif, html, caching
Organizing Design System Component Patterns With CSS Cascade Layers (mrt/css)384
design-systems, components, css, cascade
Website Accessibility Testing Methods That Work (a11)383
accessibility, testing, processes
Control Scope Creep Before It Controls You382
project-management, processes
Micro Frontends With Angular and Native Federation (man/ang)381
angular, micro-frontends
Microsoft Study Finds AI Makes Human Cognition “Atrophied and Unprepared” (ema/404)380
studies, research, microsoft, ai, career, learning
Engineers Who Won’t Commit (sea)379
career, processes
10 Must Read Microservices Architecture Books for Experienced Developers378
books, microservices, architecture
Think JavaScript Is Slow? Here’s How JIT (Just in Time) Compilation Makes It 100× Faster Instantly377
javascript, compiling, performance
Designing for AI Engineers: UI Patterns You Need to Know (eve/uxd)376
design, design-patterns, principles, processes, ai
How I Migrated From WordPress to Astro (its)375
migrating, wordpress, astro
Tightening Every Bolt (bag)374
videos, processes, code-reviews, testing, security
TypeScript: The “satisfies” Operator (rau)373
typescript, operators
Beware the Faux Bold (and How to Fix It) (ric)372
typography, fonts, css
Beyond DX: Developers Must Now Learn Agent Experience (AX) (ric/the)371
code-editors, ai, agent-experience, developer-experience
Here Is Why Microsoft’s “Uninstall Edge” Page Offers No Instructions to Remove the Browser370
edge, microsoft, browsers
Taking RWD to the Extreme (sma)369
responsive-design, intrinsic-design, html, css
The Popover API Is Now Baseline Newly Available (dev)368
pop-overs, apis, browsers, support, web-platform
Three Approaches to the “&” (Ampersand) Selector in CSS (pre/fro)367
css, nesting
Preload Fonts on Your Website for Better Core Web Vitals (deb)366
performance, preloading, fonts, hints, web-vitals
View Transitions Applied: More Performant “::view-transition-group(*)” Animations (bra)365
css, javascript, view-transitions, performance
6 Questions for Eric Eggert (yat+/fro)364
interviews, accessibility, eaa, legal
63% of Websites Receive AI Traffic (New Study of 3,000 Sites) (lou/ahr)363
traffic, ai, metrics
GitHub Copilot Brings Mockups to Life by Generating Code From Images (web)362
github-copilot, ai, images, design
How to Bring Structure and Clarity to Design System Components361
how-tos, design-systems, components, documentation, conventions, information-architecture
How to Build a Design System? Bridging the Gap Between Design and Development360
how-tos, design-systems, documentation
Read-Only Accessibility in TypeScript (rau)359
typescript
The Jetbrains Platform Gets a New Community Space (kle/jet)358
jetbrains, community
What I Learned From Migrating a Vue Project From Vuex to Pinia (mic/pic)357
migrating, vuejs, state-management, lessons
Which Rich Text Editor Framework Should You Choose in 2025? (aur/liv)356
tooling, comparisons, link-lists
My Experience as a Designer Working at Bit355
design, career
Definition Layers Within Semantic Tokens (ikn)354
design-tokens, semantics
Activism Matters for Tech Development and #FOSS Paths (inf)353
foss, fediverse, sustainability, advocacy
How to Build a Landing Page in 6 Easy Steps (sem)352
how-tos, landing-pages
How to Declare Your Page’s Language (pop)351
how-tos, html, internationalization
HTML and CSS for a One-Time Password Input (chr/fro)350
html, css, forms, passwords
Move on to ESM-Only (ant)349
esm, modules, nodejs, support, javascript, typescript
On Generative AI Security (sch)348
ai, security, lessons, microsoft
The Problem With Indirections (dan)347
programming, variables, functions, presentational-html, state-management
Using “at()” Method in JavaScript to Get the Last Item From an Array (ama)346
javascript, arrays
DORA, SPACE, DevEx, DX Core 4 (j9t)345
engineering-management, productivity, culture, metrics
The State of PHP 2024 [Results] (jet)344
surveys, metrics, php, laravel, wordpress, symfony, phpstorm, jetbrains, vs-code, microsoft, sublime-text, code-editors
Optimizing the Critical Rendering Path (deb)343
performance, optimization, critical-path
Some Terminal Frustrations (b0r)342
command-line, shells
10 Digital Accessibility Mistakes to Avoid341
accessibility, mistakes, alt-text, images, contrast, colors, keyboard-navigation, aria, semantics, headings, labels, forms, pop-ups, testing
A Content List With Bulk Actions Using Ancient HTML and Modern CSS (tyl/clo)340
html, forms, lists, css
Alt Text Accessibility: Balancing AI and Human Oversight (tec+/equ)339
podcasts, accessibility, images, multimedia, alt-text, ai, quality
Angular: The Documentary338
videos, angularjs, angular, history
Build a Link Blog (xua)337
blogging, links
Firefox 135 Launches With New Translation Languages, New Tab Layout, Security, and Privacy Improvements336
firefox, mozilla, browsers
How I Learned to Code With My Voice (whi)335
voice, code-editors, tooling
How to Gif (2025 Edition) (oll)334
how-tos, images, multimedia, gif, png, webp, avif, jpeg-xl
Integrations: From Simple Data Transfer to Modern Composable Architectures (edo/sma)333
architecture, web-services, apis, rest, graphql, webhooks, headless, content-management
Internet of Agents332
web, agent-experience, ai
Live CSS Colors: What You Can Safely Use (jar/van)331
css, colors, functions
Oracle Justified Its JavaScript Trademark With Node.js—Now It Wants That Ignored (tin/den)330
oracle, javascript, nodejs, deno, legal
Reasons Not to Refactor (tho)329
technical-debt, refactoring, processes, prioritization
The End of Programming as We Know It (tim/ore)328
programming, processes, ai, career, history, outlooks
Tutorial: Publishing ESM-Based npm Packages With TypeScript (rau)327
tutorials, dependencies, npm, typescript
Understanding the Trade-Offs of Using Tailwind CSS (mon/mea)326
tailwind, presentational-html, css
Using Padding to Space an Input and Label (dar)325
html, forms, labels, spacing, css
Which VoiceOver? (aar)324
accessibility, voiceover, screen-readers, unix-like, apple
How I Use LLMs as a Staff Engineer (sea)323
ai, processes
Introducing Fusion: Write PHP Inside Vue and React Components (eri/lar)322
introductions, tooling, php, vuejs, react, components
How to Favicon in 2025: Three Files That Fit Most Needs (sit/evi)321
how-tos, images, favicons
AI and Accessibility: The Good, the Bad, and the Bollocks (tin/rem)320
videos, accessibility, ai
Change “font-weight” Based on the User’s Screen DPI319
css, typography, pixel-density
Compiling CSS With Vite and Lightning CSS (mrt/css)318
css, compiling, vite, lightning-css
Developer Philosophy (qnt)317
technical-debt, refactoring, quality, processes
Extending the Cursor (kyl)316
design, interaction-design, cursors, examples
Fast and Smooth Third-Party Web Fonts (sco)315
fonts, embed-code, performance, css, javascript
Generating Image Descriptions and Alt-Text With AI (dri)314
images, alt-text, accessibility, ai, quality
How to Manage Old Content on a News Website (moz)313
how-tos, content, content-management, maintenance, prioritization, redirecting, seo
How to Perform Comprehensive ADA Testing (a11)312
how-tos, testing, processes, ada, legal, compliance, accessibility
Introducing the JSR Open Governance Board (tin+/den)311
introductions, jsr, javascript, typescript, community
Notes on the “Code Editors With AI” Landscape (chr/fro)310
ai, code-editors, plugins, github-copilot, cursor, project-idx, google, jetbrains
Smarter, Faster, Human: The Future of Design Systems With AI (uxm)309
design-systems, ai, outlooks
There Are a Lot of Ways to Break Up Long Tasks in JavaScript (mac)308
javascript, web-workers, performance
Typecasting and Viewport Transitions in CSS With “tan(atan2())” (mon/css)307
css, transitions, animations, functions, math
Before You Buy an Accessibility Audit (cer)306
accessibility, auditing, training, testing, culture
Combining “currentColor” With Relative Color Syntax (oll)305
css, colors
The Systemic Failure of Implementing CSS Principles304
css, principles, history, maintainability, consistency, modules, craft
The Paradox of UX Personalization (uxd)303
user-experience, personalization, ai
CSS “scrollbar-color” and “scrollbar-gutter” Are Baseline Newly Available (bra/dev)302
css, scrolling, browsers, support, web-platform
Demo: Running TypeScript Directly in Node.js (rau)301
typescript, nodejs
How to Write a Good Design Document (gra)300
how-tos, writing, documentation, software-design
OKLCH, Explained for Designers299
design, colors, oklch
We Can’t Keep Simply Repeating This Mess (inf)298
processes, sustainability
React Is Just “document.createElement()” With Good Marketing, and I Can Prove It297
react, typescript, tailwind
Effective Steps for Conducting a Thorough ADA Audit (a11)296
accessibility, processes, ada, legal, compliance, auditing
Foundations: Grouping Forms With “<fieldset>” and “<legend>” (tet)295
fundamentals, forms, html, aria
How to Set Up an Accessible Page Structure and Navigation (pop)294
how-tos, accessibility, html, navigation
Microsoft Improves Text Contrast for All Windows Chromium Browsers (ser/ble)293
contrast, colors, browsers, chromium, microsoft, windows
Understanding CORS Errors in Signed Exchanges (paw)292
security, cors, errors, signed-exchanges
WCAG Colour Contrast: What Does the 4.5:1 Ratio Actually Mean? (the)291
accessibility, wcag, contrast, colors
Our Coding Obsession Is Pushing Kids Out of Tech290
career
AI Transparency Framework (uxd)289
ai, policies, processes
Why Next.js Leads the Future of Web Development in 2025288
nextjs
The Myth of “Fully Accessible” (sor/uxd)287
accessibility, myths
The Politics of Accessibility286
accessibility, history, advocacy
Accessibility Beyond Compliance: A Driver for Innovation and UX285
accessibility, compliance, user-experience
CSS Nesting: Use With Caution (bel/pic)284
css, nesting
Google Says “Links Matter Less”—We Looked at 1,000,000 SERPs to See if It’s True (ahr)283
google, links, seo, metrics
How I Use AI: Meet My Promptly Hired Model Intern (mit)282
ai, programming, processes, tooling
Is npm Enough? Why Startups Are Coming After This JavaScript Package Registry (kat/red)281
npm, jsr, bun, pnpm, yarn, javascript
On Diversity (aar)280
dei
The European Accessibility Act for Websites and Apps (mar)279
accessibility, legal, eaa, overviews
Vite With TypeScript (rwi)278
vite, migrating, javascript, typescript, configuration
The Internet Is Unusable (ste/uxd)277
web, ai, monetization, user-experience, usability
XHTML in Modern Web Development (mar)276
guest-posts, html, xhtml
US Blocks Open Source “Help” From These Countries (sjv/the)275
foss
A Modern Node.js and TypeScript Setup for 2025274
nodejs, typescript, configuration
Computing With Tuples in TypeScript (rau)273
typescript, arrays