Tech does not just watch: Take action against Russia’s war on Ukraine 🇺🇦, and take action against Israel’s oppression and killing of Palestinians and the occupation and destruction of Palestine (history) 🇵🇸 Hide

Frontend Dogma

News and Tools for Web Developers (4)

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

Entry (Sources) and TopicsDate#
Setting Targets for Developer Productivity Metrics (lau)17,184
principles, productivity, metrics
Privacy on the Web: Creating a More Trustworthy Web (set/w3c)17,183
web, privacy, standards
Felix Arntz on How Speculative Loading Is Speeding Up Your WordPress Website (fel+)17,182
podcasts, interviews, wordpress, performance, speculation
Exploring the OKLCH Ecosystem and Its Tools (ina+/evi)17,181
oklch, colors
Best Examples of EAA Compliant Websites in 202517,180
accessibility, eaa, compliance, examples
AI-Assisted Development Needs Automated Tests (sim)17,179
ai, programming, testing, automation
5 Common Mistakes When Creating Design Specs17,178
videos, design, documentation, mistakes
Ready or Not, the EAA Is Here (uxd)17,177
accessibility, legal, eaa, wcag
Will the Model Eat Your Stack? (dbr)17,176
ai, product-management, prioritization
Why Is Quality So Rare?17,175
quality, craft
What We Know (So Far) About CSS Reading Order (dxn/css)17,174
css, source-order
The Magic of the Most Minimal HTML Possible (and Why We Don’t Make Use of It) (j9t)17,173
html, minimalism, maintainability
The Browser Company Explains Why It Stopped Developing Arc (blu/ver)17,172
arc, the-browser-company, browsers
Should We Stop Creating Informational Content? (moz)17,171
content, ai, seo, sem
Seamlessly Blend PHP With Node.js (mco+/pla)17,170
nodejs, php, packages
Quick Tip: Context Is Key (nat)17,169
accessibility, testing, tips-and-tricks
New in Chrome 137 (rac/dev)17,168
release-notes, chrome, google, browsers
Letter to Arc Members 202517,167
arc, dia, the-browser-company, browsers
Data vs. Findings vs. Insights in UX (vit/sma)17,166
user-experience, metrics, terminology, comparisons
Build a Blog With Angular in Under 30 Minutes Using Analog (pmb)17,165
blogging, angular, functionality
AI Agents for Designers, Developers, and UX Strategists: What You Need to Know Now (web)17,164
design, user-experience, processes, ai
Top 10 Open Source Node.js Projects With AI Integration (It’s Crazy)17,163
nodejs, ai, tooling, foss, link-lists
The Perfect Project Setup for Angular: Structure and Automation for More Quality (man)17,162
angular, linting, modules, architecture, commit-messages, tooling
Why WordPress Scalability Starts With Smart Site Structure From Day One17,161
wordpress, scalability, performance, hosting
What I Learnt About Making Websites by Reading Two Thousand Web Pages (ale)17,160
html, css, conditional-comments, lessons
Wake Up, Remix (rem)17,159
remix, react-router
CSS Spotlight Effect (ami/fro)17,158
css, effects
AI Makes Bad Managers17,157
ai, engineering-management
The Evolving Art and Science of Prompt Engineering: A Chronological Journey17,156
ai, prompting, history
Your React Meta-Framework Feels Broken, Here’s Why (red)17,155
frameworks, react, nextjs, react-router, comparisons
What Svelte Promises (ric/sve)17,154
videos, svelte
Stop Saying That AI Is Just a Tool and It Only Matters How It Is Used (fra)17,153
tooling, ai
How the World Is Celebrating Open Source Maintainer Month (the)17,152
foss, maintenance
Decorative Text Within HTML (ede)17,151
html, attributes, css, formatting
Comparing Rust, JavaScript, and Go for Authoring WASM Components17,150
webassembly, components, rust, javascript, go, comparisons
Are You Sure That Table Isn’t a List? (tem)17,149
tables, lists, accessibility, wcag
A Thought on JavaScript “Proof of Work” Anti-Scraper Systems (cks)17,148
javascript, ai, scraping
Why Fonts Look Better on macOS Than on Windows (uxd)17,147
fonts, typography, readability, unix-like, apple, windows, microsoft, comparisons
The Role of Captions and Transcripts in Accessibility17,146
accessibility, captions
JavaScript’s Upcoming Temporal API and What Problems It Will Solve17,145
javascript, time, apis
Scaling to 1 Million Users: The Architecture I Wish I Knew17,144
architecture, scalability, servers, caching, microservices, asynchronicity, databases, observability, content-delivery
Tools (ada)17,143
tooling, ai
The End of Glitch (Even Though They Say It Isn’t) (kei)17,142
glitch
On “Vibe Coding” (tan)17,141
vibe-coding, ai
My Request to Google on Accessibility (aar)17,140
accessibility, google, history
Multithreading in JavaScript With Web Workers (hon)17,139
javascript, multithreading, web-workers, examples
Modern CSS for Creative Developers (cyd/btc)17,138
videos, css, creativity
Making Scannable Web Pages for Assistive Technology (jar)17,137
accessibility, assistive-tech, design, headings, semantics, html
Better CSS Shapes Using “shape()” (css/css)17,136
css, shapes, functions
You Can Style Alt Text Like Any Other Text (geo/css)17,135
alt-text, accessibility, images, css, javascript
What’s New in Angular (dev)17,134
videos, angular
Web Animations Today and Tomorrow (bra/dev)17,133
videos, animations, view-transitions, scrolling, css, web-platform
Trip Report: Node.js Collaboration Summit (2025 Paris) (joy+/nod)17,132
nodejs
The Landing Zone (ada)17,131
concepts, viewport
The “datalist” Element (kev)17,130
html, forms
Performance Debugging in DevTools (pau/dev)17,129
videos, performance, debugging, dev-tools, browsers, chrome, google
Move Modal in on a… “shape()” (chr/fro)17,128
modals, functions, css
Make Screen Readers Talk With the ARIA Notify API (ale)17,127
accessibility, screen-readers, aria, apis, javascript
Important Changes Are Coming to Glitch (ani/gli)17,126
hosting, glitch
How to Build Scalable Web Apps With React JS17,125
how-tos, web-apps, performance, scalability
Deploying Accessibility at Scale: Strategy, Tactics, and Battle Stories (int)17,124
videos, accessibility, strategies
CodeRabbit’s AI Code Reviews Now Live Free in VS Code, Cursor (dar/the)17,123
code-editors, vs-code, microsoft, cursor, ai, code-reviews, coderabbit
Anthropic Launches Its Most Powerful Models for Coding Yet (fre/the)17,122
ai, claude, anthropic
Announcing TypeScript Native Previews (dan/typ)17,121
typescript
A Brief History of JavaScript (den)17,120
history, javascript, ecmascript, typescript, json, javascript-engines, runtimes, browsers
The Pipe Operator Is Coming to PHP 8.5 (ami)17,119
php, operators
Styling the Icon for HTML Date and Time Types (cas)17,118
html, forms, css, time
Masonry, Item Flow, and… GULP? (mey)17,117
css, masonry, flexbox, grids, layout
ESLint v9.0.0: A Retrospective (nza/esl)17,116
eslint, retrospectives
Coding Guidelines for Your AI Agents (jet)17,115
conventions, ai
Authenticating JavaScript WebSockets17,114
websockets, javascript, authentication
MCP Is the Coming of Web 2.0 2.0 (ani)17,113
ai, mcp, web-2.0, web
What’s New in Web (rac/dev)17,112
web-platform, support, browsers, tooling
What’s New in DevTools, Chrome 137 (dev)17,111
release-notes, dev-tools, chrome, google, browsers
Web Stage [Google I/O 2025] (pau+/dev)17,110
videos, google, chrome, browsers, web-platform
We Did the Math on AI’s Energy Footprint—Here’s the Story You Haven’t Heard (jam+/tec)17,109
ai, sustainability, openai, google, microsoft, anthropic
Visual Studio Code Now Supports Baseline (rvi/dev)17,108
vs-code, microsoft, code-editors, support, web-platform
The “caption” Element (hey)17,107
html, tables, semantics
Reports of Deno’s Demise Have Been Greatly Exaggerated (tin/den)17,106
deno, fresh
Introduction to JavaScript Frameworks (rya)17,105
introductions, videos, javascript, frameworks, react, angular, vuejs, svelte, solidjs
CSS Logical Properties (cfe)17,104
css, logical-properties
ChatGPT and the Proliferation of Obsolete and Broken Solutions to Problems We Hadn’t Had for Over Half a Decade Before Its Launch (ana/fro)17,103
chatgpt, ai, css, support
Why “__init__.py” Changed the Way I Code in Python17,102
python
No Country for Junior Designers (uxd)17,101
design, career
WordPress Needs Documentation About Accessibility, Help Me Work on It (ria)17,100
wordpress, accessibility, documentation
Unshipping: How (and When) to Break Web Features (ric+/iga)17,099
podcasts, interviews, web-platform, standards
There Is No Spoon (tin/btc)17,098
videos, ai, accessibility
The State of JavaScript Debugging in WebAssembly (the)17,097
javascript, webassembly, debugging
The Role of UX Design Strategy in Driving Product Adoption (uxm)17,096
user-experience, design, accessibility, strategies, product-management
The Role of Prototyping in Perfecting Product Designs (uxm)17,095
design, user-experience, prototyping
The Problem With Web Components17,094
web-components
JetBrains AI Assistant—Now in Visual Studio Code (jet)17,093
jetbrains, ai, vs-code, microsoft, code-editors
JavaScript in the Morning, JavaScript in the Evening… (ray)17,092
javascript, localization
Is Thinking Outside the Box Still Possible in a Cancel Culture World? (web)17,091
design, creativity, culture
How JavaScript’s “at()” Method Makes Array Indexing Easier17,090
javascript, arrays
Exploring the Role of Generative AI in Mobile UX Design (uxm)17,089
ai, design, user-experience, mobile
Docker Launches Hardened Images, Intensifying Secure Container Market (the)17,088
docker, security
Designing Calm: UX Principles for Reducing Users’ Anxiety (uxm)17,087
design, user-experience, principles
CSS Tips: Flexible Wrapping CSS Grid (zor/css)17,086
videos, css, grids, layout, tips-and-tricks
Creating Blob Shapes Using “clip-path: shape()” (css/fro)17,085
css, clipping, shapes
A11y 101: 1.4.12 Text Spacing (nat)17,084
introductions, accessibility, wcag, typography
A Reader’s Question on Nested Lists (mon/css)17,083
lists, css
6 Ways Slack, Notion, and VS Code Improved Electron App Performance17,082
electron, performance, case-studies, slack, vs-code
No Server, No Database: Smarter Related Posts in Astro With transformers.js (ale)17,081
astro, javascript, ai, hugging-face
5 Linux Commands You’ve Probably Never Heard Of17,080
unix-like, command-line
How to Convince People to Care and Invest in Accessibility (ste)17,079
how-tos, accessibility, metrics, advocacy
Why Strong Engineers Are Rarely Blocked (sea)17,078
career, communication
Design for Trust, Then for Possibility (uxd)17,077
design, user-experience
The Fastest Way to Spend Less Time Debugging17,076
videos, debugging, testing, principles
Modernizing Security17,075
security, modernization, processes
Expanding/Collapsing With “details” (ons/oze)17,074
accessibility, html, disclosure-widgets
Handling Routes in JavaScript Projects (sea)17,073
javascript, routing, frameworks
Why AI Interviews Could Be Bad News for Honest Designers (and)17,072
design, career, interviewing, ai
The Ingredients of a Productive Monorepo (swg)17,071
monorepos, version-control, building, testing, ci-cd
The Basics of Node.js Streams17,070
fundamentals, nodejs, streaming
Just Fucking Use React (ome+)17,069
websites, react
Is There a Correct Answer? Flipping Layouts When Google Translate Swaps Between a Left-to-Right Language and a Right-to-Left Language (chr/fro)17,068
html, internationalization, localization, conversion
If You’re an Artist and You’re Discouraged by AI Art, You Need to Hear This17,067
design, art, ai, career
Styling Console Text in Node.js (rau)17,066
nodejs, console, javascript
Scroll-Driven Animations Inside a CSS Carousel (geo/css)17,065
css, animations, scrolling, carousels
React Router RSC Preview (rem)17,064
react, react-router, components
“:out-of-range” (kev)17,063
css, selectors
Node.js TSC Declines to Endorse Feature Bounty Program (sar/soc)17,062
nodejs
My Glamorous Life: Broken by Design (zel)17,061
design, user-experience
How Long Does It Take to Rank in Google? And How Old Are Top Ranking Pages? (ahr)17,060
google, search, seo, metrics
Fewer Ideas: An Unconventional Approach to Creativity (sma)17,059
design, creativity, processes
Behind the Scenes: How We Iterate on UI Copy (aut)17,058
design, content, microcontent, processes, case-studies, automattic
Awareness (ada)17,057
awareness-days, accessibility
An Update on Fresh (mar/den)17,056
fresh
Accessibility Report 2025 (ema)17,055
studies, research, accessibility, email
A11y 101: How to Test Manually (nat)17,054
introductions, accessibility, testing
3 Tools to Help Fix the Web’s Most Common WCAG 2.2 Failures (ato)17,053
accessibility, wcag, tooling, lighthouse, google, webaim
Securing Your Node.js App From Command Injection17,052
nodejs, security
Wes Tatters on the Evolution of Internet Communities and WordPress Open Source (nat)17,051
podcasts, interviews, community, wordpress, foss
We Launched Our First Shopify Theme (nic)17,050
shopify, theming, case-studies
Release Notes for Safari Technology Preview 219 (jon/web)17,049
release-notes, safari, apple, browsers
Painting With the Web (mat/btc)17,048
videos, web, web-platform, design, typography
Microsoft Lays Off TypeScript Veteran Ron Buckton Amid 6,000-Job Cut Restructuring17,047
microsoft, typescript
How Often Should We Speak About HTML Conformance? (j9t)17,046
html, conformance, metrics
How Google Is Accelerating Code Migrations With AI17,045
studies, research, google, ai, migrating, case-studies
Focus on the Product, Not the Tech Stack17,044
prioritization, tech-stacks, career
The Impact of Web Accessibility Overlays on the Usability and User Experience for People With Permanent Visual Impairments (dni)17,043
studies, research, accessibility, usability, overlays
Behind the Scenes of Verso Browser Development (wuy)17,042
verso, browsers, servo, browser-engines
Cold vs. Hot Observables in Angular With RxJS17,041
angular, asynchronicity, reactivity, examples, terminology
The Perverse Incentives of Vibe Coding (fre/uxd)17,040
ai, vibe-coding, metrics, economics, tips-and-tricks
What Is a Conforming Alternate Version and When Would We Use It? (mni)17,039
accessibility, compliance
How to Have the Browser Pick a Contrasting Color in CSS (jen/web)17,038
how-tos, browsers, css, functions, colors, contrast
Finding the Joy in Alt Text (bry)17,037
alt-text, accessibility, images
Container Query for “Is There Enough Space Outside This Element?” (chr/fro)17,036
css, container-queries
Design, Code, Publish—All in Figma? (fro)17,035
podcasts, figma, ai
Why I Skipped Figma and Prototyped in Code Instead (uxd)17,034
design, figma, ai, vibe-coding, prototyping
How I Built Dynamic Social Media Images in Eleventy Using Cloudinary (chi)17,033
eleventy, images, social-media, tooling, cloudinary
WebKit Features in Safari 18.5 (jen/web)17,032
release-notes, safari, apple, browsers, webkit
Update on CSS Anchor Positioning (fan/w3c)17,031
css, standards, anchor-positioning
Understanding Java’s Asynchronous Journey17,030
java, asynchronicity, history
The Height Enigma (jos)17,029
css, fundamentals
Just Fucking Use HTML (kyr)17,028
websites, html
JavaScript Compile Hints: What They Are and When to Use Them (tre)17,027
javascript, compiling, v8, javascript-engines
Integrating Localization Into Design Systems (sma)17,026
design-systems, localization, figma, case-studies
I Think the Ergonomics of Generators Is Growing on Me (mac)17,025
javascript, functions
How to Title Your Blog Post or Whatever (dyn)17,024
how-tos, blogging, writing, microcontent
Enhancements to the Proposed “<permission>” Element (tom/dev)17,023
html
Claude Code: AI Agent for Devops, SRE, and Platform Engineering17,022
videos, ai, claude, anthropic, dev-ops, platform-engineering
Designing AI With Purpose: The AI Intention Matrix (uxd)17,021
ai, design, product-management
The Tech Bro Era Is Fading—So Who’s Next to Shape Our Culture? (uxd)17,020
ai, design, user-experience, culture, community
Figma Sites: When Accessibility Is an Afterthought (uxd)17,019
figma, accessibility, link-lists
Good Commit Messages Are Just Self-Care: Why I Document Everything17,018
commit-messages, documentation, git
Unlocking Accessibility: Information Architects Share Their Approach to Digital Accessibility and Design With People With Disabilities17,017
accessibility, information-architecture
The True Path to Garbage Code: Figma Sites (joe)17,016
figma, html, quality, semantics, accessibility
Foundations: Keyboard Accessibility (tet)17,015
fundamentals, accessibility, keyboard-navigation, focus, html
Figma Sites Is Worse Than You Might Have Thought (kev)17,014
videos, figma, quality
Figma Dreamweaver (pav)17,013
figma, dreamweaver, wysiwyg, comparisons
Dependency Inversion in React: Building Truly Testable Components17,012
react, components, testing
95% of Homepages Are Inaccessible (uxd)17,011
homepages, wcag, accessibility, metrics
CSS Snippets (ada)17,010
css
Building the Bridge: Running JavaScript Modules From Dart17,009
javascript, modules, esm, commonjs, dart, deno
Use Baseline With Browserslist (mal/dev)17,008
browsers, support, web-platform, browserslist
Waiting for Postgres 18: Accelerating Disk Reads With Asynchronous I/O (luk/pga)17,007
postgresql, databases, asynchronicity
15+ Secret Weapons for Frontend Devs That Most Beginners Miss17,006
tooling, link-lists
Why Is Nobody Using the “hwb()” Color Function? (css)17,005
css, colors, functions
“shape()”: A New Powerful Drawing Syntax in CSS (chr/fro)17,004
css, functions, shapes, clipping
“:placeholder-shown” (kev)17,003
css, selectors
Migrating a JavaScript Project From Prettier and ESLint to BiomeJS (app)17,002
javascript, migrating, prettier, eslint, biome
Is Web Development Dying? Inside Information17,001
career, ai
Guitar Chords in CSS (sto)17,000
css, functions, examples
Do Not Publish Your Designs on the Web With Figma Sites… (aar)16,999
figma, accessibility
Towards React Server Components in Clojure (rom)16,998
clojure, react, components
Getting Things “Done” in Large Tech Companies (sea)16,997
productivity, processes, project-management
Using Container Query Units Relative to an Outer Container (ana/fro)16,996
css, container-queries, units
Updates to Popover and CSS Anchor Positioning Polyfills (jam/odd)16,995
css, polyfills, pop-overs, anchor-positioning
The Hidden Gold of Web Accessibility: Everything About ARIA Labels (flo/a11)16,994
accessibility, aria, html, best-practices
Node.js 24 Is Here: What You Need to Know (nod)16,993
nodejs
Node v24.0.0 (Current) (raf/nod)16,992
release-notes, nodejs
Next.js Deployment Spec Simplifies Frontend Hosting (low/the)16,991
nextjs, deploying, hosting, netlify, vercel
Masonry in CSS: Should Grid Evolve or Stand Aside for a New Module? (sma)16,990
css, masonry, grids, layout
How to Create Full Width Containers in CSS (lia)16,989
how-tos, css
Are “CSS Carousels” Accessible? (sar)16,988
css, carousels, accessibility, examples
Angular: “httpResource” in the Wild16,987
angular, data-fetching, reactivity
7 Things I Do Regularly as a Senior Frontend Developer (nde)16,986
career, learning, code-reviews
Measuring Developer Productivity in the LLM Era16,985
ai, productivity, developer-experience, engineering-management
Creating a More Accessible Web With ARIA Notify (pat/mic)16,984
accessibility, aria, notifications, apis
You’re Misunderstanding DDD in Angular (and Frontend) (duc/dan)16,983
software-design, angular
UX Localization: Adapting User Interfaces for Diverse Cultures (uxm)16,982
design, user-experience, localization, product-management
There Should Be No AI Button16,981
ai, design, user-experience, buttons
The Power of the Spread and Rest Syntax in JavaScript16,980
javascript, arrays
The Growing Divide Among React Developers… (fir)16,979
videos, react, components, nextjs, vercel
The “code” Element (hey)16,978
html, markdown
Test Keyboard Accessibility on Your Website16,977
videos, accessibility, keyboard-navigation, testing
Rethinking Responsive Grids With a Content-Aware Approach (web)16,976
responsive-design, content, grids, layout
Passkeys for Normal People (tro)16,975
security, authentication, passkeys, examples, concepts
Mozilla Say Google Search Deal Vital to Firefox’s Survival (d0o/omg)16,974
mozilla, firefox, browsers, google
K.I.S.S. ARIA (nat)16,973
aria, html, accessibility
How to Launch Big Complex Projects (vit/sma)16,972
how-tos, processes, project-management
Database Internals Explained: The Invisible Engine Behind Every App You Use (rak)16,971
videos, databases
We Have a Daily Standup. Nobody Stands. Nothing’s Up.16,970
agile, processes, culture
How I Would Learn to Code (if I Could Start Over)16,969
programming, ai, learning
What Is Semantic Caching? (doe/the)16,968
ai, performance, semantics, caching, concepts
Robust Data Fetching Architecture for Complex React/Next.js Apps (tre)16,967
react, nextjs, hooks, data-fetching, architecture
Polyfilling CSS With CSS Parser Extensions (bra)16,966
css, polyfills
Stop Using AWS16,965
aws
Potential Accessibility Issues of Floating Animations on Webpages and Mobile Apps (cer)16,964
accessibility, animations
What Is an Encryption Backdoor? (int)16,963
security, encryption, vulnerabilities, concepts
Generative AI and the Triad Color Harmony (tmr/uxd)16,962
ai, colors, color-palettes
CSS Isn’t Broken—You Just Never Read the Docs16,961
css, documentation, cascade, layout, presentational-html
We Cannot Talk About AI Without Talking About Capitalism, Fascism, and Liberty (chr)16,960
ai, economics
WCAG 3.0’s Proposed Scoring Model: A Shift in Accessibility Evaluation (sma)16,959
accessibility, auditing, compliance, wcag
React Compiler Explained in 3 Minutes (Goodbye, Re-Renders) (bet)16,958
videos, react, compiling
npm Targeted by Malware Campaign Mimicking Familiar Library Names (soc)16,957
npm, malware, security, dependencies, link-lists
CSS “shape()” Commands (geo/css)16,956
css, functions, shapes, clipping
Building a More Accessible GitHub CLI (rya+/git)16,955
github, tooling, command-line, accessibility
10 New Jobs for Burned-Out Software Developers (app/the)16,954
career
SSR vs. SSG vs. CSR vs. ISR—Rendering Performances Compared (des)16,953
guest-posts, server-side-rendering, static-site-generation, client-side-rendering, incremental-static-regeneration, comparisons
Use CSS “reading-flow” for Logical Sequential Focus Navigation (rac/dev)16,952
css, flexbox, grids, layout, accessibility
PHP 8.4’s New “Dom\HTMLDocument” in Diffs (lia)16,951
php
Node.js Next 10 Survey 2025 (nod)16,950
surveys, nodejs
Easier Layout With “margin-trim” (jen/web)16,949
css, margins, spacing, safari, apple, browsers
Stop Hiding Bad Code Behind Good Tooling16,948
tooling, quality, craft
Why the U.S. Is Slamming the Door on Indian Tech Talent16,947
career, hiring
What’s New in Astro—April 2025 (sar/ast)16,946
release-notes, astro
The Story of Fastify and Vue (ano)16,945
fastify, vuejs, complexity, simplicity
The “cite” Element (hey)16,944
html, semantics
Revisiting Image Maps (mal/css)16,943
images, image-maps, html, techniques
npm Should Remove the Default License From New Packages (ISC) (ext)16,942
npm, dependencies, licensing, foss
New to the Web Platform in April (rac/dev)16,941
release-notes, web-platform, browsers, chrome, google, firefox, mozilla, safari, apple
Keyboard Navigation: Ensuring Usability Without a Mouse16,940
accessibility, usability, keyboard-navigation, testing
JavaScript, When Is This? (wil/pic)16,939
javascript
Interop Unites Browser Makers to Smooth Web Inconsistencies (mar/the)16,938
interoperability, web-platform, browsers, consistency
How to Detect Memory Leaks in Your Web App16,937
how-tos, videos, web-apps, memory, debugging, angular
Event Handling in JAWS and NVDA (sib/tpg)16,936
accessibility, screen-readers, jaws, nvda, events, javascript, comparisons
Done With Components (don)16,935
design-systems, components
Disclosures and Accordions (web)16,934
disclosure-widgets, accordions, accessibility
Tools of the Trade: Accessibility Without the Cost (web/equ)16,933
accessibility, tooling, linting, testing
Seeking an Answer: Why Can’t HTML Alone Do Includes? (chr/fro)16,932
html, maintainability
Organizational Scaffolding for Accessible Design and Content (sta/a11)16,931
videos, interviews, accessibility, processes, tooling, culture
Intro to E2E Testing With Cypress (ng-)16,930
videos, introductions, testing, cypress
How Keyboard Testing Improves Digital Accessibility (mic/deq)16,929
accessibility, keyboard-navigation, testing
[GSAP] 3.13 Release (cas/gsa)16,928
release-notes, gsap
Good vs. Great Animations (emi)16,927
animations, css, transforms, transitions, radix
Giving V8 a Heads-Up: Faster JavaScript Startup With Explicit Compile Hints16,926
v8, javascript-engines, javascript, compiling
Focus Priming (tem)16,925
accessibility, focus
Converting Values to Strings in JavaScript (rau)16,924
javascript, conversion
Automated Accessibility Test Tools Find Even Less Than Expected16,923
accessibility, testing, automation, metrics
Angular Unit Tests Distilled (rai/ng-)16,922
videos, angular, testing
7 Programming Myths That Waste Your Time (fir)16,921
videos, programming, productivity, efficiency, myths
The Guide to MCP I Never Had16,920
guides, mcp, ai
I Tried 50 AI Tools—Here’s How AI Is Changing the Way We Design16,919
design, ai, tooling
Ignoring Character Limits Can Wreck Your Product’s UX16,918
design, user-experience, internationalization, localization
The 4 Motivations for Accessibility—the Big “Why?”16,917
accessibility, economics, legal, dei
What Is [the] CSS Owl Selector (“* + *”)? (zor/css)16,916
videos, css, selectors
The Future of Web Design: Will We Even Recognize It in 100 Years? (web)16,915
design, outlooks
The “canvas” Element (hey)16,914
html, canvas, semantics
React Internals: Which “useEffect” Runs First? (fro)16,913
react, hooks
Node.js Streams With TypeScript16,912
nodejs, streaming, typescript, examples
Menu and Navigation: The Difference (stv)16,911
navigation, pagination, html, aria, accessibility
Giving Software Away for Free (sim)16,910
foss, hosting, html, javascript
Deno’s Decline (6 Regions and Falling) (db)16,909
deno
Anchor Positioning Just Don’t Care About Source Order (geo/css)16,908
css, anchor-positioning, source-order, html
A11y 101: 1.4.11 Non-Text Contrast (nat)16,907
introductions, wcag, accessibility, contrast, colors
Design System Documentation Is Essential—as Long as It’s Good (pjo)16,906
design-systems, documentation, content, writing, principles
Craft and Satisfaction (jim)16,905
craft, ai
Running Clojure in Wasm (rom)16,904
clojure, webassembly
Cybersecurity Leaders Are Staying in the Shadows (ste)16,903
security, community, culture
8 CSS Shorthands That Instantly Clean Up Your Code (let)16,902
css, shorthands
Bias in Design Systems (ben)16,901
design-systems, documentation, collaboration, processes
Every Developer Needs to Self-Host16,900
self-hosting, learning
AI Writes My Code for Me16,899
ai, productivity, career
CSS Boilerplate (mat)16,898
css, templates
Why Care About the No-JS Experience? (cfe)16,897
javascript, support
Using View Transitions in Next.js (jac)16,896
nextjs, view-transitions, css
Unlocking Accessibility: Frontend Developers Discuss Semantic HTML and Accessible Code16,895
accessibility, semantics, html, community
Frontend’s Next Evolution: AI-Powered State Management (the)16,894
state-management, ai, outlooks
Forget the AI Hype—Here’s How Real AI Agents Are Built to Solve Real Problems16,893
videos, ai
Advancing Accessibility Standards (acc)16,892
accessibility, standards
Add JSR Packages With pnpm and Yarn (lca/den)16,891
jsr, pnpm, yarn
I Broke the Disabled Button (hom)16,890
buttons, accessibility, retrospectives
Catching Up on Accessibility With AI Chat16,889
accessibility, ai
Polishing Your Typography With Line Height Units (jen/web)16,888
typography, css, units
“input type="color"” (kev)16,887
html, forms, colors
HTML Oddities: Does the Order of Attribute Values Matter? (ede)16,886
html, attributes, css, selectors
A Decade of SolidJS (rya/thi)16,885
solidjs, retrospectives, libraries
Mastering HTML: The Art of Minimal and Valid Code in Professional Web Development (AI Edition) (j9t)16,884
guest-posts, html, minimalism, conformance, semantics, interoperability, accessibility, standards
Salesforce and Shopify CEOs Just Declared War on Human-Only Teams (pet/uxd)16,883
shopify, ai, career, economics
The Problem(s) With Image Accessibility16,882
accessibility, images, alt-text, html
Polypane 24: Recording, 3D View, Custom Tab Colors, and HTML Editing (pol)16,881
release-notes, polypane, browsers
Making a Small JavaScript Blog Static Site Generator Even Smaller Using the General “async-tree” Library (jan)16,880
static-site-generation, javascript, tooling
JavaScript Framework Reality Check: What’s Actually Working (the)16,879
javascript, frameworks, qwik, solidjs, sveltekit, fresh
How to Write Unit Tests in Node.js Using Mocha (app)16,878
how-tos, testing, nodejs, tooling
How Documentation Analytics Can Help You Prioritize Design System Improvements16,877
design-systems, documentation, analytics
Break Google’s Search Monopoly Without Breaking the Web (owa)16,876
google, search, chrome, browsers, web-platform, open-web
Binary Formats Are Better Than JSON in Browsers16,875
json, libraries, performance, comparisons, metrics
10 Tips for Junior Developers to Effectively Use LLMs and AI (owe/pro)16,874
ai, tips-and-tricks
Why I’m Not Ready to Abandon JavaScript for “Faster” Languages16,873
javascript, rust, go, refactoring, performance
What Is llms.txt, and Should You Care About It? (ahr)16,872
ai, crawling, robotstxt
Next Steps for Privacy Sandbox and Tracking Protections in Chrome16,871
chrome, google, browsers, privacy, cookies
Newfangled Browser Alternatives (chr/fro)16,870
browsers, arc, the-browser-company, vivaldi, brave, comparisons, link-lists
Impossible Components (dan)16,869
components, react, state-management
Google Won’t Ditch Third-Party Cookies in Chrome After All (rwh/ars)16,868
chrome, google, browsers, cookies
Eleventy: A GitHub Workflow to Check if an Automated Dependency Update Would Break Your Site (j9t)16,867
eleventy, dependencies, nodejs, automation, github-actions
Creating CSS Theme Variables From a JS File (mic)16,866
css, theming, custom-properties, javascript, conversion
Contextual Logging With “console.context()” (pat/mic)16,865
console, javascript, dev-tools, browsers
The Open-Source Stack for AI Agents16,864
ai, tech-stacks, foss, tooling, link-lists
The Oppressive Foundation of Minimalist Design (uxd)16,863
design, minimalism
Everything’s a Vibe: Is It Progress or Just an Illusion? (uxd)16,862
vibe-coding, ai, user-experience
How Accessibility Audits Are Shaping the Future of User-Centered Design (uxm)16,861
accessibility, auditing, usability, seo, compliance, branding, user-conversion
When to Use “map()” vs. “forEach()”16,860
javascript, arrays, comparisons
Unlocking 7 Hidden Benefits Through Web Site Redesign (uxm)16,859
redesigning, user-experience, user-conversion, economics, maintainability, accessibility, usability, branding
The European Accessibility Act: What Businesses and App Developers Need to Know16,858
accessibility, eaa, legal
How to Validate Ideas Faster With No-Code Prototypes (uxm)16,857
how-tos, design, low-and-no-code, prototyping
How to Meet SC 2.5.3 “Label in Name” (tpg)16,856
how-tos, accessibility, wcag, labels, forms
Color Contrast and Readability: The Cornerstones of Accessible Design16,855
accessibility, design, colors, contrast, readability, wcag
Buttons vs. Links: What’s the Difference and Why Does It Matter?16,854
videos, buttons, links, usability, comparisons
A11y 101: 1.4.10 Reflow (nat)16,853
introductions, accessibility, wcag, reflow
A Web Component UI Library for People Who Love HTML (cfe)16,852
libraries, web-components
11 Practical Ways I Use AI Agents Without Losing My Authenticity (bla/ope)16,851
ai, creativity, processes, examples
Why Use Personal OKRs (cwo)16,850
okr, career, processes
Web Typography: A Refresher and History (zel)16,849
typography, history, link-lists
LangChain + MCP + RAG + Ollama = the Key to Powerful Agentic AI16,848
ai, langchain, mcp, tooling
Why Every Web Designer Secretly Hates Their Past Work (web)16,847
career, design
What Does It Really Mean for a Site to Be Keyboard Navigable (sma)16,846
accessibility, keyboard-navigation, focus, skip-links
Vibe Coding Is Not an Excuse for Low-Quality Work (add)16,845
vibe-coding, ai, quality
State of Devs 2025 (sac/dev)16,844
surveys, career
“Pretty” Is in the Eye of the Beholder (geo/css)16,843
typography, css, browsers, support, chrome, google, safari, apple
Keeping It on the “<dl>”—Another HTML Gem You Never Use (cod)16,842
html, lists, semantics
How I Run Eleventy (It’s Complicated?) (j9t)16,841
eleventy
Fixing Vercel’s Landing Page16,840
design, effects, landing-pages, vercel
State of AI 2025 [Results] (sac/dev)16,839
surveys, metrics, ai, code-editors, tooling
WCAG in Plain English (aaa)16,838
accessibility, wcag, guides
So, You Want to Give Up CSS Pre- and Post-Processors… (zel/css)16,837
css, preprocessors, postprocessors, tailwind, lightning-css
“:only-child” (kev)16,836
css, selectors
How to Write Error Messages That Actually Help Users Rather Than Frustrate Them (amy/pic)16,835
how-tos, writing, microcontent, errors, usability, user-experience
Fostering an Accessibility Culture (dad/sma)16,834
accessibility, training, culture, processes
Creating an Accessible Accordion With HTML Description Lists (kar)16,833
accessibility, html, lists, accordions
Contribute to the 2025 Web Almanac16,832
web-almanac, web-platform, community
AI Overviews Reduce Clicks by 34.5% (ahr)16,831
ai, search, google, seo, metrics
State of AI [Results]16,830
surveys, metrics, ai, tooling, processes, product-management, outlooks
The Best CSS One-Liner to Improve Performance in 202516,829
css, performance
What Happens When a Program Calls Sleeps?16,828
videos, programming
Using CSS “backdrop-filter” for UI Effects (pre/css)16,827
css, filters, effects
The Best Node.js Observability Tools in 2025: N|Solid vs. New Relic, Datadog, and More (nod)16,826
nodejs, observability, tooling, opentelemetry, comparisons
Serverless Is a Scam16,825
serverless, containerization, comparisons
Out of Order (don)16,824
css, positioning, design
Optimizing Node.js Performance: V8 Memory Management and GC Tuning (mco/pla)16,823
nodejs, performance, optimization, v8, javascript-engines, javascript, memory, garbage-collection
“oklch()” (ada)16,822
css, colors, functions, oklch
Navigating the 2026 ADA Guidelines (ter+)16,821
videos, guidelines, accessibility, ada, legal
Memoizing the Cache in Laravel (ami)16,820
laravel, caching, memoization
Local SEO vs. National SEO vs. Global SEO: A Strategy Guide (sem)16,819
guides, seo, strategies, comparisons, tooling
Image Alt Text Guide: How to Write and Add Image Alt Text Reference16,818
guides, accessibility, user-experience, seo, alt-text, images, shopify
How to Begin a WordPress Blog: A Step-by-Step Guide for Beginners16,817
guides, wordpress, blogging
Google Is Ending Support for Country-Code Google Domains Like google.fr or google.co.uk16,816
google
Can LLMs Earn $1M From Real Freelance Coding Work?16,815
ai, programming, engineering-management, quality, economics
Aaron D. Campbell [on] Why Open Standards and WordPress Matter (aar+)16,814
podcasts, interviews, standards, wordpress
5 Ways to Reduce HTML File Size on Your Website, Step 0 (j9t)16,813
html, performance, optimization
Testing Methods—Pre-Recorded Captions (dec)16,812
accessibility, testing, captions, multimedia, link-lists
Principles for Coding Securely With LLMs (sea)16,811
ai, security, principles
Why You Need to Know Your Site’s Performance Plateau (and How to Find It) (tam/spe)16,810
performance, metrics, concepts
Threat Actors Misuse Node.js to Deliver Malware and Other Malicious Payloads (mic)16,809
nodejs, security, malware
Tech Hiring: Is This an Inflection Point? (ger)16,808
hiring, interviewing, career, ai
SvelteKit Is the Best Way to Build Single Page Apps—and It Just Got Even Better16,807
videos, sveltekit, single-page-apps
[Records and Tuples] Proposal Is Withdrawn (ash)16,806
ecmascript
Inclusive Dark Mode: Designing Accessible Dark Themes for All Users (sma)16,805
accessibility, design, dark-mode
Firefox 137.0.2 Is a Big Bug Fix and Security Update Release16,804
firefox, mozilla, browsers
Advanced React in the Wild (add)16,803
react, nextjs, performance, case-studies
TLS Certificate Lifetimes Will Officially Reduce to 47 Days16,802
tls, certificates, security
The Post-Developer Era (jos)16,801
ai, code-editors, tooling, outlooks, career
Next Level CSS Styling for Cursors (val/css)16,800
css, javascript, cursors
Hako16,799
javascript-engines
Getting Specific About CSS Specificity (kat)16,798
css, selectors, cascade
Float16Array in JavaScript (tre)16,797
javascript, arrays
Accessible Forms: Tips and Techniques16,796
accessibility, forms, labels, keyboard-navigation, errors, testing, tips-and-tricks, techniques
A11y 101: 1.4.5 Images of Text (nat)16,795
introductions, accessibility, wcag, images, alt-text
14 Web Performance Tips for 2025 (sia)16,794
performance, web-vitals, culture, tips-and-tricks
10 Figma Hacks I Wish I’d Known Earlier (and You Should Know Now) (uxd)16,793
figma
Deploying TypeScript: Recent Advances and Possible Future Directions (rau)16,792
typescript, deploying
LLMs Can’t Stop Making Up Software Dependencies and Sabotaging Everything (tho/the)16,791
ai, dependencies, security
Is “Ethical AI” an Oxymoron? (hdv)16,790
ai, ethics, licensing, sustainability
How to Hire (hvp)16,789
how-tos, hiring, engineering-management, career
A Flowing WebGL Gradient, Deconstructed16,788
webgl, gradients, javascript, math
7 React Patterns That Made Me a Better Front-End Developer16,787
react, hooks, props, software-design-patterns
Tooltip Should Not Start an Accessible Name16,786
accessibility, tooltips
The Case for Web Components With Lit16,785
web-components, lit, typescript, micro-frontends
The Case for Angular16,784
angular, typescript
Never Lose a “z-index” Battle Again (mat)16,783
css, positioning
How to Use GenAI With OKRs (Without Letting It Think for You) (cwo)16,782
how-tos, ai, okr, prioritization, processes
Default Styles for “h1” Elements Are Changing (zco/mdn)16,781
html, css, headings, browsers
Stop Writing If–Else Trees: Use the State Pattern Instead16,780
programming, software-design-patterns, conditionals
7 UI/UX Principles Every Dev Should Know16,779
design, user-experience, principles
Why Do AI Company Logos Look Like Buttholes?16,778
design, logos, comparisons
Using “currentColor” in 2025 (chr/fro)16,777
css, colors
Tailwind’s “@ apply” Feature Is Better Than It Sounds (zel/css)16,776
tailwind, sass, mixins, comparisons
Significant Performance Improvements With Edge 134 (mic)16,775
edge, microsoft, browsers
Preventing N+1 Issues Globally in Laravel Using Auto Eager Loading (ami)16,774
laravel, php
No Code Is Dead. Long Live Vibe Coding. (auc)16,773
low-and-no-code, vibe-coding
Mastering Default Values in JavaScript With the Nullish Coalescing (“??”) Operator16,772
javascript, operators
Exploring TypeScript: TS 5.8 Edition (rau)16,771
books, typescript, javascript
Developer Ecosystem 2025 (jet)16,770
surveys, code-editors, tooling, ai
Automated WCAG Testing Is Grrreat! (aar)16,769
accessibility, wcag, testing, automation
5 Ways to Reduce HTML File Size on Your Website (deb)16,768
html, minification, compression, performance, optimization
Zero-Config Debugging With Deno and OpenTelemetry (lca/den)16,767
debugging, deno, opentelemetry, logging, tracing, metrics, observability
What It Means to Shift Left on Accessibility and How to Do It Right (lul)16,766
accessibility, dei, design, culture, processes, collaboration, project-management, content-strategy, quality, training
VS Code Agent Mode Just Changed Everything (bur/vsc)16,765
videos, vs-code, microsoft, code-editors, ai
Two Decades of Git: A Conversation With Creator Linus Torvalds (tor/git)16,764
videos, interviews, git, history
To “light-dark()” or Not to “light-dark()” (web)16,763
videos, css, functions, dark-mode
Thin Fonts Are a Usability Nightmare—and Finally, Designers Are Waking Up (web)16,762
fonts, typography, usability, accessibility, design
The Untold Story of Git16,761
videos, git, svn, cvs, version-control, history
The “min()” and “max()” Functions (kev)16,760
css, functions
Stretching Google’s Prefetching (paw)16,759
signed-exchanges, experiments, chrome, google, browsers
Secure a Vue App With OpenID Connect and the BFF Pattern (due)16,758
vuejs, security, authentication, backend-for-frontend
Project IDX Is Now Part of Firebase Studio (fir)16,757
firebase, project-idx
Milana Cap on the Interactivity and HTML APIs, and Their Enormous Potential (mil+)16,756
podcasts, interviews, wordpress, apis, html, dom
Just Say the Word—Try Our New AI Website Builder for Free (nee/wor)16,755
wordpress, ai, tooling
How to Build a Multi-Tenant SaaS Application With Next.js16,754
how-tos, nextjs, authorization, state-management, zustand
History of the Web: Chris Lilley (svg+/iga)16,753
videos, interviews, web-platform, history
Event Versioning Strategies for Event-Driven Architectures (the)16,752
architecture, events
Deploy Angular and Next.js Apps With App Hosting, Now GA (fir)16,751
google, firebase, hosting, deploying, angular, nextjs, web-apps
Custom Progress Element Using the “attr()” Function (css/fro)16,750
css, functions, progress-indicators, gradients
CSS Naked Day 2025 (mey)16,749
awareness-days, css
CSS Carousels (geo/css)16,748
css, carousels
Comparison Tables: 5 Scenarios When Not to Use Them16,747
videos, information-design, tables, usability
Automated Accessibility Testing: Strengths and Limits16,746
accessibility, testing, automation, comparisons
ARIA in HTML (sco+/w3c)16,745
standards, accessibility, aria, html
10 Hard Truths Every Dev Must Learn in 202516,744
career, tips-and-tricks, programming
Strings Are a Leaky Abstraction for HTML (joe)16,743
html, strings
Engineering Managers Hold the Key to Effective Team Collaboration16,742
engineering-management, collaboration, processes
Your Frontend, Backend, and Database—Now in One Cloudflare Worker (clo)16,741
cloudflare, tooling
Why I Value Firebreak Sprints for Managing Technical Debt (tre)16,740
technical-debt, maintenance, processes
Using ARIA Landmarks for Better Navigation16,739
navigation, keyboard-navigation, aria, accessibility
Use “shape()” for Responsive Clipping (nom/dev)16,738
css, functions, shapes, clipping, responsive-design
Top 5 CSS Navigation Menu Mistakes (zor/css)16,737
navigation, css, mistakes, usability
React Server Confusion (ano)16,736
react, components, vite, fastify
React Reconciliation: The Hidden Engine Behind Your Components16,735
react, dom, components
How to Select a UX Metric16,734
how-tos, user-experience, metrics, best-practices
CSS Naked Day (car)16,733
awareness-days, css
CSS Naked Day 2025 (fyr)16,732
css, awareness-days
Better Typography With “text-wrap: pretty” (jen/web)16,731
typography, css, webkit, browser-engines, browsers, safari, apple
Background Image Opacity in CSS (jim)16,730
css, backgrounds, images
10 Things You Should Know as a Next.js Developer (That No One Tells You) (pri)16,729
nextjs
Creating a Software Engineering Culture16,728
culture, leadership, engineering-management
UX Localization: Adapting Experiences to Users Worldwide (uxm)16,727
user-experience, localization, testing
Designing AI for Cultural Diversity (uxm)16,726
design, ai, dei, culture
Design for the AI Age16,725
design, ai
A11y 101: 1.4.4 Resize Text (nat)16,724
introductions, accessibility, wcag, resizing
The Precise Language of Good Management16,723
engineering-management, communication
Some Features That Every JavaScript Developer Should Know in 202516,722
javascript, arrays, promises, prototypes, variables
Dropping Support for Twitter/X (fro)16,721
frontend-dogma, twitter+x, social-media
A Note About WCAG Conformance Levels (dec)16,720
accessibility, wcag, compliance
WebAIM Million Results Show That Shopping Sites Have Worst Accessibility (cer)16,719
webaim, metrics, accessibility, ecommerce
Tweaking Text Level Styles, Reprised (aar)16,718
html, css, accessibility, support, browsers, screen-readers
Making Node.js Downloads Reliable (nod)16,717
nodejs, refactoring, case-studies
Hiding Elements That Require JavaScript Without JavaScript (0xd)16,716
javascript, css, html
Cover Flow With Modern CSS: Scroll-Driven Animations in Action (add)16,715
css, animations, transforms, scrolling, effects, history
The Future of Redwood Launches Today (red)16,714
redwoodjs
The Blissful Zen of a Good Side Project (col)16,713
learning, creativity
The Best Programmers I Know (mre)16,712
career, programming, culture
Teaching Code in the AI Era: Why Fundamentals Still Matter (ali)16,711
training, ai, programming, vibe-coding, security, scalability, performance, quality, testing, documentation
Open-Source Is Just That (val)16,710
foss, community, culture
Lessons Learned From My First Dive Into WebAssembly16,709
lessons, webassembly
Introducing Bulk Suppressions (esl)16,708
eslint
How to Track and Analyze Your AI Traffic (lou/ahr)16,707
how-tos, traffic, ai, analytics, google
Software Architecture for Developers (dic)16,706
architecture, software-design
The Importance of Alt Text for Images16,705
alt-text, images, accessibility, dei, compliance, legal, seo, user-experience
Overengineered Anchor Links16,704
links, effects, techniques
First Look at the Modern “attr()” (sha)16,703
css, functions, attributes, feature-detection
CSS-Only Glitch Effect16,702
css, html, effects
CSS Bursts With Conic Gradients (chr/fro)16,701
css, gradients, examples, effects
Mastering Cross-Framework State Management in Micro-Frontends (des)16,700
guest-posts, architecture, frameworks, state-management, micro-frontends, scalability, strategies
How I Found My Own Path as an Introverted Engineering Manager16,699
engineering-management, career
Four Rules for How Design Influences Technology (uxd)16,698
design, product-management, examples
Your AI UX Intern16,697
videos, ai, user-experience, concepts
TypeSpec 1.0-RC: Design Faster Today, Scale Easier Tomorrow (mic)16,696
apis, tooling
SMIL On? (geo/css)16,695
smil, browsers, support
Robust Accessibility and Artificial Intelligence (AI) (ger)16,694
accessibility, ai
Making “:visited” More Private (dev)16,693
css, selectors, privacy, chrome, google, browsers
Digital Accessibility Is a Civil Right (kar)16,692
accessibility, legal, ada, wcag, economics
Debugging JavaScript Memory Leaks (jar/bun)16,691
javascript, memory, debugging, dev-tools, chrome, google, browsers, bun
Building a Drupal to Storyblok Migration Tool: An Engineering Perspective (edo/sma)16,690
migrating, tooling, drupal
Automated vs. AI vs. Manual Testing—Text Alternatives (dec)16,689
accessibility, testing, automation, ai, comparisons
AI and Accessibility: Opportunities and Challenges for Content Creators16,688
accessibility, ai, content
A Guide to Alt Text Across Popular Tools (pop)16,687
guides, alt-text, accessibility, images, tooling
React 19’s New Hooks: With Practical Examples (let)16,686
react, hooks, javascript, examples
Stop Using Jenkins in 2025 (oso)16,685
jenkins, github-actions, ci-cd, security