Tech is political: The people under attack in Palestine 🇵🇸, Iran 🇮🇷, and Lebanon 🇱🇧 are people like us. They’re our brothers and sisters, too. Read up on their history, scrutinize what you’re told, and demand that they be respected. Hide

Frontend Dogma

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

→ Stay up-to-date on all topics by various RSS feeds (main feed with exclusive news: only $1/month), on Mastodon, and on Bluesky

Entry (Sources) and TopicsDate#
Dark Visitors13437
websites, ai, scraping, robotstxt
Confusing Git Terminology (b0r)13436
git, terminology
Blinded by the Light DOM (mey)13435
web-components, dom, shadow-dom, javascript
A Comprehensive Guide to Data Engineering13434
guides, data-engineering
0 KB Social Media Embeds (chr)13433
embed-code, quality
Better Dynamic Themes in Tailwind With OKLCH Color Magic (tra/evi)13432
theming, tailwind, oklch, colors
Remix ❤️ Vite (mar/rem)13431
remix, vite, support
A Complete Guide to LangChain in JavaScript13430
guides, langchain, javascript, frameworks
Mobile-First Indexing Has Landed—Thanks for All Your Support (joh)13429
mobile-first, mobile, seo, google
Why Signals Are Better Than React Hooks13428
videos, javascript, signals, react, hooks, comparisons
Answering Common Questions About Interpreting Page Speed Reports (geo/sma)13427
performance, optimization
Accessibility by Degrees (tem)13426
accessibility, processes
2023: 0 of the Global Top 100 Websites Use Valid HTML (j9t)13425
html, css, conformance, metrics, quality
20 Effective Tips to Speed Up Your Drupal Website13424
drupal, tips-and-tricks, performance, optimization
Effective Strategies for Optimizing Performance13423
strategies, performance, optimization
Interop 2023 October Update (rac)13422
interoperability, web-platform, browsers, support
Simplifying Web Development With Hugging Face (gra)13421
ai, hugging-face
What Exactly Is “Modern” CSS? (geo)13420
css
Don’t Disable Buttons (cfe)13419
buttons, accessibility, javascript
A Guide to Using MSSQL With Node.js13418
guides, nodejs, databases, sql
Unit-Testing: The Unsung Hero of Code Quality13417
testing, quality
The New CSS Math: “rem()” and “mod()” (dan)13416
css, functions, math
Is Express Still “De Facto” for Building Node Backends?13415
discussions, express
Guide to React Suspense and “use” Hook for Busy Bees (ole)13414
guides, react, hooks, promises, data-fetching
An Introduction to Working With SVGs in React13413
introductions, images, svg, react
Why Is node_modules Heavier Than the Universe?13412
nodejs
View Transitions and Stacking Context: Why Does My CSS View Transition Ignore “z-index”? (nic)13411
css, positioning, animations, view-transitions
Let’s Reinvent the Wheel (vas)13410
html, css, user-experience, accessibility, web-platform
Keep Pace With Modern JavaScript13409
javascript, link-lists
How Often Should You Redesign Your Website?13408
redesigning, refactoring, seo
Liquid vs. Headless: A Look at Real User Web Performance (sia)13407
shopify, headless, performance, metrics, comparisons
AI as a UX Assistant (nng)13406
user-experience, ai
You’re Gonna Need a Bigger Browser (rob)13405
browsers, web-platform, user-experience, outlooks
State of React 2023 (sac/dev)13404
surveys, react
Some Sensible Defaults for Your “img” Elements (css)13403
images, css
So You’ve Been Publicly Accessibility-Shamed (dav)13402
accessibility, quality, communication
How to Find a Developer Job in 2023 (With Little or No Experience)13401
how-tos, career
Next.js 14 (lee)13400
release-notes, nextjs
Introduction to Real-Time Communication in PHP Laravel13399
introductions, laravel
Secret Scanning Scans Public npm Packages13398
npm, dependencies, security
Introduction to htmx13397
introductions, htmx
20 Simple Ways to Style the HTML “details” Element (ral)13396
html, disclosure-widgets, css
Astro 3.4: Page Partials (eri)13395
release-notes, astro
Why I Won’t Use Next.js (ken)13394
frameworks, nextjs
HTML vs. DOM? Let’s Debug Them (jec)13393
videos, html, dom, debugging, comparisons
Performance Optimization With Worker Threads Node.js13392
performance, optimization, nodejs, worker-threads
Arrays—Implementation in JavaScript13391
javascript, arrays
Deprecation of Formatting Rules (nza/esl)13390
eslint, linting, tooling, deprecation, formatting, release-notes
What the !#@% Is a Passkey? (eff)13389
passkeys, security
Testing and Code Quality in Node.js (hon)13388
testing, quality, nodejs
WebKit Features in Safari 17.1 (jen/web)13387
release-notes, browsers, safari, webkit
CSS “prefers-reduced-transparency” (arg)13386
css, media-queries, support
Understanding SC 2.4.11 “Focus Not Obscured (Minimum)”13385
accessibility, wcag, focus
Sheet, Dialog, or Snackbar—What Should a Designer Go For?13384
design, design-patterns, modals
Data Engineering Essentials #1: Your First Pipeline13383
fundamentals, data-engineering
What Does the “A” Mean in “DEAI”? (mni)13382
dei, accessibility
Web Components Will Outlive Your JavaScript Framework (jak)13381
web-components, javascript, frameworks
Vue.js (Vue v3) for Beginners (thi)13380
videos, courses, vuejs
My Problem With Using TypeScript in 202313379
videos, typescript
A Comprehensive Guide to Django Caching13378
guides, django, caching
Change Project, Change Node Version, Let .nvmrc Help You13377
nodejs, nvm
It’s 2023, Here Is Why Your Web Design Sucks (hbu)13376
web, design, career
Goodbye, Node.js Buffer (sin)13375
nodejs
Give Your Site Some Focus! Tips for Designing Useful and Usable Focus Indicators (deq)13374
accessibility, forms, focus, user-experience, tips-and-tricks
Complex MPA View Transitions (tyl)13373
multi-page-apps, view-transitions, css
Release: Yarn 4.013372
yarn, release-notes
Select Element: Now With Horizontal Rules (una)13371
html, forms, semantics, browsers, chrome, safari, support
CSS “text-wrap: pretty” (arg)13370
css, typography, browsers, chrome, support
JavaScript Decorators: An In-Depth Guide13369
guides, javascript
Solved by CSS Scroll-Driven Animations: Style an Element Based on the Active Scroll Direction and Scroll Speed (bra)13368
css, scrolling, animations
What Removing Object Properties Tells Us About JavaScript (mon/sma)13367
javascript, objects
Unlocking JavaScript Design Patterns: Mastering Singleton for Ultimate Code Efficiency13366
javascript, software-design-patterns, efficiency
Tailwind vs. Semantic CSS13365
tailwind, css, html, semantics, comparisons, performance
Svelte by Example (seb)13364
websites, svelte, examples
Stop Waiting (jha)13363
quality, testing
Splitting Within Selects (aar)13362
accessibility, html, forms, browsers, support
Navigating the Ethical Complexities of Personalized User Experiences: Balancing Innovation With Privacy and Consent (uxm)13361
user-experience, personalization, ethics, privacy, consent-management
JavaScript Is Enabled by Default in Web Browsers (jim)13360
javascript, web-platform, permissions
JavaScript Anti-Pattern: Self-Documenting Code (cfe)13359
javascript, anti-patterns, documentation
In Defense of Learning on Company Time (isa)13358
learning, career
Igalia Chats: Web History Part VI (stu+/iga)13357
podcasts, web, history
HTML Meta Tags13356
html, metadata
Changing Colors in an SVG Element Using CSS and JavaScript13355
svg, colors, css, javascript
Accessibility Improvements for User-Agents13354
accessibility, browsers, screen-readers, assistive-tech
Strikethrough Accessibility (den)13353
accessibility, html, screen-readers, support
Global Encryption Day: Encryption’s Critical Role in Safeguarding Human Rights (tor)13352
awareness-days, encryption, privacy
Is CAPTCHA Accessible?13351
accessibility, captcha
What Should Be the Contrast Level of Inactive Buttons?13350
accessibility, buttons, contrast, colors
Using ChatGPT, GitHub Copilot, and Phind to Generate Tailwind Config for Width Classes (luc)13349
ai, chatgpt, github-copilot, tailwind, configuration
When to Use CSS “text-wrap: balance;” vs. “text-wrap: pretty;” (sea)13348
css, typography, comparisons
Using ChatGPT for Smart Truncation in Responsive Web Design13347
content, responsive-design, ai, chatgpt, html
How Do You Even Web Dev Without Node? A Quick Introduction to Test-Driven Web Development Using Just the Browser (bal)13346
introductions, testing
Finding the Primary Branch of a Git Repository (ami)13345
git
Embedding Accessibility Into Code Reviews (web)13344
videos, accessibility, code-reviews, processes
Web Accessibility Strategies for Non-Accessible Projects (bol)13343
videos, accessibility, strategies, processes
Prodding Firefox to Update “:has()” Selection (mey)13342
css, selectors, firefox, support
The Need for Recognition in Open Source (bek/ope)13341
foss, culture, communication, community
Why Unique ID Attributes Matter (deq)13340
accessibility, html, attributes, conformance
I Asked People to Make This Simple Layout and Was Surprised by the Results (kev)13339
videos, css, layout, comparisons
How to Map a Number Between Two Ranges (hen)13338
how-tos, javascript, math
How to Collaborate on Pull Requests for Beginners (ope)13337
how-tos, code-reviews, collaboration
How to Build Your First Web Component (joe/fre)13336
how-tos, web-components
Don’t Do It on Frontend or… Frontend Good Practices for Devs13335
best-practices, quality, maintainability, documentation
Release Notes for Safari Technology Preview 181 (jon/web)13334
release-notes, browsers, safari
Solid.js Creator Outlines Options to Reduce JavaScript Code13333
javascript, performance
The Inverse Value of UX and Art13332
user-experience, art
Does the HTML “hr” (Horizontal Rule) Benefit Screen Reader Users?13331
html, accessibility, screen-readers
Do We Need State Management in Angular?13330
angular, state-management
The New “light-dark()” Function to Switch Theme Color in CSS (ami)13329
css, functions, dark-mode
Storybook 7.5 (sto)13328
storybook, release-notes
On the Uniting Power of a Commitment to HTML Conformance (j9t)13327
html, conformance, quality, community, web
How to Animate Along a Path in CSS (pre/sma)13326
how-tos, css, animations
Git: Rebase an Old Branch Incrementally (ada)13325
git, command-line
The True Cost of Not Prioritizing Accessibility: Avoid Risk and Maximize Product ROI (slo)13324
accessibility, economics, product-management, prioritization
React Design Patterns13323
react, software-design-patterns
The Nuances of Base64 Encoding Strings in JavaScript13322
javascript, encoding, base64, unicode, strings
Stacked Diffs (and Why You Should Know About Them) (ger)13321
version-control, code-reviews, google, facebook+meta, concepts
Synchronizing Figma Variables With Design Tokens13320
figma, variables, design-tokens, automation
Transition Animations: A Practical Guide13319
guides, transitions, animations, interaction-design
The Three Cs: Concatenate, Compress, Cache (css)13318
performance, compression, caching
Start Styling Your “console.log()” Messages in DevTools (zor/css)13317
videos, javascript, console, browsers, dev-tools
Node.js 21 Available Now! (ope)13316
nodejs, release-notes
How to Use SEO to Build Long-Term Brand Recognition and Visibility (moz)13315
how-tos, seo, branding
Design System Documentation Sucks—How We Can Do Better13314
design-systems, documentation
Color Contrast Accessibility Tools With Examples (pop)13313
accessibility, tooling, link-lists, colors, contrast, examples
Burn Your Toast (eri)13312
design-patterns, notifications, accessibility, usability
A Couple of New CSS Functions I’d Never Heard Of (chr)13311
css, functions
Ensuring Negative Numbers Are Available for Everyone (mfa/deq)13310
accessibility, testing, math
Scroll-Driven State Transfer (kiz)13309
css, scrolling
Link Colors and the Rule of Tincture13308
links, colors
“JavaScript Is Weird” as a Compressor13307
javascript, compression
Common Vue.js Development Mistakes and How to Avoid Them13306
vuejs, mistakes
2.4.11: Adversarial Conformance (aar)13305
accessibility, wcag, compliance
CSS Findings From Photoshop Web Version (sha)13304
html, css, photoshop, case-studies
How to Style Element Descendants With Tailwind CSS (ste)13303
how-tos, tailwind
Bubble Sort… in Pure CSS? (No JS)13302
css, algorithms, sorting
Button Labels: Is “OK” Ok?13301
forms, buttons, labels, writing, usability
The Negative Impact of Mobile-First Web Design on Desktop (nng)13300
design, mobile-first, mobile, desktop, usability, information-design
Forget Twitter: WordPress.com Blogs Can Now Connect to Mastodon (pcm)13299
social-media, twitter+x, wordpress, mastodon
How We Optimized Package Imports in Next.js13298
nextjs, dependencies, optimization, case-studies
What’s New in CSS? (bra)13297
css
Organizing Multiple Git Identities (gar)13296
git
44 React Frontend Interview Questions13295
interviewing, react
Back/Forward Cache (phi+)13294
bfcache, performance, browsers, chrome
Astro 3.3: Picture Component (eri+)13293
astro, release-notes
Why Companies Kill Great Design13292
design
Quick Tip: Creating Polymorphic Components in TypeScript13291
tips-and-tricks, typescript, components
Honor User’s Transparency Setting in CSS (ami)13290
css, transparency+opacity, accessibility, user-experience
Using CSS Custom Properties Like This Is a Waste (kev)13289
videos, css, custom-properties
Unpopular Opinion: It’s Harder Than Ever to Be a Good Software Engineer13288
career, quality
Scrollbars Are Becoming a Problem (art)13287
scrolling, usability, accessibility
New Release: Tor Browser 13.0 (tor)13286
release-notes, tor-browser, browsers
Digital Accessibility Blogs and Newsletters (ons/tpg)13285
accessibility, link-lists
Let’s Prototype a JavaScript JIT Compiler13284
videos, javascript, compiling, prototyping
You Can’t Get Faster Than No Build13283
building, processes
Why Naming Is #1 Skill for Writing Clean Code13282
naming, conventions, best-practices
Designing for All: The Basic Principles of Web Accessibility13281
accessibility, fundamentals, principles, aria, tooling
WooCommerce vs. Shopify: Which Is the Better Choice for You?13280
shopify, comparisons, ecommerce
Preventing and Debugging Memory Leaks in Node.js (bet)13279
debugging, memory, nodejs
CSS Relative Color Syntax (arg)13278
css, colors, functions
Styling External Links With Attribute Selectors (mic)13277
links, css, attributes, selectors
We Need Web Progress, Not Pessimism (kev)13276
web-platform, principles
Skip Links on ikea.com (mat)13275
accessibility, skip-links, case-studies
Introduction to Web Sustainability (mic/mdn)13274
introductions, sustainability
5 Best Practices for Preventing Chaos in Tailwind CSS (tra/evi)13273
best-practices, tailwind
The Global “innerWidth” and “innerHeight” Properties Return the Width and Height of the Layout Viewport (sim)13272
viewport, javascript, interoperability, webkit
AI Could Soon Need as Much Electricity as an Entire Country13271
ai, sustainability
Images on the Web13270
images, concepts, compression, jpeg, png, webp, avif, nextjs
Greenwashing and the COP28 Website (mic)13269
sustainability, case-studies
Hashnode’s Overall Architecture (has)13268
architecture, case-studies
The Selected Date Must Be Within the Last 10 Years (ger/clo)13267
html, forms, validation
Local HTTPS for Next.js 13.5 (ami)13266
security, testing, http, nextjs
Why the Internet Isn’t Fun Anymore13265
web, social-media
CSS-Only Scroll-Driven Animation and Other Impossible Things (bra+)13264
videos, css, animations
Extending the Properties of an HTML Element in TypeScript13263
html, components, typescript
Adding Search to an Eleventy Site Without Client-Side JavaScript (mez)13262
eleventy, serverless, functionality, search
The Future of SolidJS With Ryan Carniato (rya/fro)13261
podcasts, interviews, solidjs, outlooks
The Future of CSS: Easy Light-Dark Mode Color Switching With “light-dark()” (bra)13260
css, functions, dark-mode
Obligatory WCAG 2.2 Launch Post (aar)13259
accessibility, wcag, standards
Inclusivity in the Digital Age: The Importance of Accessibility Advocacy (uxm)13258
accessibility, dei, communication, advocacy
How to Promote Your Website: 12 Free Methods That Work (sem)13257
how-tos, marketing, blogging, content, social-media, links, keywords, seo, sem
The Hidden Performance Cost of Node.js and GraphQL13256
performance, nodejs, graphql
Speeding Up the JavaScript Ecosystem—the Barrel File Debacle (mar)13255
javascript, performance, architecture
CSS 3D Text Effects13254
css, effects, 3d
Node.js vs. Django: Which Is Better for Web Development in 2023?13253
nodejs, django, comparisons
Welcome WCAG 2.2 and Goodbye Success Criterion 4.1.1 “Parsing” (cer)13252
accessibility, wcag, conformance
Naming Variables in CSS (doc)13251
css, custom-properties, naming
Don’t Use Fixed CSS “height” or “width” on Buttons, Links, or Any Other Text Containers (ash)13250
css, accessibility, usability, buttons, links
Which Is the Best Image Format for Your Website?13249
images, comparisons, jpeg, png, gif, webp, avif
Quick Tip: Decorators in TypeScript13248
tips-and-tricks, typescript
Table of Contents: The Ultimate Design Guide (nng)13247
guides, navigation, design, usability
Writing Accessible Form Messages (ons)13246
accessibility, writing, forms
WCAG 2.2 and Validation13245
accessibility, wcag, conformance, quality
The Nonvisual Website (ang)13244
websites, accessibility
How Did You Switch From JavaScript to TypeScript?13243
discussions, javascript, typescript, migrating
Demystifying WCAG 2.2 (vig)13242
accessibility, wcag, standards
Web Content Accessibility Guidelines (WCAG) 2.2 (w3c)13241
accessibility, guidelines, wcag, standards
GitHub Actions: “NODE_OPTIONS” Is Now Restricted From “GITHUB_ENV”13240
github-actions, automation, nodejs
Understanding XSS Attacks13239
security, xss
Hey Designers, They’re Gaslighting You13238
design, career
When to Nest CSS (spa/clo)13237
css, nesting
What’s New in WCAG 2.2 (pat/tpg)13236
accessibility, wcag, standards, release-notes
What Happened to Separation of Concerns in Frontend Development (j9t)13235
maintainability, principles, css, frameworks, history
WCAG 2.2 Is Now a W3C Recommendation (den)13234
accessibility, wcag, standards
WCAG 2.2 Is Now a Published Web Standard13233
discussions, accessibility, wcag, standards, w3c
React Micro-Frontends Using Vite13232
micro-frontends, react, vite
Intopia Launches WCAG 2.2 Map (int)13231
accessibility, wcag, standards
An Anchored Navbar Solution (mey)13230
html, css, navigation
The Power of Type Safety in TypeScript13229
typescript, type-safety
Release Notes for Safari Technology Preview 180 (jon/web)13228
release-notes, browsers, safari
Chrome Now Shows Each Active Tab’s Memory Usage (add)13227
memory, browsers, chrome
Whatever Happened to the Zend Framework (ami)13226
frameworks, php, zend, history
It’s Time to Rethink the Americans With Disabilities Act13225
accessibility, legal
Stop Publishing ESM-Only Packages, Do This Instead13224
javascript, modules, esm, commonjs
Limit the Reach of Your Selectors With the CSS “@scope” At-Rule (bra)13223
css, selectors, scope
How to Develop Terminal Productivity With Bash Aliases13222
how-tos, command-line, aliases, shells, productivity
4 Alternatives to Postman to Consider After Their Latest Update13221
apis, tooling, vs-code
Accessibility vs. Inclusive Design (tbf/nng)13220
videos, accessibility, dei, comparisons
Still No CSS Reset (jus)13219
css, resets
Let’s Create a Filter Table Component in Vue13218
videos, tables, components, vuejs
Deploy and Test AWS Step Functions With Node.js (app)13217
nodejs, aws, functions, deploying, testing
Career Growth After 35: What Awaits Programmers? (the)13216
discussions, career
An Interactive Intro to CRDTs (jak)13215
introductions, javascript, types
Your Website Does Not Need JavaScript (amy)13214
videos, javascript, support
The Problem With WordPress Is Positioning, Not Plugins (geo/sma)13213
wordpress
How to Be an Accessibility Ally (mer)13212
how-tos, accessibility, community
Get Ready for Interop 2024 (jen/web)13211
interoperability, web-platform
Being Picky About a CSS Reset for Fun and Pleasure (chr)13210
css, resets
Demystifying CSS Container Queries (mia+)13209
videos, css, container-queries
The Absolute Minimum Every Software Developer Must Know About Unicode in 2023 (Still No Excuses) (nik)13208
unicode, encoding, standards
The Most Minimal Valid HTML Document (j9t)13207
html, minimalism, conformance, templates
Return to Office Is Bullshit and Everyone Knows It (soa)13206
processes, career
Nine Things Automated Accessibility Tests Can’t Test (dav)13205
accessibility, testing, automation
How to Clear Cache and Cookies on a Customer’s Device (css)13204
how-tos, caching, cookies, testing
Have You Seen These Weird Image Tag Issues?13203
videos, css
Crawlers (ada)13202
crawling, robotstxt, ai
Comparing JavaScript Bundlers: Rollup vs. Webpack vs. Parcel (kin)13201
javascript, bundling, tooling, rollup, webpack, parcel, comparisons
Monitoring a Kubernetes Application With Prometheus, Grafana, and Loki13200
videos, monitoring, kubernetes
In-Page Links for Content Navigation (nng)13199
navigation, links, usability
TypeScript Monorepo With npm Workspaces (skw)13198
monorepos, typescript, npm, architecture
The Myth of Infinite Data Growth (ger)13197
sustainability, myths
The 3 Secrets to Font Pairing13196
typography, fonts, design
Making a Website Is for Everyone (jim)13195
dei, community, career
All the Ways to Turn an Array Into an Object in JavaScript (ami)13194
javascript, arrays, objects
Managing and Mitigating Design Debt: A Solo UX Designer’s Guide13193
guides, design-debt, user-experience
Understanding the CSS Auto-Resizing Textarea Trick (sim)13192
css, forms, resizing
Test Assertion Styles in JavaScript (isa)13191
javascript, testing
Creating a Content Recommendation Plugin in 11ty13190
eleventy, content, plugins, functionality
Node v20.8.0 (ruy/nod)13189
release-notes, nodejs
Characteristics of Code Quality13188
research, quality
20+ Tools for Node.js Development in 202313187
nodejs, tooling, link-lists
Re-Creating the Pop-Out Hover Effect With Modern CSS (css/sma)13186
css, effects, hover
Naming Things Needn’t Be Hard (pau)13185
websites, naming
How I Deployed My Website as a Docker Container13184
deploying, docker, containerization
Four Reasons to Give WCAG AAA a Second Look (web)13183
accessibility, wcag, standards
Crafting Future-Ready Experiences: The Power of Progressive Web Apps (PWAs) and Offline-First Design13182
web-apps, progressive-web-apps, offline
A Comprehensive Guide to the Dangers of Regular Expressions in JavaScript (phi)13181
guides, javascript, security, regex
5 Pillars of Responsible Generative AI: A Code of Ethics for the Future13180
ai, ethics
A Socket API That Works Across JavaScript Runtimes—Announcing a WinterCG Spec and Node.js Implementation of “connect()” (jas+)13179
javascript, runtimes, apis
The Ultimate Low-Quality Image Placeholder Technique (css)13178
performance, images, web-vitals
Exploring Enhanced Patterns in WordPress 6.3 (sma)13177
wordpress
Embracing Efficiency: Shorter Work Hours for Software Developers (and Everyone Else)13176
productivity, efficiency, culture, engineering-management
Easy Dark Mode With “color-scheme” (sar)13175
slides, dark-mode, html, css, accessibility
CSS Nesting and the Cascade (jen/web)13174
css, nesting, cascade
Frontend Monitoring: Strategies, Best Practices, Tools, and More13173
monitoring, alerting, strategies, best-practices
Stop Using JS for That: Moving Features to CSS and HTML (kil)13172
videos, javascript, css, html
Best Practices for Securing Node.js Applications in Production13171
best-practices, security, nodejs
How to Make the Case for Design Systems13170
how-tos, design-systems
The Cost of Obsessing Over Design Perfection13169
design, processes, career
What Is Transpiling?13168
javascript, ecmascript, transpiling, babel
The Saga of the Closure Compiler, and Why TypeScript Won13167
javascript, google, compiling, typescript, history
SSH Keys Stolen by Stream of Malicious PyPI and npm Packages (ble)13166
security, ssh, dependencies, npm
Honey, I Shrunk the npm Package13165
dependencies, npm, compression
CSS Terminology Demystified (zor/css)13164
videos, css, terminology
An Introduction to Web Components (ami)13163
introductions, web-components
Top 5 ARIA Implementation Errors13162
accessibility, aria, errors
npm Provenance General Availability13161
npm, provenance, security
8 More Micro Tips for Remarkably Better Typography13160
typography, tips-and-tricks, legibility, readability
Optimizing Web Fonts13159
fonts, css, performance, optimization
Taming Tailwind (aaa)13158
tailwind, optimization
Real AI Solutions for Accessibility Challenges (equ)13157
accessibility, ai
Overlays: Just Another Disability Dongle (ons/tpg)13156
accessibility, overlays
No More 404 (rem)13155
link-rot, user-experience, quality, automation
Mastering Closures in JavaScript: A Comprehensive Guide13154
guides, closures, scope, javascript
How to Check Website Traffic (and Increase It) (sem)13153
how-tos, traffic, analytics, google, tooling
Form Accessibility and Usability Beyond the Basics (pop)13152
forms, accessibility, usability
The Illusion of Developer “Productivity” Opens the Door to Snake Oil13151
productivity, metrics
Understanding Puppeteer Headless13150
puppeteer, automation, testing, headless
Why HTTP/3 Is Eating the World13149
http, protocols
What Are Accessibility Overlays? (hey)13148
videos, accessibility, overlays
The Future of Web Design: Emerging AI Technologies and Trends (uxm)13147
design, outlooks, trends, ai
Textareas With Auto-Increasing Height Using CSS (ami)13146
css, forms
HTML Popover, Videos, and “display:blackhole” (bru)13145
html, pop-overs, videos
How Mastodon Handles Images and Web Previews (rba)13144
social-media, mastodon, open-graph, metadata, images, html
Token Based Authentication With Fastify, JWT, and TypeScript13143
authentication, fastify, json-web-tokens, typescript
Misconceptions Can Kill Accessibility Momentum (yat)13142
accessibility, html, processes
Accessibility Is Easy… Except for When It Isn’t (llo/web)13141
videos, accessibility
How to Build Trust With Others by Organizing Your Figma Files13140
how-tos, figma, conventions, collaboration
Upgrading Frontend Dependencies With Confidence13139
dependencies, maintenance, testing, regressions, playwright
The Path to Awesome CSS Easing With the “linear()” Function (jhe/sma)13138
css, functions, animations
State of HTML 2023 (sac+/dev)13137
surveys, html
Responsive Type Scales With Composable CSS Utilities13136
css, responsive-design, typography
How to Escape CSS Selectors in JavaScript (ste)13135
how-tos, css, selectors, javascript, escaping
GitHub Actions Could Be So Much Better (yos)13134
github-actions, ci-cd, automation
Developers Talking About Code Quality13133
studies, research, quality, readability
TypeScript Origins: The Documentary13132
videos, typescript, history
Supercharge Your Repository With Code Owners (ope)13131
maintenance, code-reviews, processes
What Makes an Accessible Date Picker? Is It Even Possible? (rus/inc)13130
videos, accessibility, html
Open Source Trends to Look for in 202413129
foss, trends, outlooks, ai, security
The Great JavaScript Divide: CommonJS vs. ES Modules (abd)13128
javascript, modules, commonjs, esm, comparisons
What Is Strict Mode in JavaScript?13127
javascript
Unlocking a World of Accessibility: How Internationalization Is the Key (inc)13126
videos, accessibility, internationalization, localization
The WebP 0-Day13125
security, webp, google, apple
The Design System Ecosystem (bra)13124
design-systems, design-tokens
The Character Encoding Cheat Sheet for JS Developers (hon)13123
encoding, unicode, cheat-sheets, javascript
Speeding Up the JavaScript Ecosystem—Polyfills Gone Rogue (mar)13122
javascript, performance, polyfills
Save Our World With Progressive Enhancement and Accessibility (inc)13121
videos, accessibility, progressive-enhancement
Native Mobile Accessibility Testing (inc)13120
videos, accessibility, testing, mobile
Accessible Web Components? (mat/inc)13119
videos, web-components, accessibility
We are Chrome for Developers13118
browsers, chrome, chromium, community, foss, history
Release Notes for Safari Technology Preview 179 (jon/web)13117
release-notes, browsers, safari
How to Migrate From npm to pnpm13116
how-tos, migrating, npm, pnpm
Building a Core Accessibility Team: The Keys to the Kingdom (deq)13115
accessibility, engineering-management, processes
Experimenting With Measuring Soft Navigations (tun)13114
performance, web-vitals, navigation, experiments, metrics
What Can You Do With “data” Attributes? (cfe)13113
html, custom-data, javascript
The Psychology of Web Performance (tam/btc)13112
videos, performance, user-experience, history
Introducing Runes (sve)13111
introductions, svelte
How to Use the New “<search>” Element With WordPress (ede)13110
how-tos, html, wordpress
How to Make Forms in Angular Reusable13109
videos, how-tos, angular, forms, maintainability
CSS Findings From The Threads App II (sha)13108
css, case-studies
A Quick Introduction to NestJS13107
introductions, frameworks, nestjs
What an Economist Article Says About Website Accessibility and Lawsuits (tec/equ)13106
accessibility, legal
Get All That Network Activity Under Control With Priority Hints (mac)13105
network, hints, performance
Bun vs. Node.js: Everything You Need to Know (bui)13104
bun, nodejs, comparisons
Better User and Developer Experience With htmx (mia+/odd)13103
videos, htmx
WebKit Features in Safari 17.0 (jen/web)13102
release-notes, browsers, safari, webkit
Node v20.7.0 (nod)13101
release-notes, nodejs
One Thing Nobody Explained to You About TypeScript13100
typescript, configuration
First Steps to an Accessible Website—Skip Links13099
accessibility, skip-links
Managing Design Debt: Strategies for Sustainable User Experience (dxn/log)13098
design-debt, user-experience, strategies
Sharing State With Islands Architecture (max)13097
architecture, state-management, examples, astro, react
Understanding the JavaScript Modulo Operator (jos)13096
javascript, math
Node.js: A Guide to Native .env Support and Local Development13095
guides, nodejs, environments
Git: Don’t Create .gitkeep Files, Use .gitignore Instead (ada)13094
git
Arrow Functions vs. Traditional Functions in JavaScript (cfe)13093
videos, javascript, functions, comparisons
A (More) Modern CSS Reset (bel)13092
css, resets
1-Minute CSS Tip: Accent Colors (alv)13091
tips-and-tricks, css, forms
Expert CSS: The CPU Hack13090
css, custom-properties
Expanding Your Touch Targets (stu)13089
accessibility, usability, user-experience, touch
Accessibility and Inclusivity: Study Guide (nng)13088
guides, accessibility, dei, training, link-lists
Why Not React?13087
react
The JS Community on Twitter Is Dead (hbu)13086
social-media, community, javascript
Sustainability and Tech and Us (j9t)13085
sustainability, performance, minimalism, principles
How UnoCSS Works Internally With Vite?13084
unocss, vite
How to Make a Strong Case for Accessibility (vit/sma)13083
how-tos, accessibility, communication
Solved by CSS Scroll-Driven Animations: Detect if an Element Can Scroll or Not (bra)13082
css, scrolling, animations
Writing Clean Code: Best Practices and Principles13081
javascript, best-practices, principles, conventions, formatting, maintainability
Bun Hype: How We Learned Nothing From Yarn13080
bun, yarn, dependencies, history
What Makes Some Interruptions More Disruptive Than Others?13079
research, productivity, efficiency, career
Securing Your Node.js Apps by Analyzing Real-World Command Injection Examples13078
nodejs, security, history, examples
Whataboutism (col)13077
accessibility
Revealing Images With CSS Mask Animations (css/sma)13076
css, animations, techniques
The 5 Principles of Unit Testing13075
principles, testing, quality
Submit Your Proposals for Interop 2024 (foo+)13074
interoperability, web-platform, browsers, support
Why Is Creativity So Blurry, and Am I Creative?13073
creativity, design, career
v0.dev13072
websites, components, tooling, ai, react, tailwind
JavaScript Is Getting Array Grouping Methods (phi)13071
javascript, arrays, methods
View Transition Debugging (jaf)13070
videos, view-transitions, apis, debugging
The 10ish Tools I Install on Every New Mac I Get (j9t)13069
tooling, apple, link-lists
The 10 Tools I Install on Every New Mac I Get (cod)13068
tooling, apple, link-lists
Incremental Static Regeneration for Angular (ang)13067
angular, incremental-static-regeneration
How to Actually Integrate Angular and NestJS (pol)13066
how-tos, angular, nestjs
How Custom Property Values Are Computed (5t3)13065
css, custom-properties
Why Drupal 10 (man)13064
videos, drupal
Documentation Is a Living Thing: How We Talk Informs What We Make13063
documentation, communication, collaboration
Why I Quit Open Source (sap)13062
foss, community, career
Use Cases for IIFEs13061
javascript
Multi-Page Web Apps (ada)13060
web-apps, multi-page-apps, user-experience
How to Set Up Personal OKRs13059
how-tos, processes, okr, prioritization
From Silos to Design Systems13058
design-systems, processes, case-studies
The Cult of Productivity13057
productivity, efficiency, career
Stop Lazy Loading Product and Hero Images (gri/clo)13056
performance, lazy-loading, images
Nuclear Anchored Sidenotes (mey)13055
css, experiments
Limitations of Scoped CSS (zel)13054
css, scope
In Memory of Molly E. Holzschlag, the Fairy Godmother of the Web (mer)13053
obituaries
I Think I Kind of Hate Lazy Loading (ede)13052
performance, lazy-loading
The Real Value of Tokens13051
design, design-tokens
What Is Functional Testing? Definition, Key Concepts, and Types13050
testing, terminology, concepts
JPEG and EXIF Data Manipulation in JavaScript13049
jpeg, metadata, javascript
Gradients, Blend Modes, and a Really Cool Hover Effect (pre/sma)13048
css, effects, gradients, hover
State of Web Accessibility, ARIA in HTML, and Missing UI Patterns (tin+/fwo)13047
podcasts, accessibility, aria, html
Changes and Additions in Pointer Events Level 3 (pat/w3c)13046
videos, standards, pointer-events
Medium vs. DEV vs. Hashnode vs. Hackernoon13045
writing, community, productivity, comparisons
Cool Tools (mic)13044
tooling, link-lists
Rewriting Digital Content for Brevity (nng)13043
writing, content, refactoring, tips-and-tricks
Discover Bun—a Faster, Modern JavaScript Runtime13042
bun, javascript, runtimes
Creating Dynamic README.md File13041
readme, github
Why Your Design System Needs a Component Process13040
design-systems, components, processes
URL Poetry Club13039
websites, urls
Running a Playwright Script on AWS Lambda (mat)13038
playwright, automation, aws, serverless, lambda
How I Approach and Structure Enterprise Frontend Applications After 4 Years of Using Next.js13037
architecture, conventions, nextjs
Bun, JavaScript, and TCO13036
bun, javascript, optimization
Bun 1.0 (jar+/bun)13035
bun, release-notes
The Pros and Cons of Different Test Tools—Jest13034
testing, jest, history
The Dangers of Deceptive Design Patterns (and How to Avoid Them) (web)13033
user-experience, dark-patterns
JavaScript WTF: Why Does “every()” Return “true” for Empty Arrays? (nza)13032
javascript
A New Method to Validate URLs in JavaScript (ste)13031
javascript, validation, urls
Gulp vs. Webpack—What Is Better: Using Webpack or Gulp.js?13030
gulp, webpack, comparisons
Building a Real-Time Chat With WebSockets, Novel, and Clerk13029
communication, vite, react, nodejs, express, websockets
The New Google Fonts: Find What You’re Looking For (tob)13028
google, fonts
From Data-Driven to Decision-Driven13027
strategies, product-management, metrics
Delay, Sleep, Pause, and Wait in JavaScript13026
javascript
WOFF Has Left the Building (mat)13025
fonts, woff, typography, css, support
Why Are We Not Still Using Tables-for-Layout? (rac)13024
css, techniques, tables
Web Components Accessibility FAQ (mat)13023
accessibility, web-components
The “Array.prototype.every()” Method Always Returns “true” for an Empty Array (cfe)13022
javascript, arrays, prototypes
CSS Lobotomized Owl Selector: A Modern Guide (log)13021
css, selectors, guides, history
CSS “display” Is a Multi-Keyword Property? (zor/css)13020
videos, css
Four Common Types of Code Coverage (jec+)13019
testing, code-coverage
Long Live the Test Pyramid (lei/sma)13018
testing, quality, maintainability
Turbo 8 Is Dropping TypeScript13017
hotwire, release-notes, typescript
Release Notes for Safari Technology Preview 178 (jon/web)13016
release-notes, browsers, safari
Is AI the Silver Bullet of Accessibility?13015
accessibility, ai
GoDaddy Retires Media Temple Brand (sar)13014
domains, hosting
Using Labeled Loops in JavaScript13013
javascript, loops
The Only CSS Layout Guide You’ll Ever Need13012
videos, guides, css, layout, flexbox, grids, box-model
Memories of Molly (mey)13011
obituaries
Making Sense of React Server Components (jos)13010
react, components
Dear Molly (col)13009
obituaries
Binary Search Algorithm in JavaScript (fro)13008
javascript, algorithms, search
Compact HTML13007
chtml
Essential Metrics for Click Testing13006
user-experience, metrics, testing
8 Micro Tips for Remarkably Better Typography13005
typography, tips-and-tricks, readability
First, Do No Harm: Mistakes to Avoid in Creating Accessible User Experiences13004
accessibility, user-experience, mistakes
“Good Commit” vs. “Your Commit”: How to Write a Perfect Git Commit Message (vic)13003
how-tos, commit-messages, collaboration, version-control, git
Node.js vs. Deno vs. Bun: JavaScript Runtime Comparison13002
nodejs, deno, bun, javascript, runtimes, comparisons
The Perpetual Circle of Accessibility (col)13001
accessibility, learning
Progressively Enhanced Form Validation: Custom Validation Messages (ger/clo)13000
forms, validation, progressive-enhancement, errors
Node.js Includes Built-In Support for .env Files (phi)12999
nodejs, support, environments
Equivalent Experience Can Cut Both Ways (eri)12998
accessibility, user-experience
Browser Video Players Review (aar)12997
html, multimedia, accessibility, browsers, screen-readers, support
CSS Frameworks Comparison: Bootstrap vs. Foundation vs. Materialize12996
css, frameworks, comparisons, bootstrap, foundation, materialize
Node v20.6.0 (nod)12995
release-notes, nodejs
10 Things You Didn’t Know About HTML12994
html
NODE_ENV Considered Harmful (cji)12993
nodejs, environments
Web Components Don’t Need You (chr/cod)12992
web-components
Understanding SSR, CSR, ISR, and SSG: A Comprehensive Guide12991
guides, client-side-rendering, server-side-rendering, incremental-static-regeneration, static-site-generation
Top Website Redesign Tips for 202312990
redesigning, tips-and-tricks
Information Architecture vs. Sitemaps: What’s the Difference? (nng)12989
information-architecture, navigation, sitemaps, comparisons
Style Is Consistent Constraint12988
design, consistency
On Productivity Metrics and Management Consultants (nor)12987
productivity, metrics
A Wide View of Automated Testing in React Apps12986
react, testing, automation
Why I Switched From Sublime Text to Visual Studio Code12985
code-editors, sublime-text, vs-code
JetBrains Qodana Review12984
jetbrains, qodana
Three Dimensions of Developer Productivity12983
research, developer-experience, productivity, quality
Type Safe CSS Design Systems With “@property” (arg)12982
design-systems, css, type-safety
Small Details to Improve Your Website’s Experience (alv)12981
user-experience, html, css, metadata
Selecting the Scoping Root (mat)12980
css, scope
Dialog Dilemmas and Modal Mischief: A Deep Dive Into Popovers and How to Build Them (hdv)12979
slides, html, pop-overs, modals, deep-dives
Clocks and Countdowns: Timing in CSS and JavaScript (sto)12978
time, css, javascript
A Beginner’s Guide to Eleventy (dza)12977
guides, eleventy
Understanding Feature Flags: Improving Feature Management12976
videos, feature-management, optimization
The Role of Cloud Computing in Web Development12975
cloud-computing
Is Atomic Design Dead? (bra)12974
videos, design, atomic-design
Decoding WCAG: “Alternative for Time-Based Media” and “Media Alternative for Text” (web)12973
wcag, accessibility, multimedia
An Introduction to the Laravel PHP Framework12972
introductions, frameworks, laravel, php
Build a GraphQL Gateway: Combine, Stitch, or Merge Any Datasource12971
data-fetching, graphql
Things That Jakob’s Law Is Not12970
user-experience, usability, web
How to Make Charts and Graphs More Accessible (pop)12969
how-tos, information-design, images, accessibility
Memorization and Learning to Code12968
learning, productivity, career, programming
Sustainable SEO: Processes and Practices12967
seo, sustainability, processes, best-practices
Getting Started With htmx: A Comprehensive Guide for Beginners12966
guides, introductions, htmx
What Is the View Transitions API and How to Use It With Meta Frameworks12965
view-transitions, apis, frameworks, support
Web Sustainability Guidelines (WSG) 1.0 (ale/w3c)12964
guidelines, sustainability
Astro 3.0 (ema+)12963
astro, release-notes
Why Do I Have Layout Shift? (una+)12962
videos, performance, web-vitals
Guide to Using Template Engines (Such as Twig) With PHP12961
guides, template-engines, php, twig
What Is Inclusion Anyways? Lessons From the Disabled Community12960
slides, lessons, dei, accessibility
Using “rem” Doesn’t Make Your Website Responsive—Here’s Why12959
responsive-design, units, css
Tracking Errors in a Node.js Application (app)12958
monitoring, errors, nodejs
Let’s Make a Rubber Button With HTML, CSS, and SVG (tyl/clo)12957
buttons, html, css, svg, images
CSS Loaders (css)12956
websites, css, animations, effects
Connected Grid Layout Animation (cod)12955
css, grids, layout, animations
Case Study: Rebuilding TechCrunch Layout With Modern CSS (sha)12954
case-studies, refactoring, css
Accessibility Theater (tpg)12953
accessibility
Measuring Developer Productivity? A Response to McKinsey (ger+)12952
productivity, metrics
Five Optimization and Performance Tools That Enhance Website User Experience12951
user-experience, performance, optimization, tooling, link-lists
Announcing Cypress 13 With Test Replay12950
cypress, release-notes
Hover Triangles (may)12949
history, navigation, hover
How to Implement SSL/TLS Pinning in Node.js12948
how-tos, security, ssl, tls, nodejs
How to Measure Developer Productivity the Right Way12947
how-tos, productivity, processes
Why Are Websites Embarrassing? (fon)12946
quality, craft
Web Apps Are Better Than No Apps (yur)12945
web-apps
Git Uncommit (ami)12944
git, command-line
Building Accessibility Into Your Company, Team, and Culture (swi)12943
videos, accessibility, culture
Biome v1 (ema/bio)12942
release-notes, biome
Benchmarks [for 24 CSV Parsing Approaches]12941
csv, parsing, performance, comparisons
Six Reasons Not to Use React (jhe)12940
videos, react
Single-Page Applications: Ember vs. Angular12939
single-page-apps, emberjs, angular, comparisons
From User Needs to User Dreams: Find the Future of Your Product12938
user-experience, design, outlooks