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

“2025” News Archive (6)

Entry (Sources) and Additional TopicsDate#
5 GitHub Actions Every Maintainer Needs to Know (kli)801
github-actions, github, tooling, automation, maintenance
[“a:focus-visible”] (ada)800
css, focus, links
AI Won’t Take Your Job—but Someone Who Uses It Better Than You Will (cwo)799
ai, career, tooling, learning
Eleventy—Use Passthrough File Copy to Add Assets (w3t)798
eleventy, configuration
JavaScript’s Missing Link: Wasp Offers Full Stack Solution (low)797
wasp, javascript, frameworks, history
Malware Found on npm Infecting Local Package With Reverse Shell (rev)796
npm, dependencies, security
What’s the Future of Platform Engineering? (ma1+)795
videos, platform-engineering, outlooks, ai
Direct Access vs. Sequential Access: Why Direct Is Better (nng)794
videos, usability
Jo Minney on Website Usability Testing for WordPress Projects (jom+)793
podcasts, interviews, wordpress, usability, testing
What’s New in WebGPU (Chrome 135)792
release-notes, webgpu, chrome, google, browsers
A11y 101: 1.4.3 Contrast (Minimum) (nat)791
introductions, accessibility, wcag, contrast, colors, apca
Artificial Intelligence Needs Community Intelligence (all)790
videos, ai, community
“input type="number"” (kev)789
html, forms
React Query API Design: Lessons Learned (tkd)788
videos, lessons, react, apis, state-management, data-fetching, tanstack
The Case for “Old School” CSS (hui)787
css, drupal, twig
You Should Know This Before Choosing Next.js (edu)786
nextjs, vercel, frameworks
Land Ahoy: Leaving the Sea of Nodes785
v8, javascript-engines, javascript, compiling
“aria-label” Is a Letdown (thi/wag)784
accessibility, aria, labels, html
Expressing Japanese Grammar Through TypeScript Type System783
typescript, types, localization
Is Vibe Coding Agile or Merely a Hype? (scr)782
processes, ai, vibe-coding, agile
Layered Text Headers (chr/fro)781
typography, css, svg, shadows
Mission jQuery Zero: How FreeAgent Removed jQuery From Our Application (fre)780
refactoring, jquery, technical-debt, maintenance
Support Logical Shorthands in CSS (geo/css)779
css, logical-properties, shorthands
UX or PX? Why Naming Matters778
user-experience, naming
War Story: The Hardest Bug I Ever Debugged (jak)777
debugging, javascript, google, v8, chrome, browsers, bugs
The “<select>” Element Can Now Be Customized With CSS (arg)776
forms, css
AI Is the Future of Accessibility (kar)775
accessibility, ai, outlooks
Grid First, Flex Third (fim)774
css, layout, grids, flexbox
When Do Retry, Backoff, and Jitter Work?773
dev-ops, concepts
Whose Design Process?772
design, ai, creativity, processes
Directives: A Core Feature of the Angular Toolkit771
angular, extensibility
Don’t Use Scores From Automatic Tools in Your Accessibility Statement (cer)770
accessibility, documentation, compliance, tooling
Holographic Masks (hej)769
code-pens, css, gradients, blend-modes, effects
How Navigation Should Work for Keyboard Users (tem)768
navigation, keyboard-navigation, focus, accessibility
UI Algorithms: A Tiny Undo Stack (jul)767
javascript, algorithms, functionality, undo-redo
Collecting Code Coverage in Node.js (nod)766
nodejs, code-coverage
Is Vite Faster Than Turbopack?765
nextjs, webpack, turbopack, vite, rollup, rolldown, bundling, performance, comparisons
Create an HTML Dialog When You Click an Image (cas)764
html, images, modals
How to Create Quality Content (Follow Our 5-Level Framework) (ahr)763
how-tos, content, microcontent, seo, sem
JavaScript Basics for a Senior Dev762
fundamentals, concepts, javascript, examples
Mitigating Browser Fingerprinting in Web Specifications (npd+/w3c)761
standards, privacy, fingerprinting, browsers, w3c
Previewing Content Changes in Your Work With “document.designMode” (sma)760
browsers, dev-tools, javascript, content, design
Revisiting CSS “border-image” (mal/css)759
css, borders, images, data-urls
The Software Engineering Identity Crisis (cod)758
career, craft, ai, vibe-coding
This Is the Optimal Team Size That Improves Performance by 400%757
engineering-management, productivity
Cracking the Code of Vibe Coding756
programming, processes, ai, vibe-coding, craft, technical-debt, design-debt
Cursor, “Vibe Coding,” and Manus: The UX Revolution That AI Needs755
ai, chatgpt, cursor, history, vibe-coding, user-experience
Composite vs. Simple Tokens754
design-tokens, comparisons, terminology, maintainability
Cowardly Defaults and Courageous Overrides With Modern CSS (tyl/clo)753
css, presentational-html, cascade
Keyword Research for SEO in 2025: Step-By-Step Tutorial752
videos, keywords, seo, google, tooling
My Thoughts on Asynchronous Accessibility APIs (jcs)751
accessibility, asynchronicity, apis
Quick Reminder That “:is()” and “:where()” Are Basically the Same With One Key Difference (geo/css)750
css, selectors, cascade
Revisiting Fluid Type (ric+/odd)749
videos, interviews, typography, fonts, responsive-design
Stop Chasing New JavaScript Frameworks: Build With Fundamentals Instead748
fundamentals, javascript, frameworks, react, vuejs, angular, svelte, solidjs
Testing Design Systems in 2025 (blv)747
design-systems, testing, storybook, vitest
Web Accessibility Requirements in the EU (mar)746
accessibility, eaa, legal, compliance, history, metrics
SSR Deep Dive for React Developers745
deep-dives, server-side-rendering, react, javascript
Where Frontend Dogma Gets Its News From (j9t)744
cross-posts, frontend-dogma, community, link-lists
The “contenteditable” “plaintext-only” Attribute Value Combination Is Now Baseline Newly Available (tom)743
html, attributes, browsers, support, web-platform
Carousels With CSS (arg)742
css, carousels, scrolling
Five Things Vibe Coders Should Know (From a Software Engineer)741
vibe-coding, security, sanitization, rate-limiting
One Thing “@scope” Can Do Is Reduce Concerns About Source Order (chr/fro)740
css, scope, source-order
How WebAssembly Components Can Replace JavaScript SDKs (sac)739
webassembly, components, javascript
GitHub Suffers a Cascading Supply Chain Attack Compromising CI/CD Secrets (inf)738
github, security, ci-cd
Naming Things in Design Systems—and Why It’s the Worst (pjo)737
design-systems, naming, components
Node.js TSC Votes to Stop Distributing Corepack (sar/soc)736
nodejs, corepack
Not All AI-Assisted Programming Is Vibe Coding (but Vibe Coding Rocks) (sim)735
programming, processes, ai, vibe-coding
Quick Accessibility Wins That Are Easy to Implement (kev)734
videos, accessibility, html, semantics, alt-text, images, contrast, colors, keyboard-navigation, focus, skip-links
Style Legend (ada)733
forms, css
The Bare Minimum You Need to Enable View Transitions on Your Website (ami)732
html, css, view-transitions, minimalism
Understanding the European Accessibility Act (EAA) (tin/tet)731
eaa, legal, accessibility
Vibe Coding and CHOP: What You Need to Know About AI-Driven Development (big/gra)730
ai, vibe-coding, processes, tooling
Why UI Automation Is Insufficient as an Accessibility API for the Web (jcs)729
accessibility, automation, microsoft
Generate Growing Images Using Gemini API728
images, ai, gemini, apis
Introducing Motion for Vue (cit)727
introductions, animations, tooling, vuejs
Minding the Gaps: A New Way to Draw Separators in CSS (pat)726
css, borders
A Deep Dive Into the Inline Background Overlap Problem (ana/fro)725
deep-dives, css, svg, filters, backgrounds
Downtime vs. Slowtime: Which Costs You More? (tam/spe)724
performance, economics, branding
Next.js vs. TanStack723
nextjs, tanstack, comparisons
Past and Present Futures of User Interface Design722
design, desktop, history, outlooks
Polite Is Often Better Than Being Alerted (oze)721
accessibility, aria, screen-readers
Reducing CSS Complexity With the “:is()” Pseudo-Class (cfe)720
css, selectors, complexity
Self Gap (sha)719
css, flexbox, layout
Twenty Twenty-Five Theme: The Ultimate Guide (abr)718
guides, wordpress, themes
Designing Design Systems: A Framework for Names, Terms, and Definitions717
design-systems, naming, documentation, processes
How to Think About Baseline and Polyfills (mal)716
how-tos, support, browsers, web-platform, polyfills
A11y 101: 1.4.2 Audio Control (nat)715
introductions, accessibility, wcag, multimedia
Breadcrumbs Are Dead in Web Design (web)714
design-patterns, navigation, breadcrumbs
Explaining UX Design Through the Lens of Construction (uxm)713
user-experience, design, processes, concepts
Is React Accessible? That’s the Wrong Question712
accessibility, react, jsx, semantics, html
Leveraging 3 Types of User Feedback to Create Better User Experiences (uxm)711
user-experience, testing
Please Stop Externalizing Your Costs Directly Into My Face (sir)710
ai, crawling, traffic, economics
Web Components vs. Framework Components: What’s the Difference? (sma)709
web-components, components, frameworks, html, comparisons
Bulk Actions: 3 Design Guidelines (nng)708
videos, guidelines, design, usability
What Are MCPs? A Beginner’s Guide to the Future of AI and Automation707
guides, ai, mcp, architecture, automation
Styling Counters in CSS (mon/css)706
overviews, css, lists
A Review of HTML Linters705
overviews, html, linting, conformance, tooling, link-lists, comparisons
But How to Get to That European Cloud? (ber)704
cloud-computing, politics, foss
10 Uses for Variables Beyond Light and Dark Mode (ali)703
figma, variables, dark-mode
Accessibility Requires Clear Responsibilities or It Will Fail (cer)702
accessibility, processes, culture
“Classless.css” Framework701
frameworks, css
Maintaining Screenshot Quality and Color Profile in Figma (max)700
figma, screenshots, images, quality, colors
Let’s Knock Down Social Media’s Walled Gardens (tim/fin)699
web, social-media
Web Scraping With Cheerio in 2025 (api)698
guides, scraping, tooling
Coding vs. Vibe Coding697
processes, ai, vibe-coding, programming, comparisons
Designers, Your Excuse Is Gone. Stunning, Animated, and Accessible. Yes, You Can! (bov)696
design, accessibility
Popping Preconceived Popover Ponderings (sco)695
accessibility, html, pop-overs
Why the Latest JavaScript Frameworks Are a Waste of Time694
frameworks, javascript, react, angular
System Design Roadmap for Beginners693
architecture, system-design, concepts
The Hidden Burden of Architectural Decision Fatigue (and How to Fix It)692
architecture, documentation
ADA Compliance vs. WCAG Conformance691
accessibility, ada, wcag, compliance, comparisons, legal
Browse No More (sta)690
browsing, searching, ai, web, user-experience
How to Get Deep Traces in Your Node.js Backend With OTel and Deno (den)689
how-tos, observability, tracing, nodejs, deno, tooling
How to Prevent WordPress SQL Injection Attacks (sma)688
how-tos, wordpress, sql, databases, security
“Intl.DurationFormat”: Format Time Durations With Locale Support (tre)687
javascript, localization
State of Vue.js Report 2025686
surveys, vuejs, metrics, frameworks
Accelerating Large-Scale Test Migration With LLMs685
testing, migrating, ai, case-studies
How GitHub Engineers Learn New Codebases (bri)684
github, learning, documentation
Chilled Out Text Underlines (chr/fro)683
css, links, colors
Create a Fun Quick Text Flip Effect (kev)682
videos, css, effects
“:in-range” Pseudo-Class (kev)681
css, selectors, forms
Nobody Should Be a “Content Creator” (cod)680
content, social-media, ai, career
A Perplexing JavaScript Parsing Puzzle (hil)679
javascript, parsing, history
How WebAssembly Crushes Technical Debt678
webassembly, technical-debt, metrics
Connect Claude Code to a GitHub MCP Server (mat)677
github, claude, anthropic, ai, mcp
Support for CSS and Baseline Has Shipped in ESLint (mal)676
eslint, css, browsers, support, web-platform
A 10× Faster TypeScript675
videos, typescript
What’s Missing With AI-Generated Code? Refactoring (ste)674
surveys, studies, research, ai, productivity, quality, maintenance, refactoring
View Transitions Applied: Smoothly Animating a “border-radius” With a View Transition (bra)673
css, animations, view-transitions, borders
Why Microsoft Is Rewriting Their TypeScript Compiler in Go (imp)672
microsoft, typescript, compiling, go
On JavaScript Closures (With Examples of Interview Questions) (mar)671
guest-posts, javascript, closures, variables, examples, interviewing
Retrieval-Augmented Generation With Node.js, Podman AI Lab, and React670
rag, ai, nodejs, podman, react
A11y 101: 1.4.1 Use of Color (nat)669
introductions, accessibility, wcag, colors
Content Churn in Google Doubled Over Five Years (moz)668
google, search, content, seo, metrics
CSS System Colors (ant)667
css, colors
DOJ Pushes for Google to Sell Chrome to Break Search Monopoly666
google, search, legal, chrome, browsers
Future of CSS: “select” Styling Without the Hacks665
css, selectors, forms, html
Lazarus Strikes npm Again With New Wave of Malicious Packages (soc)664
npm, dependencies, security
Ten Years Ago Today I Coined the Shorthand “js;dr” for “JavaScript Required; Didn’t Read” (tan)663
javascript, support, terminology
Angular Hacks Every Developer Should Know662
angular
Automated Tools Can Ensure Full Accessibility Compliance661
accessibility, compliance, tooling, automation
Design Systems Report 2025 (zer)660
surveys, studies, research, design-systems, metrics
Relative Colors (sha)659
css, colors, functions, contrast
The Hype and Risks of Vibe Coding658
trends, design, processes, ai, vibe-coding
Here’s How Chrome Could Lose the Browser War657
chrome, google, browsers, browser-wars, history
Devs: Draw Your Line (rem)656
privacy, ethics, career
How to Handle “Urgent Request” in Scrum655
how-tos, scrum, agile, project-management, prioritization
WAI a Day (yat)654
websites, accessibility, link-lists
Is Cursor Better Than VS Code With Copilot? Absolutely and It’s Not Close653
code-editors, cursor, vs-code, microsoft, github-copilot, ai, comparisons
“aria-label” Requires a Valid Role (cfe)652
accessibility, aria
Creating Animated Accordions With the “details” Element and Modern CSS (ste/bui)651
html, css, disclosure-widgets, accordions, animations, transitions
Implementing “aria-describedby” for Web Accessibility (flo/a11)650
accessibility, aria, forms, labels, html
Top 10 Common Accessibility Issues in Websites649
accessibility
Updates on CVE for End-of-Life Versions (raf/nod)648
nodejs, security
Usability Testing With Disabled Users Is a Good Investment (nic)647
testing, usability, accessibility
What Is the OWASP Top 10 and How Can Your Team Benchmark Security? (jet)646
owasp, security, vulnerabilities, qodana, jetbrains
Why Do We Have a “Cache-Control” Request Header? (css)645
caching, http-headers, http
10 Hidden Gems in Angular That You Should Use644
angular, functions
Great Software Design Looks Underwhelming (sea)643
software-design, simplicity
Page Speed: Avoid Large Base64 Data URLs in HTML and CSS (deb)642
performance, html, css, data-urls, compression, base64
Standards for ANSI Escape Codes (b0r)641
escaping, encoding
Introducing “command” and “commandfor” (kei)640
introductions, html, attributes
DeepSeek and HTML (j9t)639
ai, deepseek, html, minimalism, conformance
Coding With AI: How to Do It Well and What This Means (chr)638
how-tos, ai, processes
Prompt Engineering for Web Development637
ai, prompting, examples
Cool Native HTML Elements You Should Already Be Using (hrr)636
html, modals, disclosure-widgets, forms, progress-indicators
Defending Tailwind (don)635
tailwind, presentational-html, naming, productivity, maintainability, scalability
How to Protect Your Web Applications From XSS (tor/w3c)634
how-tos, web-apps, security, xss
JavaScript Best Practice: Use “return await”633
javascript, asynchronicity, best-practices
Making the Fediverse More Accessible With Claude 3.7 Sonnet (jud)632
fediverse, bluesky, social-media, ai, claude, anthropic
Maybe Don’t Use Custom Properties in Shorthand Properties (mat)631
css, shorthands, custom-properties
Node Just Added TypeScript Support. What Does That Mean for Deno? (tin/den)630
typescript, nodejs, deno
On Ethics in Web Development (With a Brief Overview of Ethical Theories) (j9t)629
overviews, ethics
The Angular Language Server: Understanding IDE Integration Approaches (nik/jet)628
angular, code-editors, vs-code, microsoft, neovim, webstorm, jetbrains
Your Best Engineers Could Be Your Biggest Communication Liability (and How to Fix It)627
communication, collaboration
In Tech, What Matters and What Is Dangerous (ham)626
security, community, foss, open-web
From Designing Things to Designing Change625
design, principles, collaboration
Delaying the Shipping of CSS “@function” From Chrome 136 to 139 (arg)624
chrome, google, browsers, css
How to Fix Largest Contentful Paint Issues With Subpart Analysis (mat/sma)623
how-tos, performance, web-vitals, metrics
An Aura of Accessibility (tpg)622
accessibility, zooming, reflow, wcag
Automatically Generate Changelogs With Git (dan)621
git, documentation, automation
Don’t Use Fake Bold or Italic in Social Media (aar)620
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 Framework619
wasp, history
Grouping Selection List Items Together With CSS Grid (pre/css)618
html, lists, forms, css, grids, layout
How ECMAScript Engines Optimize Your Variables (boa)617
ecmascript, variables, optimization
Super Crispy SVG Icons (ale)616
svg, images, icons, optimization
Accessible Solutions Benefit Everyone: Here’s How (nng)615
videos, design, accessibility, examples
Is Biome Ready to Replace Prettier and ESLint?614
formatting, linting, tooling, biome, prettier, eslint
5 Questions to Ask Your Manager to 10× Your Impact at Work (cod)613
career, productivity, prioritization, communication, culture
How to Troubleshoot Node.js Images in OpenShift612
how-tos, nodejs, docker, debugging, tooling
Our Favorite DevTools Features of 2025 (deb)611
dev-tools, browsers, chrome, google, edge, microsoft
Agentic AI Is the New Web App, and Your AI Strategy Must Evolve610
ai, outlooks
Building Websites With LLMS (jim)609
html, css, view-transitions
Firefox 136 Launches With Vertical Tabs, but One Requested Feature Is Still Missing608
firefox, mozilla, browsers
Reservoir Sampling (sam)607
algorithms, randomness, visualization
SEO Is the Worst It’s Ever Been (and It’s Still Your Best Marketing Channel) (ahr)606
seo, sem, marketing, ai, outlooks
Tailwind UI Is Now Tailwind Plus (ada/tai)605
tailwind
Truth, Lies, and Progress Bars (tyl/clo)604
design, progress-indicators
Underrated Angular Features (arm/dan)603
angular
Using and Styling the “details” Element (geo/css)602
html, css, disclosure-widgets, examples
View Transitions Applied: Dealing With the Snapshot Containing Block (bra)601
css, view-transitions
Ethical Foundations in Modern Software Development (fra)600
fundamentals, principles, ethics, foss, ai
The Professional Standing of Frontend Developers (mar)599
guest-posts, career, learning, html, css, javascript, communication, collaboration, community, ai
Myth: Technical Debt Is the Developers Problem598
myths, technical-debt, processes, scrum, agile
Unlock Exciting Use Cases With the Document Picture-in-Picture API (jad)597
html, apis
7 Best Practices of File Upload With JavaScript and React596
file-handling, javascript, react, best-practices
A11y 101: 1.3.5 Identify Input Purpose (nat)595
introductions, accessibility, wcag, forms
CSS Meets Voxel Art: Building a Rendering Engine With Stacked Grids (cod)594
css, html, art
Functions in CSS?! (mon/css)593
css, functions
JavaScript (htt)592
web-almanac, studies, research, metrics, javascript, performance, bundling, transpiling, web-workers, libraries, web-components
Other Causes of Signed Exchanges Errors (paw)591
signed-exchanges, errors, debugging, performance, cloudflare, google
Secure UX: Building Cybersecurity and Privacy Into the UX Lifecycle (uxm)590
user-experience, processes, security
The Case For Minimal WordPress Setups: A Contrarian View On Theme Frameworks (sma)589
wordpress, theming, tooling, minimalism
UX Analytics: How to Measure Your User Experience the Right Way (uxm)588
how-tos, user-experience, metrics, accessibility, performance, tooling
Who Is Free Software For? (tan)587
foss, licensing
One Kilobyte to Copilot: My Journey Through Programming History586
programming, ai, history
AI in the Workplace: A Productivity Boost, Not a Replacement585
ai, productivity, career
Dark Mode: Essential, Not a Preference584
dark-mode, accessibility
I Finally Understand What FAANG Wants in a Candidate583
interviewing, facebook+meta, amazon, apple, netflix, google
License to Kill: Coding With Cursor AI Agents582
cursor, code-editors, ai, ai-agents
Everything I Was Lied to About Node.js Came True With Elixir581
nodejs, concurrency, memory, performance
10 Best AI Code Review Tools and How They Work580
ai, code-reviews, tooling, comparisons, link-lists
AX, DX, UX (jim)579
agent-experience, developer-experience, user-experience, comparisons
Be Wary of Accessibility Guarantees From Anyone (aar)578
accessibility, automation
Image Comparison Slider in 6 Lines of JavaScript577
sliders, images, javascript
My Sales Pitch for TypeScript (rau)576
typescript
Update on QUIC (jas/nod)575
nodejs, quic, tls, protocols, support
Values (yat)574
accessibility, ai, community, culture
“I’m Not a Designer But…” (ada)573
design, usability, forms, ecommerce
I Quit My FAANG Job Because It’ll Be Automated by the End of 2025 (jas)572
career, ai
Learn Zod So You Can Trust Your Data and Your Types (did)571
libraries, types, typescript, examples
Mozilla Updates Firefox Terms Again After Backlash Over Broad Data License Language (the)570
firefox, mozilla, browsers, licensing
What’s New in Svelte: March 2025 (dre/sve)569
release-notes, svelte, sveltekit
Leverage on Redux to Execute Your Tests 100× Times Faster568
react, redux, testing, performance, examples
Custom Property Fallbacks (mat/fro)567
css, custom-properties
JavaScript Fatigue Strikes Back (all)566
javascript, react, frameworks, libraries, tooling
Testing Tools for Accessibility Enhancement565
videos, accessibility, testing, tooling
There’s No Such Thing as “Menubar Navigation” (tem)564
accessibility, navigation, html
Views on Views (hdv)563
accessibility, wcag, terminology
Building APIs With Next.js (lee)562
nextjs, apis
When Config Becomes the Code: The Trap of Over-Abstracting Logic (max)561
configuration, debugging, low-and-no-code
New to the Web Platform in February (rac)560
release-notes, web-platform, browsers, firefox, mozilla, chrome, google, safari, apple
Chrome on Android Edge-to-Edge Migration Guide (bra)559
guides, chrome, google, browsers, mobile
How to Reduce Web Application Bundle Size? (ant)558
how-tos, web-apps, bundling, javascript, tooling
Is the Button Focusable? (mat)557
accessibility, buttons, focus, quizzes
Using AI in the Browser for Typo Rewriting (ray)556
chrome, google, browsers, ai, apis, content
What Is TypeScript? An Overview for JavaScript Programmers (rau)555
overviews, typescript, javascript, comparisons
When to Use Lists for Better Accessibility554
accessibility, html, lists
New to Web Development? Run Your Own Website (j9t)553
career, training, indieweb
Advanced Network Analysis With Chrome DevTools (jec)552
videos, dev-tools, chrome, google, browsers, performance, network, caching
5 Tips to Do Less and Better Work With AI (pro)551
ai, productivity, automation, writing, prompting
Examples of Why the Web Needs Anchored Popovers (chr/fro)550
design, pop-overs, examples
Firefox: Mozilla Confirms Support for Classic Extensions and Manifest V3 Add-Ons549
firefox, mozilla, browsers, browser-extensions
Google’s Principles for Measuring Developer Productivity548
google, principles, productivity, studies, research
Open-Source Is Where Dreams Go to Die (tre)547
foss, culture, community, economics
The Existential Challenge of Design System Team Morale (pjo)546
design-systems, processes, culture
The Fallacy of Balance: Challenging the Notion of Security and Accessibility as Opposing Objectives (deq)545
videos, accessibility, security
What It Really Takes: Building an Accessibility-First Corporate Culture (deq)544
videos, accessibility, culture, strategies
8 Best Things About Working in UX (nng)543
videos, user-experience, career
The Six Cs of Accessibility542
accessibility
Next.js 15.2541
release-notes, nextjs
Accessibility Maturity Models (deq)540
videos, accessibility
Better Anchor Positioning With “position-area” (jam/odd)539
css, anchor-positioning
Browsers: A Snapshot (bry)538
browsers, browser-extensions, chromium, edge, microsoft, firefox, mozilla, brave, safari, apple
CSS Snapshot 2024 (tab+/w3c)537
css, standards
How to Use “attr()” in CSS for Columns, Colors, and Font-Size (chr/fro)536
how-tos, css, functions, layout, colors, typography
Intent to Experiment for Longer (kiz)535
chrome, google, browsers, css, functions, conditionals
Justified Text, JS “moveBefore” Method, Performance Optimization (zor/css)534
videos, css, typography, javascript, performance, optimization
Why I Like Designing in the Browser (tyl/clo)533
design, processes, browsers
5 Questions for Jeremy Keith (ada+/fro)532
interviews, web, web-platform, interoperability, mobile
2024 Web Almanac: Uncovering Global Accessibility Insights With axe (mgi/deq)531
videos, accessibility, web-almanac, studies, research, metrics, axe
Turbocharging V8 With Mutable Heap Numbers530
v8, javascript-engines, javascript, performance, randomness
@11ty/image-color (zac)529
packages, npm, images, colors
11 Practical Tips to Make Code Reviews Easier as a Developer528
code-reviews, tips-and-tricks, ai, principles, linting, formatting, quality, collaboration
A11y 101: 1.3.4 Orientation (nat)527
introductions, accessibility, wcag, design
Applying the Web Dev Mindset to Dealing With Life Challenges (css)526
career
Avoiding Tokens (don)525
design-systems, design-tokens
Common Dataviz Accessibility Issues (fos/sma)524
videos, accessibility, visualization
Overlay Timeline (ove)523
websites, overlays, accessibility, history, link-lists
Simple Interactive CLI App With Node.js (rwi)522
tutorials, nodejs, command-line
Strong Opinions on URL Design (val)521
urls, user-experience
Subverting Control With Weak References (jlo)520
programming, javascript
The Figma Dilemma: Too Many Cooks, Too Few Decisions (web)519
design, figma, collaboration
Trusting AI With My Images Wasn’t Easy (dri)518
ai, images, alt-text, accessibility, automation, tooling
Web Scraping With Playwright517
scraping, playwright, typescript, youtube, functionality
Solved by Style Observer: “Element.matchContainer()” (bra)516
css, javascript
Top 10 Front-End Dev Trends for 2025 (bhu)515
trends, ai, low-and-no-code, css, edge-computing, frameworks, dark-mode, sustainability, webauthn, interaction-design, voice
Best Practices for Cognitive Accessibility in Web Design (a11)514
accessibility, wcag, best-practices
1.4.10: Adversarial Conformance (aar)513
accessibility, wcag, compliance
Skip Links: What, Why, and How (tem)512
accessibility, skip-links, keyboard-navigation, wcag
Speeding Up the JavaScript Ecosystem—Rust and JavaScript Plugins (mar)511
javascript, performance, rust, plugins
It Is No Longer Safe to Move Our Governments and Societies to US Clouds (ber)510
cloud-computing, security, privacy, legal
Clean Code in JavaScript: A Comprehensive Guide509
guides, javascript, principles, conventions, variables, objects, functions, comments, testing, quality
In Defense of Text Labels (chr)508
labels, icons, images, usability, design
Stop Your Angular Apps From Leaking Memory (cod)507
videos, angular, memory
Top Benefits of Choosing Node.js for High-Performance Applications506
nodejs, performance, native
How to Do Visual Regression Testing in Vue With Vitest? (ale)505
how-tos, testing, regressions, vuejs, vitest
You Need TDD if You Use AI (lor)504
ai, testing, processes
10 Open-Source Documentation Frameworks to Check Out503
foss, documentation, tooling, link-lists, zola
Accessible Design Checklist (lau/pen)502
accessibility, design, checklists
Debugging Mutable Subresources: A Detective Story (paw)501
signed-exchanges, caching, debugging
Fixing “rowspan=0” on Tables on WebKit (kar)500
html, tables, webkit, browser-engines, browsers
Introduction to Frontend Development499
introductions, html, css, javascript, frameworks, libraries, tooling, career, trends
Toe Dipping Into View Transitions (geo/css)498
css, view-transitions
Web Accessibility Lawsuit Moves Forward Against the State of Louisiana (lfl)497
accessibility, legal, ada
Why We Ditched Next.js and Never Looked Back (tdj)496
nextjs
The Effort Paradox in AI Design495
design, product-management, history
A Guide to AI Prototyping for Product Designers494
guides, design, prototyping, ai, product-management
UX Is Dead, Long Live UX (nng)493
user-experience, ai, economics
“ruby-align” Is Baseline Newly Available492
ruby-markup, html, css, browsers, support, web-platform
Everything You Need to Know About Invoker Commands (kei/web)491
videos, html, pop-overs
Debugging CSS Anchor Positioning (tab+/odd)490
videos, interviews, css, anchor-positioning, debugging
Digital Accessibility and the Cost of Exclusion (deq)489
accessibility, economics, ethics
Intro to Datastar (and Craft CMS) (cra)488
videos, introductions, tooling
TC39 Advances 3 Proposals to Stage 4: RegExp Escaping, Float16Array, and Redeclarable Global Eval Vars (sar/soc)487
standards, ecmascript, javascript, regex, escaping, arrays, math
Google Just Confirmed the AI Reality Many Programmers Are Desperately Trying to Deny (tar)486
programming, ai, productivity, google, github-copilot, code-editors, cursor
What I Wish I Knew as a Junior Developer (cod)485
career, lessons
3 Best Practices for Multi-Language Support in Frontend Development (ele/des)484
guest-posts, internationalization, localization, automation, ai
10 Practical Bash Commands to Simplify Complex Tasks (ski)483
shells, command-line, productivity
20 Years of AJAX: The Technology That Revolutionized Web Development482
ajax, javascript, history, data-fetching
Breakpoint-Free CSS Grid Layouts (kev)481
videos, css, grids, layout, functions
Documenting Web Components With Storybook480
documentation, design-systems, web-components, storybook, examples
Human-Centered Design Through AI-Assisted Usability Testing: Reality or Fiction? (sma)479
design, usability, testing, ai
Tracing of Node.js for Better Visibility and Performance With N|Solid (nod)478
nodejs, tracing, tooling
Why You Shouldn’t Use AI to Write Documentation (lur/zer)477
documentation, writing, ai
Flutter Is at a Critical Inflection Point476
flutter
Demystifying MIME Types: Basics, Use Cases, Best Practices (mar)475
guest-posts, mime-types, fundamentals, best-practices, performance, servers, apache, nginx, email
A Color Input That Also Shows the Value (chr/fro)474
forms, colors, web-components
AI Killed the Tech Interview. Now What?473
interviewing, hiring, ai, career, outlooks
Basic Design Patterns472
software-design, software-design-patterns
CDEs Aren’t Just for Developers: How QA, Tech Writers, and Designers Benefit Too (jet)471
code-editors, jetbrains, case-studies
Decoding CSS Selectors: “:has(:not)” vs. “:not(:has)” (pol)470
css, selectors, comparisons
ESLint Now Officially Supports Linting of CSS (nza/esl)469
eslint, css, linting
How OWASP Helps You Secure Your Full-Stack Web Applications (eri/sma)468
security, owasp, monitoring, authentication, vulnerabilities, configuration, csrf, cryptography, authorization
Navigating the Web Platform (pat)467
web-platform, documentation, browsers, standards, link-lists, cheat-sheets
Static vs. Dynamic Content: Which Should Developers Favor?466
content, client-side-rendering, server-side-rendering, performance, frameworks, comparisons
These (Still) Aren’t the SCs You’re Looking For (pat)465
videos, wcag, accessibility, compliance
Tim Frick on Web Sustainability and Building a Greener Digital World464
interviews, design, content, hosting, sustainability
TypeScript in a Node.js Project (rwi)463
typescript, nodejs, configuration
How I Review Design Work (ted)462
design, consistency, creativity, complexity, processes
CSS-Only Click Handlers You Might Not Be Using, but You Should461
css, selectors
A Really (Really) Long but Authentic History of Design Evolution in India460
design, culture, history
CSS “@function” + CSS “if()” = 🤯 (bra)459
css, functions, conditionals, custom-properties, dark-mode
Meeting European Accessibility Act (EAA) Standards: A Developer’s Checklist458
accessibility, checklists, eaa, legal
10 Awesome CSS Text Effects for Your Next Project (pau)457
css, effects, code-pens
Aspect Ratio Changes With CSS View Transitions (jim)456
css, view-transitions, aspect-ratio
Getting the Relationship Between UX Design and Business Strategy Right (uxm)455
design, user-experience, product-management, strategies, economics, collaboration, business-relations
How to Build a Design System? Rolling It Out and Driving Adoption454
how-tos, design-systems, advocacy
React Libraries for 2025 (rwi)453
react, libraries, tooling, link-lists
Rethinking Find-in-Page Accessibility: Making Hidden Text Work for Everyone (sch)452
accessibility, search, hiding, browsers, html
The “attr()” Function in CSS Now Supports Types (ami)451
css, functions, attributes, types
The Dark Side of UX: Lessons From OnlyFans’ Addictive Design (web)450
lessons, design, dark-patterns, ethics, user-experience, case-studies
The Difference Between Zoom and Scale (css)449
css, zooming, transforms, tips-and-tricks
Top Lawyers in 16 States Push Back on Anti-DEIA Executive Orders (lfl)448
dei, accessibility, legal
Interaction Design Demands More Than Visual Creativity447
design, interaction-design, design-systems, creativity
Implementing a Dissolve Effect With Shaders and Particles in Three.js (cod)446
effects, threejs
Accessible UX Design: 6 Advanced Techniques to Elevate Your Process (a11)445
design, user-experience, accessibility, principles, techniques, processes
It’s Right There in the Back of the Book (hom)444
accessibility, html, semantics
10 Common Web Development Mistakes to Avoid Right Now443
mistakes, mobile, performance, accessibility, seo, navigation, security, analytics, testing
Five Things AI Will Not Change (met)442
ai, outlooks
Generic LLM Chatbot Attestation (aar)441
ai, processes
The New “withAttributes” Method for Relationships and Scopes in Laravel (ami)440
laravel, php
The “:not” Selector in Use (cit)439
css, selectors
Top 5 Uses of WebAssembly for Web Developers438
webassembly, performance, migrating, ecommerce, dev-tools
How to Move the First Element to the End in JavaScript437
how-tos, javascript
How to Use Chrome’s Developer Tools (mat/deb)436
how-tos, chrome, google, browsers, dev-tools
10 Secret Git Commands That Will Save You 5+ Hours Every Week435
git, command-line
Advice to New Engineering Managers (tre)434
engineering-management, leadership, culture
Create Contextual Console Loggers (pat/dev)433
console, javascript, debugging, dev-tools, browsers, edge, microsoft, chrome, google
5 Ways to Increase the Quality of Your Design System Documentation432
design-systems, documentation, quality
Common Accessibility Challenges When Navigating Tables431
accessibility, tables, images, keyboard-navigation
Does WebPerf Matter to Your SEO Ranking? (tod/per)430
videos, performance, seo, keywords
How Do We Know What Components to Work On? (lur/zer)429
design-systems, components, prioritization
Love at First Slide! Creating a Carousel Purely Out of CSS (uti)428
css, scrolling, carousels, functionality
Rainbow Selection in CSS (chr/fro)427
css, selectors, effects
Sunsetting “Create React App” (mat+/rea)426
react
The Great AI UI Unification (mgs)425
ai, usability, chatgpt, openai
The Hardest Working Font in Manhattan (mwi)424
fonts, typography, history
We Were Wrong About GPUs (fly)423
cloud-computing, edge-computing, ai, docker, containerization, developer-experience
Comcast: A New Standard for Internet Energy Efficiency422
web, network, infrastructure, sustainability
2025: 10 Free Must-Know Websites for Every Developer421
productivity, creativity, link-lists
Don’t Start Testing Accessibility With a Screen Reader (eri)420
accessibility, testing, screen-readers, keyboard-navigation
How to Test and Measure Content in UX (vit/sma)419
how-tos, user-experience, design, content, testing, analytics
Interop 2025 (pat)418
interoperability, web-platform, browsers, support
Using the “step” and “pattern” Attributes to Make Number Inputs More Useful (cas/pic)417
html, forms
Which HTML Element Are You?416
quizzes, html
Launching Interop 2025 (moz)415
interoperability, web-platform, browsers, support
When an Engineering Manager Marries a Product Manager: Planning, Roadmaps, and Bug Fixes (cod)414
engineering-management, product-management, career, collaboration, processes
Interop 2025: Another Year of Web Platform Improvements (rac)413
interoperability, web-platform, browsers, support
Faux Containers in CSS Grids (tyl/clo)412
css, grids, layout
How to Improve Webpage Speed: Tips and Best Practices411
how-tos, performance, optimization, tips-and-tricks, best-practices, redirecting, fonts, images, testing, tooling, webpagetest
Style Observer: JS to Observe CSS Property Changes, for Reals (lea)410
tooling, libraries, css, javascript
Testing 10 JavaScript Frameworks on Their HTML Defaults (j9t)409
frameworks, javascript, html, conformance, comparisons, link-lists
Why Emojis Are the Ultimate User Interface (web)408
emoji, user-experience, design
Reimagining Fluid Typography (mia/odd)407
typography, css, responsive-design, liquid-design
State of React 2024 [Results] (sac+/dev)406
surveys, metrics, react
Better Text Rendering in Chromium-Based Browsers on Windows (pat)405
typography, rendering, browser-engines, browsers, chromium, windows, microsoft
State of AI 2025 (sac/dev)404
surveys, ai
Tech Continues to Be Political (mia)403
politics, community, dei, ethics, ai, career
Time to First Byte: Beyond Server Response Time (mat/sma)402
performance, optimization, redirecting, content-delivery
12 Web Accessibility Tips to Make Your Site More User-Friendly401
accessibility, tips-and-tricks, contrast, alt-text, keyboard-navigation, navigation, captions, labels, skip-links, microcontent
How to Start a React Project (rwi)400
how-tos, react
Simplify Nested Code (kei)399
programming, nesting, conditionals, simplicity
Structuring Design Tokens for Interactive States398
design-tokens
The Mystery of Mutable Subresources in Signed Exchanges (paw)397
authentication, signed-exchanges, caching, ruby-on-rails, nextjs, compression, http-headers, http
Web Components Toolkit (stu)396
websites, web-components
“Create React App” Officially Deprecated Amid React 19 Compatibility Issues (sar/soc)395
react, vite, migrating, single-page-apps, deprecation
Don’t Put Your Team in a Bubble394
agile, scrum, product-management, engineering-management
How to Refactor Code With GitHub Copilot393
how-tos, refactoring, ai, github-copilot, github
Designing Accessible Website Navigation: Best Practices for Inclusive UX392
accessibility, design, user-experience, navigation
Exploring Routes Rendering Modes in Angular (mai)391
angular, routing
How I Created a Popular WordPress Theme and Coined the Term “Hero Section” (Without Realizing It) (sma)390
wordpress, themes, terminology, history
How to Write Cypress Tests That Don’t Suck (ato)389
how-tos, testing, cypress
Optimizing Images for Web Performance (tod/fro)388
images, performance, optimization, jpeg, png, webp, avif, html, caching
Organizing Design System Component Patterns With CSS Cascade Layers (mrt/css)387
design-systems, components, css, cascade
Website Accessibility Testing Methods That Work (a11)386
accessibility, testing, processes
Control Scope Creep Before It Controls You385
project-management, processes
Micro Frontends With Angular and Native Federation (man/ang)384
angular, micro-frontends
Microsoft Study Finds AI Makes Human Cognition “Atrophied and Unprepared” (ema/404)383
studies, research, microsoft, ai, career, learning
Engineers Who Won’t Commit (sea)382
career, processes
10 Must Read Microservices Architecture Books for Experienced Developers381
books, microservices, architecture
Think JavaScript Is Slow? Here’s How JIT (Just in Time) Compilation Makes It 100× Faster Instantly380
javascript, compiling, performance
Designing for AI Engineers: UI Patterns You Need to Know (eve)379
design, design-patterns, principles, processes, ai
How I Migrated From WordPress to Astro (its)378
migrating, wordpress, astro
Tightening Every Bolt (bag)377
videos, processes, code-reviews, testing, security
TypeScript: The “satisfies” Operator (rau)376
typescript, operators
The First Ever Website That Literally Glows in the Dark375
videos, effects, apis, javascript, css
Beware the Faux Bold (and How to Fix It) (ric)374
typography, fonts, css
Beyond DX: Developers Must Now Learn Agent Experience (AX) (ric)373
code-editors, ai, agent-experience, developer-experience
Here Is Why Microsoft’s “Uninstall Edge” Page Offers No Instructions to Remove the Browser372
edge, microsoft, browsers
Taking RWD to the Extreme (sma)371
responsive-design, intrinsic-design, html, css
Three Approaches to the “&” (Ampersand) Selector in CSS (pre/fro)370
css, nesting
Preload Fonts on Your Website for Better Core Web Vitals (deb)369
performance, preloading, fonts, hints, web-vitals
View Transitions Applied: More Performant “::view-transition-group(*)” Animations (bra)368
css, javascript, view-transitions, performance
6 Questions for Eric Eggert (yat+/fro)367
interviews, accessibility, eaa, legal
The Popover API Is Now Baseline Newly Available366
pop-overs, apis, browsers, support, web-platform
An Intro to React Compiler (nik)365
introductions, react, compiling
The Complete OpenCode Guide: Tips, Tricks, and Best Practices364
guides, tips-and-tricks, best-practices, opencode, ai
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
Some Terminal Frustrations (b0r)343
command-line, shells
Optimizing the Critical Rendering Path (mat/deb)342
performance, optimization, critical-path
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
Build a Link Blog (xua)339
blogging, links
Firefox 135 Launches With New Translation Languages, New Tab Layout, Security, and Privacy Improvements338
firefox, mozilla, browsers
How I Learned to Code With My Voice (whi)337
voice, code-editors, tooling
Integrations: From Simple Data Transfer to Modern Composable Architectures (edo/sma)336
architecture, web-services, apis, rest, graphql, webhooks, headless, content-management
Internet of Agents335
web, agent-experience, ai
Live CSS Colors: What You Can Safely Use (jar/van)334
css, colors, functions
Oracle Justified Its JavaScript Trademark With Node.js—Now It Wants That Ignored (tin/den)333
oracle, javascript, nodejs, deno, legal
Reasons Not to Refactor (tho)332
technical-debt, refactoring, processes, prioritization
The End of Programming as We Know It (tim/ore)331
programming, processes, ai, career, history, outlooks
Tutorial: Publishing ESM-Based npm Packages With TypeScript (rau)330
tutorials, dependencies, npm, typescript
Understanding the Trade-Offs of Using Tailwind CSS (mon/mea)329
tailwind, presentational-html, css
Using Padding to Space an Input and Label (dar)328
html, forms, labels, spacing, css
Which VoiceOver? (aar)327
accessibility, voiceover, screen-readers, unix-like, apple
How I Use LLMs as a Staff Engineer (sea)326
ai, processes
Introducing Fusion: Write PHP Inside Vue and React Components (eri/lar)325
introductions, tooling, php, vuejs, react, components
How to Favicon in 2025: Three Files That Fit Most Needs (sit/evi)324
how-tos, images, favicons
Alt Text Accessibility: Balancing AI and Human Oversight (tec+/equ)323
podcasts, accessibility, images, multimedia, alt-text, ai, quality
Angular: The Documentary322
videos, angularjs, angular, history
How to Gif (2025 Edition) (oll)321
how-tos, images, multimedia, gif, png, webp, avif, jpeg-xl
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
How to Manage Old Content on a News Website (moz)314
how-tos, content, content-management, maintenance, prioritization, redirecting, seo
Introducing the JSR Open Governance Board (tin+/den)313
introductions, jsr, javascript, typescript, community
Notes on the “Code Editors With AI” Landscape (chr/fro)312
ai, code-editors, plugins, github-copilot, cursor, project-idx, google, jetbrains
Smarter, Faster, Human: The Future of Design Systems With AI (uxm)311
design-systems, ai, outlooks
There Are a Lot of Ways to Break Up Long Tasks in JavaScript (mac)310
javascript, web-workers, performance
Typecasting and Viewport Transitions in CSS With “tan(atan2())” (mon/css)309
css, transitions, animations, functions, math
How to Perform Comprehensive ADA Testing (a11)308
how-tos, testing, processes, ada, legal, compliance, accessibility
Generating Image Descriptions and Alt-Text With AI (dri)307
images, alt-text, accessibility, ai, quality
Before You Buy an Accessibility Audit (cer)306
accessibility, auditing, training, testing, culture
The Systemic Failure of Implementing CSS Principles305
css, principles, history, maintainability, consistency, modules, craft
The Paradox of UX Personalization304
user-experience, personalization, ai
Combining “currentColor” With Relative Color Syntax (oll)303
css, colors
How to Write a Good Design Document (gra)302
how-tos, writing, documentation, software-design