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 (18)

→ 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#
Progressive Enhancement vs. Graceful Degradation: Approaches to Web Development13350
progressive-enhancement, graceful-degradation, comparisons
OOP Design Patterns in JavaScript13349
javascript, oop, software-design-patterns
“oklch()” Retains Perceived Lightness for Different Hue Angles (ste)13348
css, functions, colors, oklch
Are Design Ethics Useless? (koo)13347
design, ethics
Preventing Scroll “Bounce” With CSS (mic)13346
css, scrolling
Accessibility Is Leadership (dav)13345
accessibility, leadership
Design Systems Metrics—What I Have Learned Leading the [Design System] of the Biggest Edtech in Latin America13344
design-systems, metrics, lessons
Weird HTML Hacks (ern)13343
html, css, hacks, techniques, history
A Few Ways CSS Is Easier to Write in 2023 (geo/sma)13342
css, techniques, comparisons
Measuring Long Animation Frames (LoAFs) in the Browser (mat/deb)13341
animations, performance, apis, web-vitals
State of JavaScript 2023 (sac/dev)13340
surveys, javascript
How to Test 3.3.7 Redundant Entry (tpg)13339
how-tos, accessibility, testing, wcag
Browsers Only Update “:target” on Page Load and During Fragment Navigation (sim)13338
css, selectors
Choosing a Green Web Host (mic)13337
hosting, sustainability
Top 10 Most Popular JavaScript Frameworks to Choose in 202413336
javascript, frameworks, react, angular, vuejs, nodejs, express, meteor, nextjs, emberjs, backbone, svelte
Vue and Vite Status Update (eva)13335
videos, vuejs, vite
The Elevator Pitch for Web Components (cfe)13334
web-components, html, dom
Test Often to Keep Your Designs Simple13333
design, prototyping, testing, simplicity
Shadow DOM Is for Hiding Your Shame13332
shadow-dom, dom, web-components, html
Psychology of Speed: A Guide to Perceived Performance (fox/cal)13331
guides, performance, user-experience
Why We Don’t Like TDD: A Developer’s Perspective13330
testing, processes
The Unbearable Weight of Massive JavaScript (rya/per)13329
videos, javascript, frameworks, performance
URL Parser Performance (bag)13328
urls, parsing, performance
The Tension and Future of Jamstack (zac)13327
tech-stacks, jamstack
PHP Attributes in Laravel13326
php, laravel, attributes
Easy Introduction to Variables and Data Types in Programming for Beginners (ara)13325
introductions, variables, types, programming
Demystifying Web Push Notifications13324
notifications, javascript
An Interactive Guide to CSS Grid (jos)13323
guides, css, grids, layout
Streams in Node.js13322
nodejs, streaming, examples
SEO Writing: 12 Tips for Creating SEO-Optimized Content (sem)13321
seo, writing, content, optimization, tips-and-tricks
What Are Webhooks and How to Use Them13320
webhooks
Width and Height in CSS (jim)13319
css
The 9 HTML Elements That Have an Attribute of the Same Name, or: The 9 Attributes That Have an Element of the Same Name (j9t)13318
html, attributes
Navigating the Intersection of Brand Strategy and User Experience (uxm)13317
branding, strategies, user-experience
Jimdo’s Engineering Guidelines13316
guidelines, processes, collaboration, onboarding, case-studies
Inspecting WCAG 2.2: Target Size13315
videos, accessibility, wcag, standards
How to Avoid Breaking Web Pages for Keyboard Users (tpg)13314
how-tos, accessibility, keyboard-navigation
CSS4 Is Coming (Not a Clickbait) (zor/css)13313
videos, css
Conducting a Content Audit to Improve Your Content (uxm)13312
content, auditing, quality, optimization
Announcing TypeScript 5.3 (dan/typ)13311
release-notes, typescript
Adding a CSS Playground to Your Astro Site With Svelte13310
astro, svelte, css, functionality
Introduction to AWS—DynamoDB13309
introductions, aws, dynamodb, databases
CSS Nesting UX in DevTools (sha)13308
css, nesting, user-experience, developer-experience, browsers, dev-tools
CSS Nesting (sha)13307
css, nesting
The CSS Property You Didn’t Know You Needed13306
css
Skip PHPUnit Tests Conditionally in PHP (ami)13305
php, testing
How Independent Publishing Has Changed From the 1990s Until Today13304
history, writing, web
Comparison of Accessibility of E-Government Websites in Europe (cer)13303
accessibility, case-studies, comparisons
An Attempted Taxonomy of Web Components (zac)13302
web-components, html
26 Frontend Certifications for Web Developers13301
training, career, link-lists
10 Great Websites to Learn Web Development (apo)13300
link-lists, learning
Why You Should Curate, Not Create, a Design System13299
design-systems, processes
Integrating MongoDB With Node.js13298
mongodb, nodejs
5 Formatting Techniques for Long-Form Content (nng)13297
usability, content, writing, formatting, techniques
Why Svelte?13296
svelte, react, frameworks
Understanding Dev Dependencies in Web Development13295
dependencies
“NODE_ENV=production” Is a Lie (mco)13294
videos, nodejs, environments, optimization
HTML Web Components Are Just JavaScript? (mia/odd)13293
web-components, javascript, html
10 Tips for Driving Design System Adoption (zer)13292
design-systems, tips-and-tricks
Wasp Lang and Prisma ORM: A New Era in Web Development (pri)13291
videos, wasp, prisma, orm
Using Chrome’s Accessibility Tree for Manual Testing of HTML and ARIA (rus)13290
videos, browsers, google, chrome, dev-tools, accessibility, testing, html, aria
How to Use Node.js With Docker (cra)13289
how-tos, nodejs, docker
Until the Right Design Emerges…13288
design
Vite 5.0 Is Out (vit)13287
release-notes, vite
The Node.js Event Loop (mco/pla)13286
nodejs, event-loop, events
The Developer Job Market Is Insane—5 Tips on How to Survive13285
career, interviewing, tips-and-tricks
The Best CSS Background Patterns for Your Next Project13284
css, backgrounds
Getting Started With CSS Container Queries (mic/mdn)13283
introductions, css, container-queries
Exclusive Accordions Exclude (yat)13282
accessibility, html, accordions
Evolution of Visible Focus13281
videos, accessibility, focus
4 Web Devs, 1 App Idea (whi+)13280
videos, web-apps, case-studies
Introduction to LangChain13279
introductions, langchain
Shattering the Design System: Unleashing the Creative Revolution (cre)13278
design-systems, creativity, processes
Introducing N|Solid Copilot: Your AI-Powered Node.js Navigator (nod)13277
introductions, nodejs, ai, tooling, nsolid
We Need to Have a Chat? I Think We Should Refactor13276
design-systems, maintenance, refactoring
Optimizing Frontend Performance: Mastering Memoization, Throttling, and Debouncing13275
performance, optimization, memoization, throttling, debouncing
Browsing the Eastern Side of the Personal Web13274
web, community
Why Doesn’t AI Work for Producing Accessible Code? (ala)13273
accessibility, code-generation, ai
Using Selectlist in React (kil/pol)13272
react, forms
Release Notes for Safari Technology Preview 183 (jon/web)13271
release-notes, browsers, apple, safari
Modular CSS and Different Ways to Structure Your Stylesheets (cfe)13270
css, modules
Is It Worth Keeping Your CSS DRY—Pros and Cons13269
css, maintainability, principles
How to Optimize MongoDB Performance for Node.js (app)13268
how-tos, mongodb, optimization, nodejs
Biome—Unified Linting and Formatting Solution13267
biome, configuration
About Subgrid and Colored Grid Lines (len)13266
css, grids, layout
A Tip for Properly Handling Loading States in Web Apps (ray)13265
tips-and-tricks, state-management, web-apps
A Guide to Low-Code No-Code in Software Development13264
guides, low-and-no-code, concepts
Designing for Accessibility Beyond Compliance13263
design, accessibility, compliance
What Is Transpiling in JavaScript?13262
videos, javascript, ecmascript, transpiling, babel
Simplifying the E2E Selectors Hassle13261
angular, typescript, testing
Node.js Monthly Downloads (mco)13260
websites, nodejs, metrics
Letter and Spirit of Web Development (j9t)13259
community, processes
How I Test a Website for Accessibility13258
accessibility, testing
Exploring V8’s Strings: Implementation and Optimizations (ili)13257
javascript, javascript-engines, v8, strings, optimization
Elevate Your CSS Debugging Skills With These Chrome DevTools Tricks in 2024 (uti)13256
css, debugging, browsers, google, chrome, dev-tools
Cracking a “Developer Tools Killer” Script… (cod)13255
browsers, dev-tools, debugging
Accessibility Testing With Chrome DevTools13254
accessibility, testing, browsers, google, chrome, dev-tools
A Coder Considers the Waning Days of the Craft (new)13253
craft, retrospectives, web
Monitoring Your Python App With AppSignal13252
python, monitoring, tooling
Text With Media Background: Practical Solutions13251
images, microcontent, readability, accessibility
Your Website’s URLs Can and Should Be Beautiful13250
urls, usability
The Top WordPress Plugins Are… a Little Sad? (chr)13249
wordpress, plugins
Prettier 3.1: New Experimental Ternaries Formatting and Angular Control Flow Syntax13248
release-notes, prettier
Is It Time for You to Leave Social Media?13247
social-media
Introducing the Website Carbon Rating System13246
introductions, sustainability
HTML Web Components (jim)13245
html, web-components
Growing Design by Letting Teams Experience It13244
design
Designing Web Design Documentation (fre/sma)13243
documentation, design, design-systems
Cascade Layers, CSS Functions, and More CSS With Miriam Suzanne (mia+/sho)13242
podcasts, interviews, css, cascade, functions
Java Memory Leaks: Detection and Prevention13241
java, memory
The Nature of Digital Is Environmentally Destructive (ger)13240
sustainability
HTML First13239
websites, html, principles
Explaining Kubernetes to My Uber Driver13238
architecture, kubernetes
Accessibility Training Can Sometimes Harm Accessibility (cer)13237
accessibility, training
AI Is the New UI13236
ai, design
Stop Using AI-Generated Images (mic)13235
ai, images
NCSA Mosaic: How the First Mainstream Web Browser Changed the World Forever13234
history, browsers, mosaic
Mastering Cryptography Fundamentals With Node’s “crypto” Module13233
security, cryptography, nodejs
Lost in Translation: Tips for Multilingual Web Accessibility (ben)13232
tips-and-tricks, accessibility, internationalization, localization
Do You Really Need to Validate Your HTML Code?13231
discussions, html, conformance
What’s New in Angular 17 (rak)13230
angular
How to Become a Better Programmer13229
how-tos, programming, career
CSS Nesting Is Here (mic)13228
css, nesting
Cookie Permissions 101 (nng)13227
cookies, legal, user-experience
Set Up Your Redwood.js Environment: A Beginner’s Tutorial (sel)13226
videos, tutorials, redwoodjs
Never Use “Scroll” Value for Overflow (kiz)13225
css, overflow, scrolling
Creating Accessible UI Animations (sma)13224
accessibility, animations
Concurrency in React 18 for Busy Bees (ole)13223
react, concurrency
A Faster Web in 2024 (rvi)13222
performance, web-vitals, metrics, web
CSS Nesting Relaxed Syntax Update (arg)13221
css, nesting, browsers, google, chrome, support
NaN or Not a Number? (mic)13220
javascript
Understanding HTML Landmarks and How to Apply Them (its/log)13219
html, semantics, accessibility, aria
Modern Frontend Testing With Vitest, Storybook, and Playwright13218
testing, vitest, storybook, playwright
HTML Web Components (ada)13217
web-components, html, web-platform
How Long Until Your Website Is Accessible? (kar)13216
accessibility, processes
Front End Devs Really Don’t Understand Accessibility (cfe)13215
accessibility, craft
ES6 Features You Didn’t Know You Needed: A JavaScript Guide for Beginners13214
guides, javascript
Effective Engineering Teams (add)13213
collaboration, career, engineering-management
Can Bun Eat Node.js’s Lunch? Testing the Trendy Toolkit13212
bun, nodejs, comparisons
How to Use Timeouts in Node.js (app)13211
how-tos, time, nodejs, javascript
“@scope” (mdn)13210
css, scope
Handling Null, Undefined, and Zero Values in JavaScript (mic)13209
javascript
XML Basics for Computing13208
fundamentals, xml
Secure Code Review Tips to Defend Against Vulnerable Node.js Code13207
nodejs, security, code-reviews
Web Developers: Remarkably Untalented and Careless? (bal)13206
quality, career, training
Using CSS “content-visibility” to Boost Your Rendering Performance (log)13205
css, rendering, performance
Monolith to Microservices: 5 Strategies, Challenges, and Solutions13204
monoliths, microservices, architecture, migrating, strategies
Introducing Angular v17 (mge/ang)13203
introductions, release-notes, angular
Everything About SEO Is Obnoxious (chr)13202
seo, quality, ethics
CSS Positioning Crash Course (zor/css)13201
videos, crash-courses, css, positioning, layout
AVIF: Meet the Next Level Image File Format13200
avif, images
How Miro Migrated Its Analytics Event Tracking System13199
analytics, metrics, monitoring, migrating
Deploying a Vue Application With Netlify and GitHub13198
deploying, vuejs, netlify, github
React Router v6: A Beginner’s Guide13197
guides, react, routing, react-router
Accessibility Training Will Not Save You (rei)13196
accessibility, training, career, quality
How Core Web Vitals Saved Users 10,000 Years of Waiting for Web Pages to Load (add+)13195
google, performance, user-experience, metrics
Headless Component: A Pattern for Composing React UIs (mfo)13194
components, react, headless
Why We Need a “Green” Perf Metric (scr/per)13193
videos, sustainability, performance, metrics
(Don’t) Mind the Gap (mic)13192
css, layout
Addressing Accessibility Concerns With Using Fluid Type (sma)13191
accessibility, responsive-design, liquid-design, css
Writing Components That Work in Any Frontend Framework (and)13190
web-components, frameworks
Truly Semantic (don)13189
design-tokens, semantics, naming
Surprising Facts About New CSS Selectors (spa/clo)13188
css, selectors
Creating Accessible Content in Drupal 1013187
videos, drupal, accessibility
Cloudinary: The “Dramatic” Story of JPEG XL Support So Far (jon/com)13186
jpeg-xl, images, support, browsers
Angular (ang)13185
websites, angular
13 HTML Attributes You Should Know About13184
html, attributes
How to Build a Server-Side React App Using Vite and Express13183
how-tos, react, vite, express, server-side-rendering
Markdown to HTML in Seconds: Discovering mdhub (gli)13182
markdown, html, conversion, tooling
Comparing MySQL, PostgreSQL, and MongoDB13181
databases, mysql, postgresql, mongodb, comparisons
The Role of Prototyping in UX Design: From Wireframes to Interactive Mockups (uxm)13180
user-experience, design, prototyping
Removing List Styles Without Affecting Semantics (mat)13179
html, css, semantics, accessibility
How to Use npm Packages Outside of Node13178
how-tos, npm, dependencies, javascript
GitLab CI Optimization: 15+ Tips for Faster Pipelines13177
gitlab, ci-cd, optimization, tips-and-tricks, dev-ops
“git rebase”: What Can Go Wrong? (b0r)13176
git
Default Layouts in 11ty (rem)13175
eleventy
Understanding React Error Boundary13174
react
To Hell With the Business Case (mat)13173
accessibility, economics, legal
How Creating Content as a Developer Changed My Life13172
career, learning
WCAG 2.2 Will Be a Part of EN 301 549 and With That a Part of WAD and EAA (cer)13171
accessibility, wcag, en-301-549, standards, legal, eaa
The Anatomy of an Accessible Button13170
buttons, accessibility, aria, html
Understanding CORS13169
security, cors
Performance in React and Next.js13168
videos, performance, react, nextjs
Messing About With CSS Gradients (mic)13167
css, gradients
Workarounds for Buggy Gradients (kei)13166
css, gradients, colors
Totally Remdom, or How Browsers Zoom Text (mat)13165
accessibility, zooming, css, units, responsive-design
How to Do a TypeScript Conversion13164
how-tos, javascript, typescript, migrating, conversion, refactoring
GitHub Copilot Now Generates AI Commit Messages (ami)13163
github-copilot, ai, commit-messages
An Accessibility Bookmarklet for Testing 200% Text Size (ash)13162
accessibility, testing, bookmarklets
Use the CSS “:disabled” Pseudo-Class Instead of the “[disabled]” Attribute Selector to Match Disabled Form Controls (sim)13161
css, selectors, forms
Information vs. Experience: How to Build Mature Design Systems13160
how-tos, comparisons, design-systems
How to Use the Fetch API in Node.js, Deno, and Bun (cra)13159
how-tos, data-fetching, apis, nodejs, deno, bun, comparisons
Why You Should Use “px” Units for Margin, Padding, and Other Spacing Techniques (ash)13158
css, units, margins, spacing, responsive-design
Shadow DOM on Regular Elements (kiz)13157
shadow-dom, dom
In Quest to Defeat Euro Red-Tape, Apple Said It Had Three Safari Browsers—Not One (tho/the)13156
browsers, apple, safari, web, legal
How to Write Good Alt Text for Screen Readers (cra)13155
how-tos, accessibility, images, writing, alt-text, screen-readers
“:fullscreen” Demo Without JavaScript (yoo)13154
css, selectors
Don’t Turn a Table Into an ARIA Grid Just for a Clickable Row (aar)13153
html, tables, grids, aria, accessibility
Content Negotiation in Practice (sof)13152
content-negotiation, http, examples
Can AI Help Boost Accessibility? These Researchers Tested It for Themselves13151
accessibility, ai, chatgpt, research
Answers to Common (Web) Accessibility Questions (hdv)13150
accessibility
10 Best Web Development Stacks13149
tooling, tech-stacks
Breaking Down a Design (jam)13148
design
Learn Performance (kev+)13147
courses, performance
Understanding Cookies13146
cookies
The “prefers-reduced-transparency” Media Feature (mat)13145
css, media-queries, accessibility
The People Who Ruined the Internet (ver)13144
web, google, seo
The Dangers of Doomscrolling for Designers and How to Break Free (web)13143
career
Technical Standards Bodies Are Regulators (mno)13142
standards, policies, legal
Speeding Up the JavaScript Ecosystem—Tailwind CSS (mar)13141
performance, javascript, tailwind
Response Code Cheat Sheet for Laravel HTTP Client (ami)13140
cheat-sheets, laravel, http
Release Notes for Safari Technology Preview 182 (jon/web)13139
release-notes, browsers, apple, safari
Personal-Scale Web Scraping for Fun and Profit13138
scraping, javascript, functionality, optimization
One HTML Tag, Thirty+ CSS Drawings—My Divtober 2023 Collection (alv)13137
css, art
How Bear Does Analytics With CSS13136
analytics, metrics, css, case-studies
Getting Started With NVDA13135
videos, introductions, screen-readers, nvda, accessibility
Dark Visitors13134
websites, ai, scraping, robotstxt
Confusing Git Terminology (b0r)13133
git, terminology
Blinded by the Light DOM (mey)13132
web-components, dom, shadow-dom, javascript
A Comprehensive Guide to Data Engineering13131
guides, data-engineering
0 KB Social Media Embeds (chr)13130
embed-code, quality
Remix ❤️ Vite (mar/rem)13129
remix, vite, support
A Complete Guide to LangChain in JavaScript13128
guides, langchain, javascript, frameworks
Mobile-First Indexing Has Landed—Thanks for All Your Support (joh)13127
mobile-first, mobile, seo, google
Why Signals Are Better Than React Hooks13126
videos, javascript, signals, react, hooks, comparisons
Better Dynamic Themes in Tailwind With OKLCH Color Magic (tra/evi)13125
theming, tailwind, oklch, colors
Answering Common Questions About Interpreting Page Speed Reports (geo/sma)13124
performance, optimization
Accessibility by Degrees (tem)13123
accessibility, processes
2023: 0 of the Global Top 100 Websites Use Valid HTML (j9t)13122
html, css, conformance, metrics, quality
Effective Strategies for Optimizing Performance13121
strategies, performance, optimization
Interop 2023 October Update (rac)13120
interoperability, web-platform, browsers, support
Simplifying Web Development With Hugging Face (gra)13119
ai, hugging-face
What Exactly Is “Modern” CSS? (geo)13118
css
Don’t Disable Buttons (cfe)13117
buttons, accessibility, javascript
20 Effective Tips to Speed Up Your Drupal Website13116
drupal, tips-and-tricks, performance, optimization
A Guide to Using MSSQL With Node.js13115
guides, nodejs, databases, sql
Unit-Testing: The Unsung Hero of Code Quality13114
testing, quality
The New CSS Math: “rem()” and “mod()” (dan)13113
css, functions, math
Is Express Still “De Facto” for Building Node Backends?13112
discussions, express
Guide to React Suspense and “use” Hook for Busy Bees (ole)13111
guides, react, hooks, promises, data-fetching
An Introduction to Working With SVGs in React13110
introductions, images, svg, react
Why Is node_modules Heavier Than the Universe?13109
nodejs
View Transitions and Stacking Context: Why Does My CSS View Transition Ignore “z-index”? (nic)13108
css, positioning, animations, view-transitions
Let’s Reinvent the Wheel (vas)13107
html, css, user-experience, accessibility, web-platform
Keep Pace With Modern JavaScript13106
javascript, link-lists
Liquid vs. Headless: A Look at Real User Web Performance (sia)13105
shopify, headless, performance, metrics, comparisons
AI as a UX Assistant (nng)13104
user-experience, ai
You’re Gonna Need a Bigger Browser (rob)13103
browsers, web-platform, user-experience, outlooks
State of React 2023 (sac/dev)13102
surveys, react
Some Sensible Defaults for Your “img” Elements (css)13101
images, css
So You’ve Been Publicly Accessibility-Shamed (dav)13100
accessibility, quality, communication
How to Find a Developer Job in 2023 (With Little or No Experience)13099
how-tos, career
How Often Should You Redesign Your Website?13098
redesigning, refactoring, seo
20 Simple Ways to Style the HTML “details” Element (ral)13097
html, disclosure-widgets, css
Astro 3.4: Page Partials (eri)13096
release-notes, astro
Why I Won’t Use Next.js (ken)13095
frameworks, nextjs
Secret Scanning Scans Public npm Packages13094
github, npm, dependencies, security
HTML vs. DOM? Let’s Debug Them (jec)13093
videos, html, dom, debugging, comparisons
Next.js 1413092
release-notes, nextjs
Performance Optimization With Worker Threads Node.js13091
performance, optimization, nodejs, worker-threads
Arrays—Implementation in JavaScript13090
javascript, arrays
Deprecation of Formatting Rules (nza/esl)13089
eslint, linting, tooling, deprecation, formatting, release-notes
What the !#@% Is a Passkey? (eff)13088
passkeys, security
Testing and Code Quality in Node.js (hon)13087
testing, quality, nodejs
Introduction to Real-Time Communication in PHP Laravel13086
introductions, laravel
Introduction to htmx13085
introductions, htmx
CSS “prefers-reduced-transparency” (arg)13084
css, media-queries, support
Understanding SC 2.4.11 “Focus Not Obscured (Minimum)”13083
accessibility, wcag, focus
Sheet, Dialog, or Snackbar—What Should a Designer Go For?13082
design, design-patterns, modals
Data Engineering Essentials #1: Your First Pipeline13081
fundamentals, data-engineering
What Does the “A” Mean in “DEAI”? (mni)13080
dei, accessibility
WebKit Features in Safari 17.1 (jen/web)13079
release-notes, browsers, apple, safari, webkit
Web Components Will Outlive Your JavaScript Framework (jak)13078
web-components, javascript, frameworks
Vue.js (Vue v3) for Beginners (thi)13077
videos, courses, vuejs
A Comprehensive Guide to Django Caching13076
guides, django, caching
Change Project, Change Node Version, Let .nvmrc Help You13075
nodejs, nvm
My Problem With Using TypeScript in 202313074
videos, typescript
It’s 2023, Here Is Why Your Web Design Sucks (hbu)13073
web, design, career
Goodbye, Node.js Buffer (sin)13072
nodejs
Give Your Site Some Focus! Tips for Designing Useful and Usable Focus Indicators (deq)13071
accessibility, forms, focus, user-experience, tips-and-tricks
Complex MPA View Transitions (tyl)13070
multi-page-apps, view-transitions, css
JavaScript Decorators: An In-Depth Guide13069
guides, javascript
Select Element: Now With Horizontal Rules (una)13068
html, forms, semantics, browsers, google, chrome, apple, safari, support
CSS “text-wrap: pretty” (arg)13067
css, typography, browsers, google, chrome, support
Solved by CSS Scroll-Driven Animations: Style an Element Based on the Active Scroll Direction and Scroll Speed (bra)13066
css, scrolling, animations
What Removing Object Properties Tells Us About JavaScript (mon/sma)13065
javascript, objects
Unlocking JavaScript Design Patterns: Mastering Singleton for Ultimate Code Efficiency13064
javascript, software-design-patterns, efficiency
Tailwind vs. Semantic CSS13063
tailwind, css, html, semantics, comparisons, performance
Svelte by Example (seb)13062
websites, svelte, examples
Stop Waiting (jha)13061
quality, testing
Splitting Within Selects (aar)13060
accessibility, html, forms, browsers, support
Release: Yarn 4.013059
yarn, release-notes
Navigating the Ethical Complexities of Personalized User Experiences: Balancing Innovation With Privacy and Consent (uxm)13058
user-experience, personalization, ethics, privacy, consent-management
JavaScript Is Enabled by Default in Web Browsers (jim)13057
javascript, web-platform, permissions
JavaScript Anti-Pattern: Self-Documenting Code (cfe)13056
javascript, anti-patterns, documentation
In Defense of Learning on Company Time (isa)13055
learning, career
Igalia Chats: Web History Part VI (stu+/iga)13054
podcasts, web, history
HTML Meta Tags13053
html, metadata
Changing Colors in an SVG Element Using CSS and JavaScript13052
svg, colors, css, javascript
Accessibility Improvements for User-Agents13051
accessibility, browsers, screen-readers, assistive-tech
Strikethrough Accessibility (den)13050
accessibility, html, screen-readers, support
Global Encryption Day: Encryption’s Critical Role in Safeguarding Human Rights (tor)13049
awareness-days, encryption, privacy
What Should Be the Contrast Level of Inactive Buttons?13048
accessibility, buttons, contrast, colors
Using ChatGPT, GitHub Copilot, and Phind to Generate Tailwind Config for Width Classes (luc)13047
ai, chatgpt, github-copilot, tailwind, configuration
When to Use CSS “text-wrap: balance;” vs. “text-wrap: pretty;” (sea)13046
css, typography, comparisons
Using ChatGPT for Smart Truncation in Responsive Web Design13045
content, responsive-design, ai, chatgpt, html
Is CAPTCHA Accessible?13044
accessibility, captcha
How Do You Even Web Dev Without Node? A Quick Introduction to Test-Driven Web Development Using Just the Browser (bal)13043
introductions, testing
Finding the Primary Branch of a Git Repository (ami)13042
git
Embedding Accessibility Into Code Reviews (web)13041
videos, accessibility, code-reviews, processes
The Need for Recognition in Open Source (bek/ope)13040
foss, culture, communication, community
Why Unique ID Attributes Matter (deq)13039
accessibility, html, attributes, conformance
Web Accessibility Strategies for Non-Accessible Projects (bol)13038
videos, accessibility, strategies, processes
Prodding Firefox to Update “:has()” Selection (mey)13037
css, selectors, mozilla, firefox, support
I Asked People to Make This Simple Layout and Was Surprised by the Results (kev)13036
videos, css, layout, comparisons
How to Map a Number Between Two Ranges (hen)13035
how-tos, javascript, math
How to Collaborate on Pull Requests for Beginners (ope)13034
how-tos, code-reviews, collaboration
How to Build Your First Web Component (joe/fre)13033
how-tos, web-components
Don’t Do It on Frontend or… Frontend Good Practices for Devs13032
best-practices, quality, maintainability, documentation
Solid.js Creator Outlines Options to Reduce JavaScript Code13031
javascript, performance
The Inverse Value of UX and Art13030
user-experience, art
Does the HTML “hr” (Horizontal Rule) Benefit Screen Reader Users?13029
html, accessibility, screen-readers
Do We Need State Management in Angular?13028
angular, state-management
The New “light-dark()” Function to Switch Theme Color in CSS (ami)13027
css, functions, dark-mode
Storybook 7.5 (sto)13026
storybook, release-notes
Release Notes for Safari Technology Preview 181 (jon/web)13025
release-notes, browsers, apple, safari
On the Uniting Power of a Commitment to HTML Conformance (j9t)13024
html, conformance, quality, community, web
How to Animate Along a Path in CSS (pre/sma)13023
how-tos, css, animations
Git: Rebase an Old Branch Incrementally (ada)13022
git, command-line
The Nuances of Base64 Encoding Strings in JavaScript13021
javascript, encoding, base64, unicode, strings
Stacked Diffs (and Why You Should Know About Them) (ger)13020
version-control, code-reviews, google, facebook+meta, concepts
Synchronizing Figma Variables With Design Tokens13019
figma, variables, design-tokens, automation
Transition Animations: A Practical Guide13018
guides, transitions, animations, interaction-design
The True Cost of Not Prioritizing Accessibility: Avoid Risk and Maximize Product ROI13017
accessibility, economics, product-management, prioritization
The Three Cs: Concatenate, Compress, Cache (css)13016
performance, compression, caching
Start Styling Your “console.log()” Messages in DevTools (zor/css)13015
videos, javascript, console, browsers, dev-tools
React Design Patterns13014
react, software-design-patterns
Node.js 21 Available Now! (ope)13013
nodejs, release-notes
How to Use SEO to Build Long-Term Brand Recognition and Visibility (moz)13012
how-tos, seo, branding
Design System Documentation Sucks—How We Can Do Better13011
design-systems, documentation
Color Contrast Accessibility Tools With Examples (pop)13010
accessibility, tooling, link-lists, colors, contrast, examples
Burn Your Toast (eri)13009
design-patterns, notifications, accessibility, usability
A Couple of New CSS Functions I’d Never Heard Of (chr)13008
css, functions
Scroll-Driven State Transfer (kiz)13007
css, scrolling
Link Colors and the Rule of Tincture13006
links, colors
“JavaScript Is Weird” as a Compressor13005
javascript, compression
Ensuring Negative Numbers Are Available for Everyone (deq)13004
accessibility, testing, math
Common Vue.js Development Mistakes and How to Avoid Them13003
vuejs, mistakes
2.4.11: Adversarial Conformance (aar)13002
accessibility, wcag, compliance
CSS Findings From Photoshop Web Version (sha)13001
html, css, adobe, photoshop, case-studies
How to Style Element Descendants With Tailwind CSS (ste)13000
how-tos, tailwind
Bubble Sort… in Pure CSS? (No JS)12999
css, algorithms, sorting
Button Labels: Is “OK” Ok?12998
forms, buttons, labels, writing, usability
The Negative Impact of Mobile-First Web Design on Desktop (nng)12997
design, mobile-first, mobile, desktop, usability, information-design
Forget Twitter: WordPress.com Blogs Can Now Connect to Mastodon (pcm)12996
social-media, twitter+x, wordpress, mastodon
How We Optimized Package Imports in Next.js12995
nextjs, dependencies, optimization, case-studies
What’s New in CSS? (bra)12994
css
Organizing Multiple Git Identities (gar)12993
git
44 React Frontend Interview Questions12992
interviewing, react
Astro 3.3: Picture Component (eri+)12991
astro, release-notes
Why Companies Kill Great Design12990
design
Quick Tip: Creating Polymorphic Components in TypeScript12989
tips-and-tricks, typescript, components
Honor User’s Transparency Setting in CSS (ami)12988
css, transparency+opacity, accessibility, user-experience
Back/Forward Cache (phi+)12987
bfcache, performance, browsers, chrome, google
Using CSS Custom Properties Like This Is a Waste (kev)12986
videos, css, custom-properties
Unpopular Opinion: It’s Harder Than Ever to Be a Good Software Engineer12985
career, quality
Scrollbars Are Becoming a Problem (art)12984
scrolling, usability, accessibility
New Release: Tor Browser 13.0 (tor)12983
release-notes, tor-browser, browsers
Digital Accessibility Blogs and Newsletters (ons/tpg)12982
accessibility, link-lists
Why Naming Is #1 Skill for Writing Clean Code12981
naming, conventions, best-practices
Designing for All: The Basic Principles of Web Accessibility12980
accessibility, fundamentals, principles, aria, tooling
WooCommerce vs. Shopify: Which Is the Better Choice for You?12979
shopify, comparisons, ecommerce
Preventing and Debugging Memory Leaks in Node.js (bet)12978
debugging, memory, nodejs
CSS Relative Color Syntax (arg)12977
css, colors, functions
Styling External Links With Attribute Selectors (mic)12976
links, css, attributes, selectors
You Can’t Get Faster Than No Build12975
building, processes
We Need Web Progress, Not Pessimism (kev)12974
web-platform, principles
Skip Links on ikea.com (mat)12973
accessibility, skip-links, case-studies
Let’s Prototype a JavaScript JIT Compiler12972
videos, javascript, compiling, prototyping
Introduction to Web Sustainability (mic/mdn)12971
introductions, sustainability
The Global “innerWidth” and “innerHeight” Properties Return the Width and Height of the Layout Viewport (sim)12970
viewport, javascript, interoperability, webkit
AI Could Soon Need as Much Electricity as an Entire Country12969
ai, sustainability
Images on the Web12968
images, concepts, compression, jpeg, png, webp, avif, nextjs
Greenwashing and the COP28 Website (mic)12967
sustainability, case-studies
Hashnode’s Overall Architecture (has)12966
architecture, case-studies
The Selected Date Must Be Within the Last 10 Years (ger/clo)12965
html, forms, validation
Local HTTPS for Next.js 13.5 (ami)12964
security, testing, http, nextjs
5 Best Practices for Preventing Chaos in Tailwind CSS (tra/evi)12963
best-practices, tailwind
Why the Internet Isn’t Fun Anymore (new)12962
web, social-media
Extending the Properties of an HTML Element in TypeScript12961
html, components, typescript
Adding Search to an Eleventy Site Without Client-Side JavaScript (mez)12960
eleventy, serverless, functionality, search
The Future of SolidJS With Ryan Carniato (rya/fro)12959
podcasts, interviews, solidjs, outlooks
The Future of CSS: Easy Light-Dark Mode Color Switching With “light-dark()” (bra)12958
css, functions, dark-mode
Obligatory WCAG 2.2 Launch Post (aar)12957
accessibility, wcag, standards
Inclusivity in the Digital Age: The Importance of Accessibility Advocacy (uxm)12956
accessibility, dei, communication, advocacy
How to Promote Your Website: 12 Free Methods That Work (sem)12955
how-tos, marketing, blogging, content, social-media, links, keywords, seo, sem
CSS-Only Scroll-Driven Animation and Other Impossible Things (bra+)12954
videos, css, animations
The Hidden Performance Cost of Node.js and GraphQL12953
performance, nodejs, graphql
Speeding Up the JavaScript Ecosystem—the Barrel File Debacle (mar)12952
javascript, performance, architecture
Node.js vs. Django: Which Is Better for Web Development in 2023?12951
nodejs, django, comparisons
Welcome WCAG 2.2 and Goodbye Success Criterion 4.1.1 “Parsing” (cer)12950
accessibility, wcag, conformance
Naming Variables in CSS (doc)12949
css, custom-properties, naming
Don’t Use Fixed CSS “height” or “width” on Buttons, Links, or Any Other Text Containers (ash)12948
css, accessibility, usability, buttons, links
CSS 3D Text Effects12947
css, effects
Quick Tip: Decorators in TypeScript12946
tips-and-tricks, typescript
Table of Contents: The Ultimate Design Guide (nng)12945
guides, navigation, design, usability
Writing Accessible Form Messages (ons)12944
accessibility, writing, forms
Which Is the Best Image Format for Your Website?12943
images, comparisons, jpeg, png, gif, webp, avif
WCAG 2.2 and Validation12942
accessibility, wcag, conformance, quality
The Nonvisual Website (ang)12941
websites, accessibility
How Did You Switch From JavaScript to TypeScript?12940
discussions, javascript, typescript, migrating
Demystifying WCAG 2.2 (vig)12939
accessibility, wcag, standards
GitHub Actions: “NODE_OPTIONS” Is Now Restricted From “GITHUB_ENV”12938
github-actions, automation, nodejs
Understanding XSS Attacks12937
security, xss
Hey Designers, They’re Gaslighting You12936
design, career
When to Nest CSS (spa/clo)12935
css, nesting
What’s New in WCAG 2.2 (pat/tpg)12934
accessibility, wcag, standards, release-notes
What Happened to Separation of Concerns in Frontend Development (j9t)12933
maintainability, principles, css, frameworks, history
Web Content Accessibility Guidelines (WCAG) 2.2 (w3c)12932
accessibility, guidelines, wcag, standards
WCAG 2.2 Is Now a W3C Recommendation (den)12931
accessibility, wcag, standards
WCAG 2.2 Is Now a Published Web Standard12930
discussions, accessibility, wcag, standards, w3c
React Micro-Frontends Using Vite12929
micro-frontends, react, vite
Intopia Launches WCAG 2.2 Map (int)12928
accessibility, wcag, standards
An Anchored Navbar Solution (mey)12927
html, css, navigation
It’s Time to Rethink the Americans With Disabilities Act12926
accessibility, legal
Stop Publishing ESM-Only Packages, Do This Instead12925
javascript, modules, esm, commonjs
Limit the Reach of Your Selectors With the CSS “@scope” At-Rule (bra)12924
css, selectors, scope
How to Develop Terminal Productivity With Bash Aliases12923
how-tos, command-line, aliases, shells, productivity
4 Alternatives to Postman to Consider After Their Latest Update12922
apis, tooling, vs-code
Chrome Now Shows Each Active Tab’s Memory Usage (add)12921
memory, browsers, google, chrome
Accessibility vs. Inclusive Design (tbf/nng)12920
videos, accessibility, dei, comparisons
Whatever Happened to the Zend Framework (ami)12919
frameworks, php, history
The Power of Type Safety in TypeScript12918
typescript, type-safety
Still No CSS Reset (jus)12917
css, resets
Release Notes for Safari Technology Preview 180 (jon/web)12916
release-notes, browsers, apple, safari
Let’s Create a Filter Table Component in Vue12915
videos, tables, components, vuejs
Deploy and Test AWS Step Functions With Node.js (app)12914
nodejs, aws, functions, deploying, testing
Career Growth After 35: What Awaits Programmers? (the)12913
discussions, career
An Interactive Intro to CRDTs (jak)12912
introductions, javascript, types
Your Website Does Not Need JavaScript (amy)12911
videos, javascript, support
The Problem With WordPress Is Positioning, Not Plugins (geo/sma)12910
wordpress
How to Be an Accessibility Ally (mer)12909
how-tos, accessibility, community
Get Ready for Interop 2024 (jen/web)12908
interoperability, web-platform
Being Picky About a CSS Reset for Fun and Pleasure (chr)12907
css, resets
The Absolute Minimum Every Software Developer Must Know About Unicode in 2023 (Still No Excuses) (nik)12906
unicode, encoding, standards
The Most Minimal Valid HTML Document (j9t)12905
html, minimalism, conformance, templates
Return to Office Is Bullshit and Everyone Knows It (soa)12904
processes, career
Nine Things Automated Accessibility Tests Can’t Test (dav)12903
accessibility, testing, automation
How to Clear Cache and Cookies on a Customer’s Device (css)12902
how-tos, caching, cookies, testing
Have You Seen These Weird Image Tag Issues?12901
videos, css
Demystifying CSS Container Queries (mia+)12900
videos, css, container-queries
Crawlers (ada)12899
crawling, robotstxt, ai
Comparing JavaScript Bundlers: Rollup vs. Webpack vs. Parcel (kin)12898
javascript, bundling, tooling, rollup, webpack, parcel, comparisons
Monitoring a Kubernetes Application With Prometheus, Grafana, and Loki12897
videos, monitoring, kubernetes
In-Page Links for Content Navigation (nng)12896
navigation, links, usability
TypeScript Monorepo With npm Workspaces (skw)12895
monorepos, typescript, npm, architecture
The Myth of Infinite Data Growth (ger)12894
sustainability, myths
The 3 Secrets to Font Pairing12893
typography, fonts, design
Making a Website Is for Everyone (jim)12892
dei, community, career
All the Ways to Turn an Array Into an Object in JavaScript (ami)12891
javascript, arrays, objects
Managing and Mitigating Design Debt: A Solo UX Designer’s Guide12890
guides, design-debt, user-experience
Understanding the CSS Auto-Resizing Textarea Trick (sim)12889
css, forms, resizing
Test Assertion Styles in JavaScript (isa)12888
javascript, testing
Creating a Content Recommendation Plugin in 11ty12887
eleventy, content, plugins, functionality
Characteristics of Code Quality12886
research, quality
20+ Tools for Node.js Development in 202312885
nodejs, tooling, link-lists
Re-Creating the Pop-Out Hover Effect With Modern CSS (css/sma)12884
css, effects, hover
Node v20.8.0 (nod)12883
release-notes, nodejs
Naming Things Needn’t Be Hard (pau)12882
websites, naming
How I Deployed My Website as a Docker Container12881
deploying, docker, containerization
Four Reasons to Give WCAG AAA a Second Look (web)12880
accessibility, wcag, standards
Crafting Future-Ready Experiences: The Power of Progressive Web Apps (PWAs) and Offline-First Design12879
web-apps, progressive-web-apps, offline
A Socket API That Works Across JavaScript Runtimes—Announcing a WinterCG Spec and Node.js Implementation of “connect()” (jas+)12878
javascript, runtimes, apis
The Ultimate Low-Quality Image Placeholder Technique (css)12877
performance, images, web-vitals
Exploring Enhanced Patterns in WordPress 6.3 (sma)12876
wordpress
Embracing Efficiency: Shorter Work Hours for Software Developers (and Everyone Else)12875
productivity, efficiency, culture, engineering-management
Easy Dark Mode With “color-scheme” (sar)12874
slides, dark-mode, html, css, accessibility
CSS Nesting and the Cascade (jen/web)12873
css, nesting, cascade
A Comprehensive Guide to the Dangers of Regular Expressions in JavaScript (phi)12872
guides, javascript, security, regex
5 Pillars of Responsible Generative AI: A Code of Ethics for the Future12871
ai, ethics
Stop Using JS for That: Moving Features to CSS and HTML (kil)12870
videos, javascript, css, html
Best Practices for Securing Node.js Applications in Production12869
best-practices, security, nodejs
How to Make the Case for Design Systems12868
how-tos, design-systems
The Cost of Obsessing Over Design Perfection12867
design, processes, career
What Is Transpiling?12866
javascript, ecmascript, transpiling, babel
The Saga of the Closure Compiler, and Why TypeScript Won12865
javascript, google, compiling, typescript, history
SSH Keys Stolen by Stream of Malicious PyPI and npm Packages (ble)12864
security, ssh, dependencies, npm
Honey, I Shrunk the npm Package12863
dependencies, npm, compression
Frontend Monitoring: Strategies, Best Practices, Tools, and More12862
monitoring, alerting, strategies, best-practices
CSS Terminology Demystified (zor/css)12861
videos, css, terminology
An Introduction to Web Components (ami)12860
introductions, web-components
8 More Micro Tips for Remarkably Better Typography12859
typography, tips-and-tricks, legibility, readability
npm Provenance General Availability12858
github, npm, provenance, security
Optimizing Web Fonts12857
fonts, css, performance, optimization
Top 5 ARIA Implementation Errors12856
accessibility, aria, errors
Taming Tailwind (aaa)12855
tailwind, optimization
Real AI Solutions for Accessibility Challenges (equ)12854
accessibility, ai
Overlays: Just Another Disability Dongle (ons/tpg)12853
accessibility, overlays
No More 404 (rem)12852
link-rot, user-experience, quality, automation
Mastering Closures in JavaScript: A Comprehensive Guide12851
guides, closures, scope, javascript