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 respect and accountability. Hide

Frontend Dogma

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

→ 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#
Avoiding Accessibility Barriers With a Checklist for Custom Controls—Opinion16381
accessibility, mobile
Notes on Setting Up a Static Website With AWS (Route 53, S3, ACM) (j9t)16380
aws, s3
Present Technical Information Using a Storytelling Framework (nza)16379
documentation, communication, writing
Writing Effective Pull Request Descriptions: A Developer’s Guide16378
guides, version-control, documentation, code-reviews, collaboration
What’s New in React 1916377
react, vercel
Tailwind CSS Config With ESM Imports (lia)16376
tailwind, configuration, esm
Should Form Labels Be Wrapped or Separate? (sib/tpg)16375
html, forms, labels, accessibility, browsers, assistive-tech
Dreaming About Drupal [and] Its Long Term Potential16374
drupal, outlooks
Cleaning and Speeding Up the JS Ecosystem—Journey So Far16373
javascript, optimization
A Release Note for the Web Platform (pat)16372
web-platform, developer-experience, css, alt-text, ecmascript
A Complete Guide to Beginning With JavaScript (fro)16371
guides, javascript, link-lists, learning
Tackling a System’s Accessibility Without Testing (jbu+)16370
accessibility, wcag, case-studies, heuristics
Thinking About Using AI? (mrc)16369
research, ai, sustainability
Ugly Websites Sell Better16368
design, processes, testing, optimization
10 AI Dangers and Risks and How to Manage Them (rin)16367
ai, security, privacy, sustainability, legal
Under-Engineered Estimated Reading Time Feature (aar)16366
user-experience, scrolling
Sanding UI (jim)16365
forms, usability
Quick Guide to Web Typography for Developers (ole)16364
guides, typography, fonts, examples
Paying Down Tech Debt (ger)16363
technical-debt, prioritization, productivity
Another Stab at Truncated Text (geo/css)16362
design, accessibility, usability, css
llms.txt16361
websites, ai, crawling, scraping, llmstxt
CSS “@property” and the New Style (hex)16360
css
Scroll-Enhanced Experiences (car/css)16359
videos, css, scrolling
Skeleton Screens vs. Progress Bars vs. Spinners (nng)16358
videos, user-experience, performance, placeholders, progress-indicators
What Is React.js? (hey)16357
videos, react
HTML Whitespace Is Broken (dev)16356
html, whitespace
How to Deploy Node.js to AWS Lambda With OpenTofu and GitHub Actions16355
how-tos, deploying, nodejs, aws, serverless, lambda, github-actions, tooling, link-lists
Captured Custom Properties (kiz)16354
css, custom-properties
Backgrounds for the Box Model (and Why It Can Be Useful) (chr/fro)16353
css, box-model, backgrounds
“AggregateError” in JavaScript (tre)16352
javascript, errors
Get Window Size in Pure CSS16351
css, techniques
What It Is Like to Work in Meta’s (Facebook’s) Monorepo16350
facebook+meta, monorepos
Semi-Annual Reminder to Learn and Hire for Web Standards (aar)16349
learning, fundamentals, standards, html, css
Lazy Loading Isn’t Just Lazy, It’s Late: The Web Deserves Faster16348
performance, lazy-loading, web-vitals, angular, single-page-apps
I Want the Read Write Suggest-Edit Accept-Edit Update Web (tan)16347
web, indieweb
Be Careful When Using Generative Artificial Intelligence to Produce Code (cer)16346
accessibility, ai, code-generation
Reducing UX Debt (or Die Trying)16345
user-experience, design-debt
How I Created a 3.78 MB Docker Image for a JavaScript Service16344
docker, javascript
Faster Pages With React16343
react, performance
Automattic Launches Ambitious Tumblr Migration to WordPress16342
automattic, wordpress, migrating
A/B Testing 101 (nng)16341
introductions, a-b-testing, usability, user-experience
Supporting AVIF in Google Search (joh)16340
google, search, avif, images, support
Understanding Web Storage: localStorage, sessionStorage, and Cookies16339
browser-storage, cookies, javascript
Java Optionals (ada/fro)16338
java
Headings (web)16337
html, headings, accessibility
An SSR Performance Showdown (mco)16336
server-side-rendering, performance, vuejs, svelte, solidjs, preact, react, comparisons
An Enhancement to Accessible Responsive Tables (tem)16335
accessibility, tables, responsive-design, javascript
Drupal 11: New Features to Empower Ambitious Site Builders16334
drupal
Boost Your Productivity: Essential IntelliJ Tips for Developers16333
intellij-idea, code-editors, productivity, tips-and-tricks
New to the Web Platform in August (rac)16332
release-notes, web-platform, browsers, chrome, firefox
Caching Demystified: Inspect, Clear, and Disable Caches (jec)16331
videos, caching, debugging, dev-tools, chrome, browsers
Stuck in the Steps?16330
design, processes
Why Playwright Is Less Flaky Than Selenium (sea)16329
testing, flakiness, playwright, selenium, comparisons
Why I Don’t Block AI Scrapers (j9t)16328
ai, scraping, robotstxt
When Regex Goes Wrong (tre)16327
regex
What the Heck Is ARIA? A Beginner’s Guide to ARIA for Accessibility (a11)16326
videos, guides, aria, html, accessibility
Querying the Color Scheme (kiz)16325
css, container-queries, custom-properties, dark-mode
Python Developers Survey 2023 Results (jet)16324
surveys, python
Paragraphs (sco)16323
html, accessibility
OpenAI Is Shockingly Good at Unminifying Code16322
ai, openai, javascript, minification
HTTP 1 vs. HTTP 2 vs. HTTP 316321
videos, protocols, http, history, comparisons
Hidden Cost of Frontend Frameworks16320
frameworks, dependencies, simplicity
Harnessing Copilot and Other Gen-AI Tools to Increase Digital Accessibility Efficiency16319
videos, ai, microsoft, tooling, accessibility, images, alt-text
CSS Style Observer (bra)16318
packages, npm, css
JavaScript Generators Explained, but on a Senior-Level (jan)16317
javascript, functions
Release Notes for Safari Technology Preview 202 (jon/web)16316
release-notes, browsers, safari
How to Handle Errors in Next.js for Node With the App Router (app)16315
how-tos, errors, nextjs, nodejs
Building Better Logins: A UX and Accessibility Guide for Developers16314
guides, user-experience, accessibility
What’s Missing From HTML and CSS? (rac)16313
html, css
Chris Ferdinandi on ADHD, Focus, and Working in Tech (cfe+)16312
podcasts, interviews, career
Redirecting Parameters in Apache16311
apache, servers, redirecting, urls
Anchor Positioning (tab/css)16310
videos, css, anchor-positioning
The Ultimate Guide to Font Performance Optimization (deb)16309
guides, fonts, performance, optimization
The Secret Inside One Million Checkboxes16308
html, databases, community
The Dialog Element With Entry and Exit Animations (chr/fro)16307
modals, css, animations
The “aside” Element (hey)16306
html, semantics, accessibility
Multithreading in Node.js: Using Atomics for Safe Shared Memory Operations (pav)16305
nodejs, multithreading, memory
IndieWeb vs. Indie Web (fyr)16304
web, indieweb, terminology, comparisons
Shipping Tumblr and WordPress16303
migrating, wordpress
Advanced Playwright Techniques for Flawless Testing (deb)16302
videos, testing, playwright, techniques
Are Design Systems Just a Bandaid?16301
design, design-systems, product-management
A Comprehensive Guide to Understanding TypeScript Record Type16300
guides, typescript
Make Me One (Input) With Everything (mor/mat)16299
html, forms, accessibility, simplicity
Interface Segregation Principle in React16298
principles, solid, react
How to Use React Compiler—a Complete Guide (fre)16297
how-tos, guides, react, compiling
Set Up a $4/Month Hetzner VM to Skip the Serverless Tax16296
servers, serverless, hosting
Ladybird Browser: First Impressions and Easy Installation Guide16295
guides, browsers, ladybird, installing
How to Fix ESLint Violations With AI Assistance16294
how-tos, eslint, ai, automation
Is Server-Side Rendering Making a Comeback in 2024? (ele/des)16293
server-side-rendering
What Skills Should You Focus on as Junior Web Developer in 2024? (fro)16292
career, fundamentals, html, css, javascript, frameworks, tooling, learning, link-lists
How to Easily Add Dark Mode to Your Website16291
how-tos, dark-mode, html, css, javascript, functionality
Has the IndieWeb Become Irrelevant? (sta)16290
indieweb, web, fediverse
Generating Unique Random Numbers in JavaScript Using Sets (sma)16289
javascript, randomness
What RSS Needs (mno)16288
syndication, rss, atom, community
Managing Angular (mge)16287
angular, product-management, processes
Why Is Reaching WCAG Level AAA Not Recommended? (cer)16286
accessibility, wcag, standards
WCAG’s A and AA Distinction Is Mostly Academic (yat)16285
accessibility, wcag, standards
DevOps Project—the Ultimate CI/CD Corporate DevOps Pipeline Project16284
dev-ops, ci-cd, aws, docker, jenkins
Mutation-Testing Our JavaScript SDKs (get)16283
javascript, testing, case-studies
Behind the Scenes: The Making of VS Code (bur+/vsc)16282
videos, code-editors, vs-code, history
Wolvic 1.7 Released (wol)16281
release-notes, wolvic, browsers
Content Strategy: Study Guide (nng)16280
guides, content, content-strategy, training, link-lists
Is Using “aria-label” to Add Alternative Text but No “alt” Attribute Still a WCAG Fail?16279
discussions, accessibility, html, attributes, forms, labels, aria, alt-text, images
Explicitly State the Difference Between Options (nng)16278
usability, information-design
Understanding Vue’s Suspense (tre)16277
vuejs
Top Ten Git Tips and Tricks (hon)16276
git, tips-and-tricks, command-line
Improving the Screen Reader Experience for “Learn WCs” (and)16275
accessibility, user-experience, screen-readers, assistive-tech, voiceover, case-studies
Fluid Typography in Design Systems: From Design to Code (fel)16274
typography, design, design-systems, design-tokens
The Top Programming Languages 2024 (iee)16273
programming, comparisons, python, java, javascript, typescript, sql, go, html, php, lua
The Only Widely Recognized JavaScript Feature Ever Deprecated (tre)16272
javascript, history, deprecation
The Two Lines of CSS That Tanked Performance (120 FPS to 40 FPS) (and)16271
css, animations, performance
Spoiler Alert: It Needs to Be Accessible (sco)16270
accessibility, html, web-components, aria
Raw-Dogging Websites (bra)16269
html, css, javascript, tech-stacks
Mastering Typography in Logo Design (sma)16268
typography, design, images, logos
The Monospace Web16267
fonts, design
Amazon Cloud CEO Predicts a Future Where Most Software Engineers Don’t Code—and AI Does It Instead16266
ai, outlooks, career
Inside ECMAScript: JavaScript Standard Gets an Extra Stage16265
ecmascript, javascript
Google Quietly Launches New AI Crawler (sea)16264
google, ai, crawling, robotstxt
Double Your Specificity With This One Weird Trick (cir)16263
css, selectors, cascade, tips-and-tricks
5 Wasm Use Cases for Frontend Development (ele/des)16262
guest-posts, webassembly, security, performance
Web Security: Shaping the Secure Web (set/w3c)16261
web, security, w3c
Understanding WCAG 2.1’s Success Criteria 1.4.10 Reflow (mni)16260
accessibility, wcag, reflow, zooming
Tailwind Balances Abstraction and Transparency16259
tailwind
How to Create an npm Package (mat)16258
how-tos, npm, dependencies
Foundations: Labelling Text Fields With Input and Label (tet)16257
accessibility, fundamentals, forms, labels, html
Exposing Internal Methods on Vue Custom Elements (jai)16256
vuejs, javascript
Elastic Overflow Scrolling (css)16255
css, overflow, scrolling
Custom Range Slider Using Anchor Positioning and Scroll-Driven Animations (css/fro)16254
sliders, css, anchor-positioning, scrolling, animations, forms
Configuring SSH Keys for Multiple GitHub Accounts (ste)16253
github, ssh, authentication, configuration
Can You Convert a Video to Pure CSS?16252
multimedia, conversion, css, javascript
Basic Keyboard Shortcut Support for Focused Links (eri)16251
links, focus, support, browser-engines, keyboard-shortcuts, accessibility
Batteries Included Accessibility: A Pragmatic Guide to Get Started Today16250
videos, guides, introductions, accessibility
JS Dates Are About to Be Fixed (iag)16249
javascript, ecmascript
How to Create a Shortcode in WordPress (in 7 Steps)16248
how-tos, wordpress
Core Concepts to Understand in WordPress Theme Development (kin)16247
wordpress, theming
Wasp: The JavaScript Answer to Django for Web Development16246
wasp, django, comparisons
From RPGs to UX: How Progress Indicators Affect User Engagement16245
user-experience, design, progress-indicators
What Is Incident Response?16244
incident-response, security, overviews
Ryan Dahl Explains Why Deno Had to Evolve With Version 2.0 (tin)16243
podcasts, interviews, deno, runtimes
Common Misconceptions About How to Optimize LCP16242
performance, web-vitals, metrics, optimization
How to Make Your Web Page Faster Before It Even Loads (whi/get)16241
how-tos, performance, web-vitals
Top 5 HTML Features You’re Not Using (but Should Be)16240
html
Stop Using Margin Top—use Margin Bottom and Gap Instead (tom)16239
css, margins, spacing
The Case for a Better Web (uri)16238
web, link-lists
State of CSS 2024 (sac/dev)16237
surveys, css
Regexes Got Good: The History and Future of Regular Expressions in JavaScript (sma)16236
regex, javascript, history
React Is (Becoming) a Full-Stack Framework (rwi)16235
react, frameworks
Igalia Chats: The Coming Adpocalypse (bka+/iga)16234
podcasts, browsers, monetization, economics
Expert Guide: Writing HTML for Screen Reader Users (flo/a11)16233
guides, accessibility, html, aria, alt-text, writing, screen-readers
How to Browse the Web in Your Linux Terminal With Lynx16232
how-tos, lynx, browsers, command-line, unix-like
How Did We Test Hundreds of Landing Pages16231
testing, landing-pages
Accessibility Specialists Warn Against Using AI for Alt Text16230
accessibility, alt-text, images, ai
The CSS “contain” Property (pre/fro)16229
css, containment, container-queries
The “Other” C in CSS (sar/css)16228
videos, css, accessibility
What’s New in ECMAScript 2024 (paw)16227
ecmascript, standards
The Role of Sound Design in UX Design: Beyond Notifications and Alerts (uxm)16226
design, user-experience, multimedia
Line Numbers for “<textarea>” Using SVG (sto)16225
forms, javascript, svg
How Good UX Design Can Transform Lead Generation (uxm)16224
design, user-experience, user-conversion
Center Items in First Row With CSS Grid (hex)16223
css, grids, layout, centering
Cache Grab: How Much Are You Leaving on the Table? (css)16222
performance, caching
10 Python Programming Optimisation Techniques16221
python, optimization, techniques
UX Is Dead. Long Live UX.16220
user-experience, economics, history
In Defense of DRY (max)16219
maintainability, principles, link-lists
Using JavaScript Generators to Visualize Algorithms16218
javascript, algorithms, visualization
The “P” Word, Legitimacy, and Challenging Our Default Models and Frames (joh)16217
leadership, culture
How Can Accessibility Improve Your Conversion Rate Optimization Efforts? (cer)16216
accessibility, user-conversion, optimization, usability, economics
AI Paradox (j9t)16215
ai, productivity
WCAG 2.2 Summary and Breakdown (mar)16214
accessibility, wcag, guidelines, overviews
Node.js Doubles Security Releases With Newly Automated Process, Re-Evaluates Unsupported Experimental Features (sar/soc)16213
nodejs
How I Design My URLs16212
urls
Algorithms We Develop Software By (gra)16211
programming, processes, quality, best-practices
A Guide to CSS Resets16210
guides, css, resets
What Signal Are You Sending?16209
career, communication, culture
Top 10 Web Updates From Google I/O ’2416208
videos, browsers, google, chrome, apis, dev-tools
6 Best Local Directory Submission Tools Compared16207
tooling, seo, link-lists
Reckoning: The Way Out (sli)16206
javascript, performance, metrics, hiring
Just Use Postgres16205
databases, postgresql, sql, aws, dynamodb, mongodb, mysql, comparisons
Good Refactoring vs. Bad Refactoring (ste/bui)16204
refactoring, comparisons, maintenance, quality, javascript
80/20 Accessibility (mar)16203
accessibility, principles
How to Use nginx for Frontend Application Load Balancing16202
how-tos, nginx, servers, load-balancing
Brand New Performance Features in Chrome DevTools (deb)16201
browsers, chrome, dev-tools, performance, web-vitals
Designing for Accessibility: A Checklist for Designers16200
design, accessibility, checklists
Advanced Figma Components Tips and Tricks: Little Gems We Love 202416199
figma, components, tips-and-tricks
Alternatives to Using Pure Black (“#000000”) for Text and Backgrounds (ser)16198
design, colors, backgrounds, accessibility
5 Questions for Tammy Everts (tam+/fro)16197
interviews, performance, metrics, user-experience, economics
Writing Alt Text for a Scientific Figure16196
accessibility, images, alt-text, writing, information-design
How to Defend Your Design Process (vit/sma)16195
how-tos, design, processes
How Does the Browser Render HTML? (and)16194
browsers, browser-engines, rendering, html, dom, css, cssom, painting
How Are the “colspan” and “rowspan” Attributes Different? (geo/css)16193
html, attributes, tables
Captions vs. Subtitles: Leave No Viewer Behind (mer)16192
accessibility, captions, readability, multimedia, comparisons
The Hidden TypeScript Hack You Need to Know16191
typescript, hacks
Rote Learning HTML & CSS (j9t/fro)16190
books, frontend-dogma, html, css, learning
“Smart” Layouts With Container Queries (kev/css)16189
css, layout, container-queries
Reckoning: Caprock (sli)16188
javascript, performance
I Love the Web (and)16187
web, apple
How I Won $2,750 Using JavaScript, AI, and a Can of WD-4016186
javascript, ai
Django: Create Sub-Commands Within a Management Command (ada)16185
django
“blocking=render”: Why Would You Do That?! (css)16184
performance, html, rendering
Tips for Using React Testing Library to Write Unit Tests (ato)16183
react, testing, libraries, tips-and-tricks
Reckoning: Object Lesson (sli)16182
javascript, performance, metrics
Dev Encyclopedia16181
websites, terminology, concepts, learning
CSS Finally Adds Vertical Centering in 202416180
css, centering
Context Is King: Long Live the King! (llo/tpg)16179
accessibility, usability, techniques, aria
45 Visual Studio Code Shortcuts for Boosting Your Productivity16178
code-editors, vs-code, keyboard-shortcuts
The Importance of Communication in Accessibility Testing16177
accessibility, testing, communication
We’re on the Brink of Another World Browser War (fir)16176
videos, browsers, browser-wars
Start Over-Engineering Your CSS (kev/css)16175
videos, css, complexity
The “address” Element (hey)16174
html, semantics
Relative Color Syntax—Basic Use Cases (chr/fro)16173
css, functions, colors, browsers, support
Reckoning: The Landscape (sli)16172
javascript, performance, metrics, mobile
“font-size” Limbo (seb)16171
design, typography, css
The Problem With Growth: Why Everything Is Failing Now16170
processes, agile, scrum, project-management, research
ObsoHTML, the Obsolete HTML Checker (j9t)16169
packages, npm, html, quality
Implementing SAML SSO in Node.js With Microsoft Entra ID16168
authentication, nodejs, microsoft, functionality
Things to Do Before Asking “Is This Accessible?” (aar)16167
accessibility, terminology, communication
The Most Important Thing to Look at When Choosing an Accessibility Auditor (kar)16166
accessibility, auditing, vpat-acr
Action Web Components Which Span the Server-Client Divide (jar)16165
web-components, html, apis
Verso: Initial Multi-Window Support (wuy)16164
verso, browsers
Comparing Design Systems to Find the Best Qualities (hdv)16163
design-systems, quality
Common Causes of Memory Leaks in JavaScript (tre)16162
javascript, memory, garbage-collection
12 Best JavaScript Animation Libraries to Supercharge Your Web Projects in 202416161
javascript, animations, libraries, link-lists
Stop Versioning Your Docker Compose File16160
docker, versioning
JSR and Deno: Final Review (dbu)16159
jsr, deno
Exploring the Possibilities of Native JavaScript Decorators (fro)16158
javascript, software-design-patterns
Design Patterns and WCAG (gra/tet)16157
accessibility, design-patterns, wcag
Documentation and Migration: From Vue 2 to Vue 316156
videos, interviews, vuejs, documentation, migrating
The Dying Web (mre)16155
browsers, chrome, chromium, firefox, web
Now in Baseline: Animating Entry Effects (una)16154
browsers, support, web-platform, css, animations
SOLID Principles for Designers16153
design, solid, principles
WOFF File Format 2.0 (w3c)16152
woff, fonts, standards
When It Comes to Digital Accessibility Lawsuits, the Best Defense Is a Good Offense (deq)16151
accessibility, legal
We Don’t Need a Boss, We Need a Process (mia)16150
design, leadership, processes, collaboration
Good Intentions, Poor Context (tpg)16149
accessibility, microcontent, images, buttons, links
Attaching Notes to Git Branches16148
git, documentation
Announcing Official Puppeteer Support for Firefox (moz)16147
browsers, firefox, puppeteer, support
Design Tokens Demystified16146
components, design-tokens, design-systems
FastHTML: Revolutionizing Web Development With Python (raj)16145
frameworks, fasthtml, python, web-apps
WCAG 2.2 Map by Theme (hic)16144
accessibility, wcag, standards
W3C Opens Community-Wide Survey (w3c)16143
surveys, w3c, community
The “abbr” Element (hey)16142
html, semantics, accessibility
Snippets in Svelte 5 (ada/fro)16141
svelte
Creating a Personal Brand: How to Sell Yourself as a Developer16140
how-tos, career, branding
Migrating From Netlify to Cloudflare for AI Bot Protection (sia)16139
migrating, netlify, cloudflare, bots, ai, security
Moderated and Unmoderated User Testing: The Differences16138
usability, testing, comparisons
The Great npm Garbage Patch16137
dependencies, npm, spam, security
The Art of Dithering and Retro Shading for the Web (max)16136
dithering, effects, javascript
Disability Data Alarmingly Absent From AI Algorithmic Tools, Report Suggests (for)16135
accessibility, ai, tooling
The Moral Implications of Being a Moderately Successful Computer Scientist and a Woman (ire)16134
community, ethics
Drupal 11 and Beyond16133
drupal
Should Your Website Work Without JavaScript? (wes+/syn)16132
videos, javascript, support
Shifting From Delivery Mode to Product Management: Shifting the Focus of Your Sprint Review16131
agile, scrum, processes, product-management, engineering-management
Video With Alpha Transparency on the Web (jaf)16130
multimedia, transparency+opacity, backgrounds
5 Ways to Fail at Managing Tech Debt16129
technical-debt, maintenance, refactoring, strategies
What Is a Component Library and Should You Build Your Own? (and)16128
components
Verso: A Web Browser That Plays Old World Blues to Build New World Hope (sig)16127
videos, verso, browsers
The Sneaky Costs of Scaling Serverless (zac)16126
scalability, serverless, economics, vercel, aws, comparisons
The Role of Generative AI in Shaping Next-Gen UX Strategies (uxm)16125
ai, user-experience, design, strategies
Let’s Make a Simpler, More Accessible Web (cod)16124
web, web-platform, tooling, simplicity, usability, accessibility, optimization
It’s Time to Talk About “CSS5” (uti/sma)16123
css, w3c
Is CSS Grid Really Slower Than Flexbox? (ben)16122
performance, css, grids, flexbox, layout
HTML Web Components Can Have a Little Shadow DOM, as a Treat (sco)16121
html, web-components, shadow-dom, dom
Figma Typography Variables (fro)16120
figma, typography, variables
101 React Tips and Tricks for Beginners [and] Experts16119
react, tips-and-tricks, best-practices
The Benefits of Learning Programming as a Designer16118
design, career, learning, programming
How to Keep IA Projects From Going Off the Rails (jar)16117
information-architecture
European Accessibility Act Requires Culture to Shift! (cer)16116
accessibility, legal, eaa, culture, leadership
AT Is More Than Screen Readers (aar)16115
accessibility, assistive-tech, screen-readers, terminology, concepts
AI Act Is Here (alv)16114
ai, legal
Ontology Engineering for Beginners16113
owl, tooling
Setting Up CI/CD for Flutter Apps16112
flutter, ci-cd, automation
Programming, I Hate It16111
programming, career
How to Make the Internet More Accessible16110
how-tos, web, accessibility
Attitudes to Digital Accessibility 202416109
surveys, accessibility
Beyond React: How Astro and Its Server Islands Work16108
astro, frameworks, architecture
Tabs, Used Right (nng)16107
design, design-patterns, navigation, usability
What if You Used Container Units for… Everything? (chr/fro)16106
css, units, container-queries
Who Is the Fastest? Node.js, Bun.js, or Deno.js (tre)16105
performance, javascript, runtimes, nodejs, bun, deno, comparisons
What You Want Isn’t Always What You Want (cwo)16104
career
Types of Accessibility Approaches (a11)16103
accessibility, processes, career, collaboration
The Anchor Element (hey)16102
html, links, semantics, terminology, usability
“stripes()”: The Border Function You Never Knew You Needed (jos)16101
css, functions, borders
Mastering Next.js: The Ultimate Guide to Structuring Large-Scale Projects in 202416100
guides, nextjs
Advanced Use Cases of the Node.js Native Test Runner (app)16099
nodejs, testing
Figma and the Cost of Collaboration16098
figma, collaboration
The Evolution of Attention16097
design, case-studies
Cloudflare Once Again Comes Under Pressure for Enabling Abusive Sites (dan/ars)16096
cloudflare
Browsers, Cookies, and Surfing the Web: The Quirky History of Internet Lingo (moz)16095
web, terminology, history
The Anatomy of Accessible Forms: Best Practices (deq)16094
accessibility, forms, html, best-practices
New CSS Logo? (arg)16093
discussions, css
HTML Web Components Make Progressive Enhancement and CSS Encapsulation Easier (css)16092
html, web-components, principles, solid, progressive-enhancement, examples
How to Build a Multilingual Website With Nuxt.js (sma)16091
how-tos, nuxt, internationalization
How I Use “AI”16090
ai, productivity, examples
How Google Handles JavaScript Throughout the Indexing Process16089
google, seo, web-apps, javascript, history, rendering
Interop 2024: Chrome at 100% for the Accessibility Focus Area16088
interoperability, browsers, chrome, accessibility
How to Stop Form Spam Bots With Honeypot Fields16087
spam, bots, forms
The Future Is Up for Grabs When Anyone Can Make Designs16086
design, ai
Nike’s $25B Blunder Shows Us the Limits of “Data-Driven” (pav)16085
product-management, metrics
Does Screen Time Help or Hinder Creativity? (its)16084
creativity, productivity
Using Postman for API Documentation: All You Need to Know16083
apis, documentation, postman
Replacing jQuery UI Datepicker With HTML Date Input (chr)16082
jquery, html
Reading From the Clipboard in JavaScript (ray/fro)16081
javascript
Decoding WCAG: “Change of Context” and “Change of Content” (web)16080
accessibility, wcag, standards
A Handful of Reasons JavaScript Won’t Be Available (bel/pic)16079
javascript, support
Faster Continuous Integration Builds at Canva16078
ci-cd, efficiency, optimization, case-studies, canva
New to the Web Platform in July (rac)16077
release-notes, web-platform, browsers, firefox, safari, chrome
Why You Should Ship Your App, Even if It Sucks16076
web-apps, productivity
Standardization Stories (fan/css)16075
videos, web-platform, css, collaboration, standards
On Mapping the World of Frontend Development (j9t)16074
cross-posts, web-platform, learning, community, frontend-dogma
Misfire (sli)16073
web-platform, cookies, privacy, w3c
Instead of Restricting AI and Algorithms, Make Them Explainable (mfo)16072
ai, algorithms
“git push --force” and How to Deal With It (env+/evi)16071
git
Garbage Collection and Closures (jaf)16070
javascript, functions, closures, garbage-collection
Frontend Security Checklist (tre)16069
security, checklists, react
Developing a RACI Matrix for Accessibility (kar)16068
accessibility, processes, project-management
WebKit Features in Safari 17.6 (jen/web)16067
release-notes, browsers, safari, webkit
Vue and Vite Updates (eva)16066
videos, vuejs, vite
Websites Are Blocking the Wrong AI Scrapers (Because AI Companies Keep Making New Ones) (404)16065
ai, scraping, robotstxt
Flexible Network Data Preloading in Large SPAs16064
performance, single-page-apps, client-side-rendering, data-fetching, preloading
Why Unknown Types Are Useful16063
programming, typescript
What We Got Wrong About HTTP Imports (tin/den)16062
deno, jsr
WebGPU (kai+/w3c)16061
webgpu, standards
WCAG, VPAT, S508, Level A—What on Earth? (int)16060
accessibility, standards, legal, terminology, wcag, vpat-acr, section-508
Top 20 JavaScript Tricks and Tips for Every Developer16059
javascript, tips-and-tricks
Third-Party Cookies Have Got to Go (had/w3c)16058
cookies, privacy, web-platform
The Art of Clean Code: Mastering the SOLID Principles16057
quality, principles, solid
Servo: A Web Rendering Engine for the Future (reg/iga)16056
videos, browser-engines, servo
Patterns for Memory Efficient DOM Manipulation With Modern Vanilla JavaScript (fro)16055
javascript, memory, dom, software-design-patterns
Have It All: External, Styleable, and Scalable SVG (sco)16054
images, svg, css
Accessible Heading Structures for Home Pages (pop)16053
accessibility, headings, homepages
From Parcel to Vite: A Short Story of a 100K LOC Migration16052
migrating, parcel, vite
Designing for Forgiveness: How to Create Error-Tolerant Interfaces16051
design, interaction-design, errors, user-experience
User “Wants” vs. Accessibility (tem)16050
accessibility, usability
Laravel vs. Rails for JavaScript Developers16049
videos, laravel, ruby-on-rails, comparisons
Is It Okay to Make “connectedCallback” Async? (nol)16048
javascript, callbacks, asynchronicity, web-components
Building an “npm create” Package (ach)16047
npm
Automated Ways to Security Audit Your Website16046
security, auditing, automation, tooling
You Can Run Java Like Python Now16045
java, python
The Infuriating Inefficiency of Accessibility Audits (yat)16044
accessibility, auditing, efficiency
Popover API 101 (ami)16043
introductions, pop-overs, apis
A Different Way to Think About TypeScript16042
typescript
What a New Accessibility Class Action Lawsuit Means for Agencies16041
accessibility, legal, business-relations
Green Accessibility for Web Developers16040
videos, accessibility, sustainability
Why the jQuery Creator Uses React and TypeScript (jer+/syn)16039
podcasts, interviews, react, jquery, typescript
What I Learned From Making My Own Design System (pjo)16038
design-systems, lessons
V8 JavaScript Engine: Let’s Read the Code (ant)16037
videos, v8, javascript-engines, javascript
Node.js Adds Experimental Support for TypeScript (sar/soc)16036
nodejs, typescript, experiments
Information Scent: How Users Decide Where to Click16035
information-scent, links, navigation, usability
Vanilla React (rea)16034
videos, react, routing
Cross Platform React (rea)16033
videos, react, native, outlooks
Why Designers Don’t Like Design Systems16032
design, design-systems, creativity
Measuring Design System Compliance of Your Teams16031
design-systems, compliance
React for Two Computers (dan/rea)16030
videos, react
And Now You Understand React Server Components (ken/rea)16029
videos, react, components
Let’s Break React’s Rules (rea)16028
videos, react, hooks
Secure Node.js Applications From Supply Chain Attacks16027
nodejs, security, best-practices, dependencies
Closing the Designer–Developer Gap16026
design, career, collaboration, processes
Benchmarking AWS Lambda Cold Starts Across JavaScript Runtimes (den)16025
deno, aws, serverless, lambda, javascript, runtimes, performance, comparisons
Assessing Components and Patterns for WCAG 2.216024
accessibility, wcag, components, design-patterns
The User Location Is a Lie (aus)16023
geolocation, javascript, apis
The “of S” Syntax in “:nth-child()” (mat)16022
css, selectors
Pop(over) the Balloons (css)16021
html, disclosure-widgets, pop-overs, css
How to Get the Width/Height of Any Element in Only CSS (css/fro)16020
css
AI Crawlers Need to Be More Respectful (eri/rea)16019
ai, crawling, traffic, metrics
Rust Is Revolutionizing JavaScript Development16018
bundling, tooling, rust, javascript
The AI Job Interviewer Will See You Now (res)16017
ai, hiring, career
Growing a Design System Organically16016
design-systems, case-studies, scalability
Designing Design Systems: Constructing an Icon System (ado)16015
design, design-systems, icons, images, case-studies
Understanding AbortController in Node.js: A Complete Guide (bet)16014
guides, nodejs, javascript
What to Expect When You’re Optimizing (tka)16013
performance, optimization
My Favorite Interview Questions for QA Engineers16012
interviewing, quality
Improved Error Messaging for “require(esm)” in Node.js (zac)16011
eleventy
How to Choose the Best Rendering Strategy for Your App16010
how-tos, rendering, strategies, server-side-rendering, client-side-rendering, incremental-static-regeneration, comparisons
Learn CSS Grid First (5t3+/odd)16009
videos, css, grids, layout
Introduction to XAML: A Beginner’s Guide16008
introductions, guides, xaml
What’s New in WebGPU (Chrome 127)16007
release-notes, webgpu, browsers, chrome
Why Not All Voices Should Be Equal in the Design Process16006
design, policies, prioritization, dei
CSS “font-size-adjust” Is Now in Baseline (rac)16005
css, typography, browsers, support, web-platform
The Backlash Against AI Scraping Is Real and Measurable (404)16004
ai, scraping, robotstxt
Math4Devs16003
websites, javascript, math
CSS Scroll Snap Module Level 2 (tab+/w3c)16002
standards, css, scrolling
Clip Pathing Color Changes (chr/fro)16001
css, clipping, masking, colors
A New Path for Privacy Sandbox on the Web16000
browsers, chrome, cookies, privacy, apis, web-platform
What’s New for JavaScript Developers in ECMAScript 202415999
javascript, ecmascript, standards, promises, unicode, webassembly
How to Create Fake Back-End Using IndexedDB15998
how-tos, databases, indexeddb, browser-storage, javascript
Why You Should Have a Brag Document15997
career, documentation
Seriously, You Need to Learn Git (der)15996
git, command-line
“Practical SVG” Is Now Free to Read Online (chr)15995
books, images, svg
Learn Web Components (and)15994
websites, courses, web-components, html, css, dom, javascript
50 TypeScript F*ck Ups15993
books, typescript, mistakes
20 Super Useful CSS Animation Libraries15992
css, animations, libraries, link-lists
Flutter Unit Testing: Understanding “setUp()” and “setUpAll()”15991
flutter, testing
So You Think You Know Box Shadows?15990
shadows, javascript
Better Ways to Use Async Functions in JavaScript15989
javascript, asynchronicity, functions, promises
After CrowdStrike, Programmers Deserve Consequences15988
programming, career, quality
CSS Grid Areas (sha)15987
css, grids, layout
State of Developer Experience 202415986
research, developer-experience
Providing Type Definitions for CSS With “@property” (5t3)15985
css, custom-properties
Macro vs. Micro Conversions (nng)15984
user-conversion, concepts, comparisons
Architecture in an Agile World (may)15983
architecture, agile, processes
State of React 2023 [Results] (sac/dev)15982
surveys, metrics, react
Why Is Spawning a New Process in Node So Slow? (val)15981
nodejs, performance, comparisons
The Web We Want: A Beginner’s Guide to the IndieWeb (pau)15980
slides, guides, web, indieweb
Mapping the Landscape of Gen-AI Product User Experience (gen)15979
ai, overviews
Introducing Svelte 5 (ada/fro)15978
introductions, svelte, release-notes
Getting to the Bottom of Minimum WCAG-Conformant Interactive Element Size (eri/sma)15977
accessibility, design, wcag, css
Don’t Use JS for That: Moving Features to CSS and HTML (kil/jsc)15976
videos, javascript, css, html
CSS Stuff I’m Excited After the Last CSSWG Meeting (mon/css)15975
css, functions, transitions, anchor-positioning
Using pnpm on Heroku15974
pnpm, heroku
The Cloud Run Security Gap You Didn’t Know You Had (and How to Fix It)15973
security, gcp
Override HTTP Response Headers (pat/dev)15972
http, http-headers, dev-tools, browsers, chrome, edge
You’ll Write Less Code With Svelte 5.0, Promises Rich Harris15971
svelte
Breaking Bad News: How to Present Negative UX Research Findings (coo)15970
user-experience, research, communication, how-tos
How to Make Tables Fit on Small Screens15969
how-tos, design, responsive-design, information-design, tables, mobile
How to Incorporate Accessibility Into Your Agile Sprints (mic)15968
how-tos, accessibility, agile, processes, technical-debt
Testing Best Practices for Web Apps15967
videos, testing, best-practices, web-apps
Thoughts on a Global Design System (bka)15966
design-systems
The Pitfalls of In-App Browsers (fro)15965
browsers, mobile, privacy, security, user-experience
Summary of the June 2024 TC39 Plenary in Helsinki (iga)15964
ecmascript, javascript
Styling Tables the Modern CSS Way (mic/pic)15963
css, responsive-design, tables
Can AI Be Used to Write Good Descriptive Alt Text for Images in 2024? (the)15962
accessibility, alt-text, images, ai
Node v22.5.0 (Current) (nod)15961
release-notes, nodejs
Alternative Text in Action15960
accessibility, images, alt-text, writing, examples
A Plea for the Lost Practice of Information Architecture15959
information-architecture, history, link-lists
Expert Handling of Multiple Dimensions of Data (jun)15958
information-design
Flat vs. Deep Hierarchies in Information Architecture (IA) (nng)15957
videos, information-architecture, comparisons
Wait, What’s the Difference Between “:host”, “:host()”, and “:host-context()”?! (and)15956
web-components, css, selectors
Viewport Height and Width Units in Modern CSS15955
viewport, css, units
Named Alternates for WordPress (ede)15954
html, wordpress
Private Browsing 2.0 (wil+/web)15953
browsers, safari, webkit, privacy
It’s Official, Meteor 3.0 Official Release Is Out!15952
release-notes, meteor
Software Testing Fundamentals15951
fundamentals, testing
How to Engineer Your Developer Blog Posts to Have Bigger Impact (pgc)15950
videos, how-tos, blogging, communication, developer-relations
Get the Screen Width and Height Without JavaScript (css)15949
css, tips-and-tricks
Everybody’s Free (to Write Websites) (sar)15948
web, indieweb, blogging, writing
Cloudflare Reports Almost 7% of Internet Traffic Is Malicious (sjv/zdn)15947
web, traffic
Embracing Functional CSS: Have We Moved On?15946
css, presentational-html
13 Cool IntelliJ Features (You Probably Didn’t Know) (das)15945
videos, intellij-idea, code-editors
Character Modeling in CSS (jul/css)15944
videos, css, design, creativity, effects
An Update on Invokers: Invoker Commands in HTML (uti)15943
html, modals, pop-overs
What ARIA Still Does Not Do (ste)15942
html, aria, accessibility, standards
To Hell With the Business Case, Again (mat)15941
accessibility, economics
Thoughts on CSS in 2024 (j9t)15940
css, selectors, resets, logical-properties, custom-properties
JavaScript Event Loop: A Deep Dive15939
javascript, event-loop, events, deep-dives
Getting Stuck: All the Ways “position: sticky” Can Fail (pol)15938
css, layout
CSS Selectors (geo/css)15937
css, selectors, overviews
Why Designers Need to Be More Like Gardeners15936
design, sustainability
19 Microservices Patterns for System Design Interviews15935
interviewing, architecture, system-design, microservices
Verso: A New Browser Based on Servo15934
browsers, verso, servo
It’s Really This Thing That Gets Me (chr)15933
accessibility, overlays
Content Strategy vs. UX Writing (nng)15932
content, content-strategy, writing, user-experience, comparisons, concepts
“@property”: Next-Gen CSS Variables Now With Universal Browser Support (una)15931
css, variables, browsers, support, web-platform
Going With the PDF Reflow (ons/tpg)15930
accessibility, wcag, pdf
How to Add and Update Social Image Previews in WordPress15929
social-media, wordpress, plugins, testing
From Web to Native With React15928
react, migrating
Converging Web Frameworks (mge)15927
videos, frameworks
The Future of Serverless Is WebAssembly15926
videos, serverless, webassembly, outlooks
How to Test Web Applications15925
videos, how-tos, testing, web-apps
3 Design Tips From a Gorgeous New Landing Page15924
videos, design, tips-and-tricks, landing-pages
25 Open Source AI Tools to Cut Your Development Time in Half15923
ai, tooling, productivity, foss, link-lists
Hiring, Lip Service, and Inclusion15922
hiring, interviewing, dei, communication
HTML and CSS Techniques for Inverting Colors15921
css, filters, blend-modes, techniques, colors
Feature Detect CSS “@starting-style” Support (bra)15920
css, transitions, feature-detection, support, browsers
Misconceptions About View Transitions (bra)15919
css, view-transitions, apis
A Guide to Reading and Writing Node.js Streams (mco/pla)15918
guides, nodejs, streaming
Learn About What’s New in Angular 18 From Rakia Ben Sassi (rak+)15917
videos, angular
Why “page.goto()” Is Slowing Down Your Playwright Tests (ste)15916
playwright
Bad Design Is Like a Virus: Design Defects and Latent Failures15915
design
The Bag of Tricks for View Transitions (mar/vtb)15914
websites, css, view-transitions
Introducing @let in Angular (ang)15913
introductions, angular
Rian Rietveld on Understanding the European Accessibility Act and Its Impact on Websites (nat+)15912
podcasts, interviews, accessibility, legal, eaa, wordpress
Homepage Design: 4 Common Mistakes (nng)15911
videos, homepages, design, usability, mistakes
What Is Joomla: The Ultimate Guide15910
guides, content-management, joomla
Transitive Optimization Considered—Interesting (j9t)15909
optimization
Single-Directionally Allowed Overflow (chr/fro)15908
css, overflow
Publishing a TypeScript Module to npm vs. JSR (den)15907
videos, typescript, modules, dependencies, npm, jsr, comparisons
How to Check and Document Design Accessibility in Your Mockups (ste)15906
how-tos, auditing, documentation, prototyping, design, accessibility
Supply Chain Security in npm—We Can Be Optimistic About the Future15905
npm, dependencies, security, provenance
Designing Multimodal Interfaces: Voice + Screen15904
design, voice, prototyping
How I Develop Successful Link Building Strategies for My Clients (moz)15903
seo, strategies, links
A Quick-Ish Accessibility Review: shadcn/ui Charts (ash)15902
accessibility, information-design, shadcn, tooling, auditing, link-lists
Leaner npm Packument (Metadata) Contents15901
npm
Exploring the Challenges in Creating an Accessible Sortable List (Drag-and-Drop)15900
drag-and-drop, accessibility, keyboard-navigation
5 Questions for Miriam Suzanne (mia+/fro)15899
interviews, css, dei, learning
Zoom, Zoom, and Zoom (mia/odd)15898
zooming, css
The Software Engineering Industry in 2024: What Changed in 2 Years, Why, and What Is Next (ger)15897
videos, career, outlooks
The Magic of Clip Path (emi)15896
css, clipping, masking, effects
Playwright vs. Puppeteer: Which Is Better in 2024? (api)15895
playwright, puppeteer, automation, testing, tooling, comparisons
“If” CSS Gets Inline Conditionals (geo/css)15894
css, container-queries, conditionals
Don’t Use web.dev for Accessibility Info (aar)15893
accessibility, learning
15 Page Speed Optimizations That Sites Ignore (at Their Own Risk) (tam/spe)15892
performance, optimization
Interop 2024 Mid-Year Update (rac)15891
interoperability, web-platform, browsers, support
Utility First CSS Isn’t Inline Styles (css)15890
videos, css, presentational-html, atomic-css, caching
Tech Interviews Are Changing—Not for the Better15889
interviewing, career
State of Text Rendering 202415888
fonts, rendering
How to Transform Your Approach to Digital Accessibility From a Reactive Break-Fix Cycle to a Proactive Shift Left Approach (deq)15887
how-tos, accessibility, processes, best-practices
How Keyboard Navigation Works in a CSS Game (css/fro)15886
keyboard-navigation, css, sass
AI Unplugged: Rise (and Fall) of the Robots(.txt)15885
ai, robotstxt, scraping
50 Basic Linux Commands15884
unix-like, command-line
What Is Ladybird? Everything We Know About the New Browser and Web Engine (nim)15883
browsers, browser-engines, ladybird
Sneaky React Memory Leaks: How the React Compiler Won’t Save You15882
react, memory, compiling