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 (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#
Writing Alt Text for a Scientific Figure15958
accessibility, images, alt-text, writing, information-design
How to Defend Your Design Process (vit/sma)15957
how-tos, design, processes
How Does the Browser Render HTML? (and)15956
browsers, browser-engines, rendering, html, dom, css, cssom, painting
How Are the “colspan” and “rowspan” Attributes Different? (geo/css)15955
html, attributes, tables
Captions vs. Subtitles: Leave No Viewer Behind (mer)15954
accessibility, captions, readability, multimedia, comparisons
The Hidden TypeScript Hack You Need to Know15953
typescript, hacks
Rote Learning HTML & CSS (j9t/fro)15952
books, frontend-dogma, html, css, learning
“Smart” Layouts With Container Queries (kev/css)15951
css, layout, container-queries
Reckoning: Caprock (sli)15950
javascript, performance
I Love the Web (and)15949
web, apple
How I Won $2,750 Using JavaScript, AI, and a Can of WD-4015948
javascript, ai
Django: Create Sub-Commands Within a Management Command (ada)15947
django
“blocking=render”: Why Would You Do That?! (css)15946
performance, html, rendering
Tips for Using React Testing Library to Write Unit Tests (ato)15945
react, testing, libraries, tips-and-tricks
Reckoning: Object Lesson (sli)15944
javascript, performance, metrics
Dev Encyclopedia15943
websites, terminology, concepts, learning
CSS Finally Adds Vertical Centering in 202415942
css, centering
Context Is King: Long Live the King! (llo/tpg)15941
accessibility, usability, techniques, aria
45 Visual Studio Code Shortcuts for Boosting Your Productivity15940
code-editors, vs-code, keyboard-shortcuts
The Importance of Communication in Accessibility Testing15939
accessibility, testing, communication
We’re on the Brink of Another World Browser War (fir)15938
videos, browsers, browser-wars
Start Over-Engineering Your CSS (kev/css)15937
videos, css, complexity
The “address” Element (hey)15936
html, semantics
Relative Color Syntax—Basic Use Cases (chr/fro)15935
css, functions, colors, browsers, support
Reckoning: The Landscape (sli)15934
javascript, performance, metrics, mobile
“font-size” Limbo (seb)15933
design, typography, css
The Problem With Growth: Why Everything Is Failing Now15932
processes, agile, scrum, project-management, research
ObsoHTML, the Obsolete HTML Checker (j9t)15931
packages, npm, html, quality
Implementing SAML SSO in Node.js With Microsoft Entra ID15930
authentication, nodejs, microsoft, functionality
Things to Do Before Asking “Is This Accessible?” (aar)15929
accessibility, terminology, communication
The Most Important Thing to Look at When Choosing an Accessibility Auditor (kar)15928
accessibility, auditing, vpat-acr
Action Web Components Which Span the Server-Client Divide (jar)15927
web-components, html, apis
Verso: Initial Multi-Window Support (wuy)15926
verso, browsers
Comparing Design Systems to Find the Best Qualities (hdv)15925
design-systems, quality
Common Causes of Memory Leaks in JavaScript (tre)15924
javascript, memory, garbage-collection
12 Best JavaScript Animation Libraries to Supercharge Your Web Projects in 202415923
javascript, animations, libraries, link-lists
Stop Versioning Your Docker Compose File15922
docker, versioning
JSR and Deno: Final Review (dbu)15921
jsr, deno
Exploring the Possibilities of Native JavaScript Decorators (fro)15920
javascript, software-design-patterns
Design Patterns and WCAG (gra/tet)15919
accessibility, design-patterns, wcag
Documentation and Migration: From Vue 2 to Vue 315918
videos, interviews, vuejs, documentation, migrating
The Dying Web (mre)15917
browsers, chrome, chromium, firefox, web
Now in Baseline: Animating Entry Effects (una)15916
browsers, support, web-platform, css, animations
SOLID Principles for Designers15915
design, solid, principles
WOFF File Format 2.0 (w3c)15914
woff, fonts, standards
When It Comes to Digital Accessibility Lawsuits, the Best Defense Is a Good Offense (deq)15913
accessibility, legal
We Don’t Need a Boss, We Need a Process (mia)15912
design, leadership, processes, collaboration
Good Intentions, Poor Context (tpg)15911
accessibility, microcontent, images, buttons, links
Attaching Notes to Git Branches15910
git, documentation
Announcing Official Puppeteer Support for Firefox (moz)15909
browsers, firefox, puppeteer, support
Design Tokens Demystified15908
components, design-tokens, design-systems
FastHTML: Revolutionizing Web Development With Python (raj)15907
frameworks, fasthtml, python, web-apps
WCAG 2.2 Map by Theme (hic)15906
accessibility, wcag, standards
W3C Opens Community-Wide Survey (w3c)15905
surveys, w3c, community
The “abbr” Element (hey)15904
html, semantics, accessibility
Snippets in Svelte 5 (ada/fro)15903
svelte
Creating a Personal Brand: How to Sell Yourself as a Developer15902
how-tos, career, branding
Migrating From Netlify to Cloudflare for AI Bot Protection (sia)15901
migrating, netlify, cloudflare, bots, ai, security
Moderated and Unmoderated User Testing: The Differences15900
usability, testing, comparisons
The Great npm Garbage Patch15899
dependencies, npm, spam, security
The Art of Dithering and Retro Shading for the Web (max)15898
dithering, effects, javascript
Disability Data Alarmingly Absent From AI Algorithmic Tools, Report Suggests (for)15897
accessibility, ai, tooling
The Moral Implications of Being a Moderately Successful Computer Scientist and a Woman (ire)15896
community, ethics
Drupal 11 and Beyond15895
drupal
Should Your Website Work Without JavaScript? (wes+/syn)15894
videos, javascript, support
Shifting From Delivery Mode to Product Management: Shifting the Focus of Your Sprint Review15893
agile, scrum, processes, product-management, engineering-management
Video With Alpha Transparency on the Web (jaf)15892
multimedia, transparency+opacity, backgrounds
5 Ways to Fail at Managing Tech Debt15891
technical-debt, maintenance, refactoring, strategies
What Is a Component Library and Should You Build Your Own? (and)15890
components
Verso: A Web Browser That Plays Old World Blues to Build New World Hope (sig)15889
videos, verso, browsers
The Sneaky Costs of Scaling Serverless (zac)15888
scalability, serverless, economics, vercel, aws, comparisons
The Role of Generative AI in Shaping Next-Gen UX Strategies (uxm)15887
ai, user-experience, design, strategies
Let’s Make a Simpler, More Accessible Web (cod)15886
web, web-platform, tooling, simplicity, usability, accessibility, optimization
It’s Time to Talk About “CSS5” (uti/sma)15885
css, w3c
Is CSS Grid Really Slower Than Flexbox? (ben)15884
performance, css, grids, flexbox, layout
HTML Web Components Can Have a Little Shadow DOM, as a Treat (sco)15883
html, web-components, shadow-dom, dom
Figma Typography Variables (fro)15882
figma, typography, variables
101 React Tips and Tricks for Beginners [and] Experts15881
react, tips-and-tricks, best-practices
The Benefits of Learning Programming as a Designer15880
design, career, learning, programming
How to Keep IA Projects From Going Off the Rails (jar)15879
information-architecture
European Accessibility Act Requires Culture to Shift! (cer)15878
accessibility, legal, eaa, culture, leadership
AT Is More Than Screen Readers (aar)15877
accessibility, assistive-tech, screen-readers, terminology, concepts
AI Act Is Here (alv)15876
ai, legal
Ontology Engineering for Beginners15875
owl, tooling
Setting Up CI/CD for Flutter Apps15874
flutter, ci-cd, automation
Programming, I Hate It15873
programming, career
How to Make the Internet More Accessible15872
how-tos, web, accessibility
Attitudes to Digital Accessibility 202415871
surveys, accessibility
Beyond React: How Astro and Its Server Islands Work15870
astro, frameworks, architecture
Tabs, Used Right (nng)15869
design, design-patterns, navigation, usability
What if You Used Container Units for… Everything? (chr/fro)15868
css, units, container-queries
Who Is the Fastest? Node.js, Bun.js, or Deno.js (tre)15867
performance, javascript, runtimes, nodejs, bun, deno, comparisons
What You Want Isn’t Always What You Want (cwo)15866
career
Types of Accessibility Approaches (a11)15865
accessibility, processes, career, collaboration
The Anchor Element (hey)15864
html, links, semantics, terminology, usability
“stripes()”: The Border Function You Never Knew You Needed (jos)15863
css, functions, borders
Mastering Next.js: The Ultimate Guide to Structuring Large-Scale Projects in 202415862
guides, nextjs
Advanced Use Cases of the Node.js Native Test Runner (app)15861
nodejs, testing
Figma and the Cost of Collaboration15860
figma, collaboration
The Evolution of Attention15859
design, case-studies
Cloudflare Once Again Comes Under Pressure for Enabling Abusive Sites (dan/ars)15858
cloudflare
Browsers, Cookies, and Surfing the Web: The Quirky History of Internet Lingo (moz)15857
web, terminology, history
The Anatomy of Accessible Forms: Best Practices (deq)15856
accessibility, forms, html, best-practices
New CSS Logo? (arg)15855
discussions, css
HTML Web Components Make Progressive Enhancement and CSS Encapsulation Easier (css)15854
html, web-components, principles, solid, progressive-enhancement, examples
How to Build a Multilingual Website With Nuxt.js (sma)15853
how-tos, nuxt, internationalization
How I Use “AI”15852
ai, productivity, examples
How Google Handles JavaScript Throughout the Indexing Process15851
google, seo, web-apps, javascript, history, rendering
Interop 2024: Chrome at 100% for the Accessibility Focus Area15850
interoperability, browsers, chrome, accessibility
How to Stop Form Spam Bots With Honeypot Fields15849
spam, bots, forms
The Future Is Up for Grabs When Anyone Can Make Designs15848
design, ai
Nike’s $25B Blunder Shows Us the Limits of “Data-Driven” (pav)15847
product-management, metrics
Does Screen Time Help or Hinder Creativity? (its)15846
creativity, productivity
Using Postman for API Documentation: All You Need to Know15845
apis, documentation, postman
Replacing jQuery UI Datepicker With HTML Date Input (chr)15844
jquery, html
Reading From the Clipboard in JavaScript (ray/fro)15843
javascript
Decoding WCAG: “Change of Context” and “Change of Content” (web)15842
accessibility, wcag, standards
A Handful of Reasons JavaScript Won’t Be Available (bel/pic)15841
javascript, support
New to the Web Platform in July (rac)15840
release-notes, web-platform, browsers, firefox, safari, chrome
Why You Should Ship Your App, Even if It Sucks15839
web-apps, productivity
Faster Continuous Integration Builds at Canva15838
ci-cd, efficiency, optimization, case-studies
Standardization Stories (fan/css)15837
videos, web-platform, css, collaboration, standards
On Mapping the World of Frontend Development (j9t)15836
cross-posts, web-platform, learning, community, frontend-dogma
Misfire (sli)15835
web-platform, cookies, privacy, w3c
Instead of Restricting AI and Algorithms, Make Them Explainable (mfo)15834
ai, algorithms
“git push --force” and How to Deal With It (env+/evi)15833
git
Garbage Collection and Closures (jaf)15832
javascript, functions, closures, garbage-collection
Frontend Security Checklist (tre)15831
security, checklists, react
Developing a RACI Matrix for Accessibility (kar)15830
accessibility, processes, project-management
WebKit Features in Safari 17.6 (jen/web)15829
release-notes, browsers, safari, webkit
Vue and Vite Updates (eva)15828
videos, vuejs, vite
Websites Are Blocking the Wrong AI Scrapers (Because AI Companies Keep Making New Ones) (404)15827
ai, scraping, robotstxt
Flexible Network Data Preloading in Large SPAs15826
performance, single-page-apps, client-side-rendering, data-fetching, preloading
Why Unknown Types Are Useful15825
programming, typescript
What We Got Wrong About HTTP Imports (tin/den)15824
deno, jsr
WebGPU (kai+/w3c)15823
webgpu, standards
WCAG, VPAT, S508, Level A—What on Earth? (int)15822
accessibility, standards, legal, terminology, wcag, vpat-acr, section-508
Top 20 JavaScript Tricks and Tips for Every Developer15821
javascript, tips-and-tricks
Third-Party Cookies Have Got to Go (had/w3c)15820
cookies, privacy, web-platform
The Art of Clean Code: Mastering the SOLID Principles15819
quality, principles, solid
Servo: A Web Rendering Engine for the Future (reg/iga)15818
videos, browser-engines, servo
Patterns for Memory Efficient DOM Manipulation With Modern Vanilla JavaScript (fro)15817
javascript, memory, dom, software-design-patterns
Have It All: External, Styleable, and Scalable SVG (sco)15816
images, svg, css
Accessible Heading Structures for Home Pages (pop)15815
accessibility, headings, homepages
From Parcel to Vite: A Short Story of a 100K LOC Migration15814
migrating, parcel, vite
Designing for Forgiveness: How to Create Error-Tolerant Interfaces15813
design, interaction-design, errors, user-experience
User “Wants” vs. Accessibility (tem)15812
accessibility, usability
Laravel vs. Rails for JavaScript Developers15811
videos, laravel, ruby-on-rails, comparisons
Is It Okay to Make “connectedCallback” Async? (nol)15810
javascript, callbacks, asynchronicity, web-components
Building an “npm create” Package (ach)15809
npm
Automated Ways to Security Audit Your Website15808
security, auditing, automation, tooling
You Can Run Java Like Python Now15807
java, python
The Infuriating Inefficiency of Accessibility Audits (yat)15806
accessibility, auditing, efficiency
Popover API 101 (ami)15805
introductions, pop-overs, apis
A Different Way to Think About TypeScript15804
typescript
What a New Accessibility Class Action Lawsuit Means for Agencies15803
accessibility, legal, business-relations
Green Accessibility for Web Developers15802
videos, accessibility, sustainability
Why the jQuery Creator Uses React and TypeScript (jer+/syn)15801
podcasts, interviews, react, jquery, typescript
What I Learned From Making My Own Design System (pjo)15800
design-systems, lessons
V8 JavaScript Engine: Let’s Read the Code (ant)15799
videos, v8, javascript-engines, javascript
Node.js Adds Experimental Support for TypeScript (sar/soc)15798
nodejs, typescript, experiments
Information Scent: How Users Decide Where to Click15797
information-scent, links, navigation, usability
Cross Platform React (rea)15796
videos, react, native, outlooks
Why Designers Don’t Like Design Systems15795
design, design-systems, creativity
Measuring Design System Compliance of Your Teams15794
design-systems, compliance
React for Two Computers (dan/rea)15793
videos, react
And Now You Understand React Server Components (ken/rea)15792
videos, react, components
Let’s Break React’s Rules (rea)15791
videos, react, hooks
Vanilla React (rea)15790
videos, react, routing
Secure Node.js Applications From Supply Chain Attacks15789
nodejs, security, best-practices, dependencies
Closing the Designer–Developer Gap15788
design, career, collaboration, processes
Benchmarking AWS Lambda Cold Starts Across JavaScript Runtimes (den)15787
deno, aws, serverless, lambda, javascript, runtimes, performance, comparisons
Assessing Components and Patterns for WCAG 2.215786
accessibility, wcag, components, design-patterns
The User Location Is a Lie (aus)15785
geolocation, javascript, apis
The “of S” Syntax in “:nth-child()” (mat)15784
css, selectors
Pop(over) the Balloons (css)15783
html, disclosure-widgets, pop-overs, css
How to Get the Width/Height of Any Element in Only CSS (css/fro)15782
css
AI Crawlers Need to Be More Respectful (eri/rea)15781
ai, crawling, traffic, metrics
The AI Job Interviewer Will See You Now (res)15780
ai, hiring, career
Growing a Design System Organically15779
design-systems, case-studies, scalability
Designing Design Systems: Constructing an Icon System (ado)15778
design, design-systems, icons, images, case-studies
Understanding AbortController in Node.js: A Complete Guide (bet)15777
guides, nodejs, javascript
What to Expect When You’re Optimizing (tka)15776
performance, optimization
Rust Is Revolutionizing JavaScript Development15775
bundling, tooling, rust, javascript
My Favorite Interview Questions for QA Engineers15774
interviewing, quality
Improved Error Messaging for “require(esm)” in Node.js (zac)15773
eleventy
How to Choose the Best Rendering Strategy for Your App15772
how-tos, rendering, strategies, server-side-rendering, client-side-rendering, incremental-static-regeneration, comparisons
Learn CSS Grid First (5t3+/odd)15771
videos, css, grids, layout
Introduction to XAML: A Beginner’s Guide15770
introductions, guides, xaml
What’s New in WebGPU (Chrome 127)15769
release-notes, webgpu, browsers, chrome
Why Not All Voices Should Be Equal in the Design Process15768
design, policies, prioritization, dei
CSS “font-size-adjust” Is Now in Baseline (rac)15767
css, typography, browsers, support, web-platform
The Backlash Against AI Scraping Is Real and Measurable (404)15766
ai, scraping, robotstxt
Math4Devs15765
websites, javascript, math
CSS Scroll Snap Module Level 2 (tab+/w3c)15764
standards, css, scrolling
Clip Pathing Color Changes (chr/fro)15763
css, clipping, masking, colors
A New Path for Privacy Sandbox on the Web15762
browsers, chrome, cookies, privacy, apis, web-platform
What’s New for JavaScript Developers in ECMAScript 202415761
javascript, ecmascript, standards, promises, unicode, webassembly
How to Create Fake Back-End Using IndexedDB15760
how-tos, databases, indexeddb, browser-storage, javascript
Why You Should Have a Brag Document15759
career, documentation
Seriously, You Need to Learn Git (der)15758
git, command-line
“Practical SVG” Is Now Free to Read Online (chr)15757
books, images, svg
Learn Web Components (and)15756
websites, courses, web-components, html, css, dom, javascript
50 TypeScript F*ck Ups15755
books, typescript, mistakes
20 Super Useful CSS Animation Libraries15754
css, animations, libraries, link-lists
Flutter Unit Testing: Understanding “setUp()” and “setUpAll()”15753
flutter, testing
So You Think You Know Box Shadows?15752
shadows, javascript
Better Ways to Use Async Functions in JavaScript15751
javascript, asynchronicity, functions, promises
After CrowdStrike, Programmers Deserve Consequences15750
programming, career, quality
CSS Grid Areas (sha)15749
css, grids, layout
State of Developer Experience 202415748
research, developer-experience
Providing Type Definitions for CSS With “@property” (5t3)15747
css, custom-properties
Macro vs. Micro Conversions (nng)15746
user-conversion, concepts, comparisons
Architecture in an Agile World (may)15745
architecture, agile, processes
State of React 2023 [Results] (sac/dev)15744
surveys, metrics, react
Why Is Spawning a New Process in Node So Slow? (val)15743
nodejs, performance, comparisons
The Web We Want: A Beginner’s Guide to the IndieWeb (pau)15742
slides, guides, web, indieweb
Mapping the Landscape of Gen-AI Product User Experience (gen)15741
ai, overviews
Introducing Svelte 5 (ada/fro)15740
introductions, svelte, release-notes
Getting to the Bottom of Minimum WCAG-Conformant Interactive Element Size (eri/sma)15739
accessibility, design, wcag, css
Don’t Use JS for That: Moving Features to CSS and HTML (kil/jsc)15738
videos, javascript, css, html
CSS Stuff I’m Excited After the Last CSSWG Meeting (mon/css)15737
css, functions, transitions, anchor-positioning
Using pnpm on Heroku15736
pnpm, heroku
The Cloud Run Security Gap You Didn’t Know You Had (and How to Fix It)15735
security, gcp
Override HTTP Response Headers (pat/dev)15734
http, http-headers, dev-tools, browsers, chrome, edge
You’ll Write Less Code With Svelte 5.0, Promises Rich Harris15733
svelte
Breaking Bad News: How to Present Negative UX Research Findings (coo)15732
user-experience, research, communication, how-tos
How to Make Tables Fit on Small Screens15731
how-tos, design, responsive-design, information-design, tables, mobile
How to Incorporate Accessibility Into Your Agile Sprints (mic)15730
how-tos, accessibility, agile, processes, technical-debt
Testing Best Practices for Web Apps15729
videos, testing, best-practices, web-apps
Thoughts on a Global Design System (bka)15728
design-systems
The Pitfalls of In-App Browsers (fro)15727
browsers, mobile, privacy, security, user-experience
Summary of the June 2024 TC39 Plenary in Helsinki (iga)15726
ecmascript, javascript
Styling Tables the Modern CSS Way (mic/pic)15725
css, responsive-design, tables
Can AI Be Used to Write Good Descriptive Alt Text for Images in 2024? (the)15724
accessibility, alt-text, images, ai
Alternative Text in Action15723
accessibility, images, alt-text, writing, examples
A Plea for the Lost Practice of Information Architecture15722
information-architecture, history, link-lists
Expert Handling of Multiple Dimensions of Data (jun)15721
information-design
Flat vs. Deep Hierarchies in Information Architecture (IA) (nng)15720
videos, information-architecture, comparisons
Wait, What’s the Difference Between “:host”, “:host()”, and “:host-context()”?! (and)15719
web-components, css, selectors
Viewport Height and Width Units in Modern CSS15718
viewport, css, units
Node v22.5.0 (Current) (nod)15717
release-notes, nodejs
Named Alternates for WordPress (ede)15716
html, wordpress
Private Browsing 2.0 (wil+/web)15715
browsers, safari, webkit, privacy
It’s Official, Meteor 3.0 Official Release Is Out!15714
release-notes, meteor
Software Testing Fundamentals15713
fundamentals, testing
How to Engineer Your Developer Blog Posts to Have Bigger Impact (pgc)15712
videos, how-tos, blogging, communication, developer-relations
Get the Screen Width and Height Without JavaScript (css)15711
css, tips-and-tricks
Everybody’s Free (to Write Websites) (sar)15710
web, indieweb, blogging, writing
Cloudflare Reports Almost 7% of Internet Traffic Is Malicious (sjv/zdn)15709
web, traffic
Embracing Functional CSS: Have We Moved On?15708
css, presentational-html
13 Cool IntelliJ Features (You Probably Didn’t Know) (das)15707
videos, intellij-idea, code-editors
Character Modeling in CSS (jul/css)15706
videos, css, design, creativity, effects
An Update on Invokers: Invoker Commands in HTML (uti)15705
html, modals, pop-overs
What ARIA Still Does Not Do (ste)15704
html, aria, accessibility, standards
To Hell With the Business Case, Again (mat)15703
accessibility, economics
Thoughts on CSS in 2024 (j9t)15702
css, selectors, resets, logical-properties, custom-properties
JavaScript Event Loop: A Deep Dive15701
javascript, event-loop, events, deep-dives
Getting Stuck: All the Ways “position: sticky” Can Fail (pol)15700
css, layout
CSS Selectors (geo/css)15699
css, selectors, overviews
Why Designers Need to Be More Like Gardeners15698
design, sustainability
19 Microservices Patterns for System Design Interviews15697
interviewing, architecture, system-design, microservices
Verso: A New Browser Based on Servo15696
browsers, verso, servo
It’s Really This Thing That Gets Me (chr)15695
accessibility, overlays
Content Strategy vs. UX Writing (nng)15694
content, content-strategy, writing, user-experience, comparisons, concepts
“@property”: Next-Gen CSS Variables Now With Universal Browser Support (una)15693
css, variables, browsers, support, web-platform
Going With the PDF Reflow (ons/tpg)15692
accessibility, wcag, pdf
How to Add and Update Social Image Previews in WordPress15691
social-media, wordpress, plugins, testing
From Web to Native With React15690
react, migrating
Converging Web Frameworks (mge)15689
videos, frameworks
The Future of Serverless Is WebAssembly15688
videos, serverless, webassembly, outlooks
How to Test Web Applications15687
videos, how-tos, testing, web-apps
3 Design Tips From a Gorgeous New Landing Page15686
videos, design, tips-and-tricks, landing-pages
25 Open Source AI Tools to Cut Your Development Time in Half15685
ai, tooling, productivity, foss, link-lists
Hiring, Lip Service, and Inclusion15684
hiring, interviewing, dei, communication
HTML and CSS Techniques for Inverting Colors15683
css, filters, blend-modes, techniques, colors
Feature Detect CSS “@starting-style” Support (bra)15682
css, transitions, feature-detection, support, browsers
Misconceptions About View Transitions (bra)15681
css, view-transitions, apis
A Guide to Reading and Writing Node.js Streams (mco/pla)15680
guides, nodejs, streaming
Learn About What’s New in Angular 18 From Rakia Ben Sassi (rak+)15679
videos, angular
Why “page.goto()” Is Slowing Down Your Playwright Tests (ste)15678
playwright
Bad Design Is Like a Virus: Design Defects and Latent Failures15677
design
The Bag of Tricks for View Transitions (mar/vtb)15676
websites, css, view-transitions
Introducing @let in Angular (ang)15675
introductions, angular
Rian Rietveld on Understanding the European Accessibility Act and Its Impact on Websites (nat+)15674
podcasts, interviews, accessibility, legal, eaa, wordpress
Homepage Design: 4 Common Mistakes (nng)15673
videos, homepages, design, usability, mistakes
What Is Joomla: The Ultimate Guide15672
guides, content-management, joomla
Transitive Optimization Considered—Interesting (j9t)15671
optimization
Single-Directionally Allowed Overflow (chr/fro)15670
css, overflow
Publishing a TypeScript Module to npm vs. JSR (den)15669
videos, typescript, modules, dependencies, npm, jsr, comparisons
How to Check and Document Design Accessibility in Your Mockups (ste)15668
how-tos, auditing, documentation, prototyping, design, accessibility
Supply Chain Security in npm—We Can Be Optimistic About the Future15667
npm, dependencies, security, provenance
Designing Multimodal Interfaces: Voice + Screen15666
design, voice, prototyping
How I Develop Successful Link Building Strategies for My Clients (moz)15665
seo, strategies, links
A Quick-Ish Accessibility Review: shadcn/ui Charts (ash)15664
accessibility, information-design, shadcn, tooling, auditing, link-lists
Leaner npm Packument (Metadata) Contents15663
npm
Exploring the Challenges in Creating an Accessible Sortable List (Drag-and-Drop)15662
drag-and-drop, accessibility, keyboard-navigation
5 Questions for Miriam Suzanne (mia+/fro)15661
interviews, css, dei, learning
Zoom, Zoom, and Zoom (mia/odd)15660
zooming, css
The Software Engineering Industry in 2024: What Changed in 2 Years, Why, and What Is Next (ger)15659
videos, career, outlooks
The Magic of Clip Path (emi)15658
css, clipping, masking, effects
Playwright vs. Puppeteer: Which Is Better in 2024? (api)15657
playwright, puppeteer, automation, testing, tooling, comparisons
“If” CSS Gets Inline Conditionals (geo/css)15656
css, container-queries, conditionals
Don’t Use web.dev for Accessibility Info (aar)15655
accessibility, learning
15 Page Speed Optimizations That Sites Ignore (at Their Own Risk) (tam/spe)15654
performance, optimization
Interop 2024 Mid-Year Update (rac)15653
interoperability, web-platform, browsers, support
Utility First CSS Isn’t Inline Styles (css)15652
videos, css, presentational-html, atomic-css, caching
Tech Interviews Are Changing—Not for the Better15651
interviewing, career
State of Text Rendering 202415650
fonts, rendering
How to Transform Your Approach to Digital Accessibility From a Reactive Break-Fix Cycle to a Proactive Shift Left Approach (deq)15649
how-tos, accessibility, processes, best-practices
How Keyboard Navigation Works in a CSS Game (css/fro)15648
keyboard-navigation, css, sass
AI Unplugged: Rise (and Fall) of the Robots(.txt)15647
ai, robotstxt, scraping
50 Basic Linux Commands15646
unix-like, command-line
What Is Ladybird? Everything We Know About the New Browser and Web Engine (nim)15645
browsers, browser-engines, ladybird
Sneaky React Memory Leaks: How the React Compiler Won’t Save You15644
react, memory, compiling
System Design Basics—Caching15643
fundamentals, caching, architecture, system-design
Speeding Up the JavaScript Ecosystem—Isolated Declarations (mar)15642
performance, javascript, typescript
Progressive Web Apps (PWA): A Comprehensive Guide15641
guides, web-apps, progressive-web-apps, concepts
How Fast Is JavaScript? Simulating 20,000,000 Particles15640
javascript, performance
Eleventy Buckets and Cascade Layers (mia)15639
eleventy, cascade, css
Creativity Is the Byproduct of Work (fon)15638
processes, creativity, design
Advanced Markdown Using Extensions in Laravel (ami)15637
markdown, laravel
A Practical Guide to Designing for Colorblind People15636
accessibility, guides, design, colors, color-blindness
How to Try Experimental CSS Features (hui)15635
how-tos, css, browsers, safari, chrome, firefox
What’s New With ECMAScript 2024: An In-Depth Guide on the Latest Features (ele/des)15634
guest-posts, guides, overviews, ecmascript, asynchronicity
What’s Coming Next for ESLint (nza/esl)15633
eslint
Script Integrity (chr/fro)15632
embed-code, javascript, security
Optimizing for AI Overviews (moz)15631
ai, seo
Generative AI Is a Climate Disaster (par)15630
ai, sustainability
Button Width Styles (don)15629
buttons, css
Investigating Reddit’s robots.txt Cloaking Strategy15628
robotstxt, scraping, web
Ten Years of Vue (With Evan You) (eva+)15627
podcasts, vuejs, apis, history
How to Debug a Node.js App in a Docker Container15626
how-tos, debugging, nodejs, docker
Dynamic Type on the Web (cho)15625
typography, css, apple, unix-like, accessibility
How to Parse HTML in JavaScript (api)15624
how-tos, parsing, html, javascript
Backend for Frontend (BFF): What You Need to Know15623
backend-for-frontend, architecture
SPA vs. MPA: Which Web Architecture Is Right for You?15622
single-page-apps, multi-page-apps, web-apps, architecture, comparisons
Dialog Dilemmas and Modal Mischief (hdv)15621
videos, modals, pop-overs, accessibility
The Silent Crisis in Open Source: When Maintainers Walk Away (bek/ope)15620
foss, community
Canvas Simulations (gra)15619
ai, canvas
Feature Detect CSS “@property” Support (bra)15618
css, support
Reasons to Use Your Shell’s Job Control (b0r)15617
shells, command-line
Why Is This Thing in Dark Mode? (chr/fro)15616
dark-mode, email
Thoughts on Node.js, Deno, and Bun (nza)15615
nodejs, deno, bun, comparisons
Mythbusting DOM: Was DOM Invented Alongside HTML?15614
myths, dom, html, history
It’s About Time I Tried to Explain What Progressive Enhancement Actually Is (bel/pic)15613
progressive-enhancement
Forget “Show, Don’t Tell”—Engage, Don’t Show! (lea)15612
communication, advocacy, developer-relations, apis
European Accessibility Act (EAA): Top 20 Key Questions Answered (deq)15611
legal, eaa, accessibility
CSS One-Liners to Improve (Almost) Every Project (alv)15610
css, optimization
WebAuthn: Enhancing Security With Minimal Effort (tbe)15609
authentication, webauthn, security
Introducing the MDN HTTP Observatory (mdn)15608
introductions, mdn, http, security
Accessible Form Validation From Scratch—Preparing for Validation (dbe)15607
accessibility, forms, validation
WebAssembly vs. JavaScript: A Comparison15606
webassembly, javascript, comparisons
TypeScript 5.5: A Blockbuster Release15605
typescript
Tuesday, July 2, 2024 Security Releases (nod)15604
release-notes, nodejs, security
Overlays Misunderstand Accessibility (joe)15603
accessibility, overlays
Opting in to CSS Container Queries for an Existing Design System (hey)15602
css, container-queries, design-systems
Moving From Express to Fastify (val)15601
migrating, express, fastify
Guidance on Applying WCAG 2 to Non-Web Information and Communications Technologies (WCAG2ICT) (w3c)15600
guides, accessibility, wcag
CSS Surprise Manga Lines (alv)15599
css, effects
Are Web Components Worth It? (jaf+)15598
podcasts, web-components, html, dom, shadow-dom
RegreSSHion: Remote Unauthenticated Code Execution Vulnerability in OpenSSH Server15597
security, ssh, vulnerabilities
Announcing the Ladybird Browser Initiative (lad)15596
ladybird, browsers
Agile Is Not… Agile Is…15595
agile, concepts
How to Annul Promises in JavaScript15594
how-tos, javascript, promises
How to Use Container Queries Now (phi)15593
how-tos, css, container-queries
Layout and Reading Order (rac/css)15592
videos, css, layout
European Accessibility Act (EAA)—What You Need to Know15591
legal, eaa, accessibility
YouTube Embeds Are Bananas Heavy and It’s Fixable (chr/fro)15590
embed-code, youtube, performance, tooling
You Don’t Know Undo/Redo15589
programming, undo-redo
The 3 Types of CSS Utility Classes (jam)15588
css, presentational-html
On Open Source and the Sustainability of the Commons (plo)15587
foss, licensing
Feedback on a Pagination Pattern (aar)15586
pagination, accessibility
Deploy AWS Lambda Functions With Serverless Framework and Node.js15585
deploying, aws, serverless, lambda, functions, nodejs
Be Careful Using “Grid” (aar)15584
terminology, grids
Do Grayscale Images Take Less Space?15583
images, colors, performance
Why Toggle Switches Suck (and What to Do Instead) (ada)15582
design, toggles, usability, anti-patterns
Why Have a Personal Site Instead of Social Media? (kev)15581
career, blogging, social-media
Accessible PDF Forms Online—There’s a Catch (ons/tpg)15580
accessibility, pdf, forms
7 Ways to Champion Accessibility in Your Company15579
accessibility, advocacy
Integrate Go Library Into a JavaScript Webpage With WebAssembly (td8)15578
go, javascript, webassembly
Figma AI (chs)15577
figma, ai, design
Create npm Package With CommonJS and ESM Support in TypeScript15576
npm, dependencies, commonjs, esm, typescript
Strangling the Monolith15575
videos, monoliths, micro-frontends, migrating
How We Tamed Node.js Event Loop Lag: A Deepdive15574
nodejs, event-loop, events
Comprehensive React.js Cheatsheet for Developers15573
react, cheat-sheets
5 Questions for Bramus Van Damme (bra+/fro)15572
interviews, css, web-platform
Product and UX: Study Guide (nng)15571
guides, product-management, user-experience, training, link-lists
Checkboxes: Design Guidelines (nng)15570
forms, design, guidelines, conventions
This Month in Servo: Text Fields, Better Emoji, Devtools, and More (ser)15569
release-notes, servo
The True Story—as Best I Can Remember—of the Origin of Mosaic and Netscape15568
videos, history, browsers, mosaic, netscape
How to Improve Your Microcopy: UX Writing Tips for Non-UX Writers (sma)15567
how-tos, writing, microcontent, user-experience, tips-and-tricks
“Good Commit” vs. “Your Commit”: How to Write a Perfect Git Commit Message15566
how-tos, commit-messages, version-control, git
Browser Support Tests in JavaScript for Modern Web Features (chr/fro)15565
browsers, support, feature-detection, javascript
A Proposal for MDN to Use the APG15564
accessibility, documentation, mdn
Don’t Be Fooled by Figma’s New AI Features15563
figma, ai
Why and How You Should Rate-Limit Your API15562
apis
Understanding React Hooks15561
react, hooks
The Time for Designers to Learn to Code Is Now (bel/pic)15560
design, career, tooling, training, link-lists
Microsoft 1998 = Apple 202415559
microsoft, apple, browsers
Meaningful Ways to Measure Website Success (web)15558
metrics, economics
The State of Digital Accessibility in Europe15557
websites, accessibility, research
Enhancing The New York Times Web Performance With React 1815556
performance, react, case-studies
New to the Web Platform in June (rac)15555
release-notes, web-platform, browsers, firefox, chrome, safari
Accessibility Object Model (sun+/w3c)15554
accessibility
AI Anxiety and How to Design for It: Resources and Best Practices15553
ai, link-lists
“I Have Never Used a Library, Framework, or an API. I Don’t Know What to Do.”15552
career, training, programming, libraries, frameworks, apis
Polyfill Supply Chain Attack Embeds Malware in JavaScript CDN Assets15551
security, malware, vulnerabilities
The Little Things: Confusing Error Messages (brw)15550
errors, images, developer-experience
I Got Hacked and Blew Up Prod15549
career, databases, docker, debugging
htmx Does Not Play Well With Content Security Policy15548
htmx, csp
How to Make a Strong Case for Accessibility (vit/sma)15547
how-tos, accessibility, communication, advocacy
Event Loop and Concurrency Model–Task Queue—How the JS Engine Works (fro)15546
javascript, javascript-engines, event-loop, concurrency
Ecma International Approves ECMAScript 2024: What’s New? (rau)15545
ecmascript, standards
Consent, LLM Scrapers, and Poisoning the Well (eri)15544
ai, scraping, legal
A Text-Reveal Effect Using “conic-gradient()” in CSS (pre/fro)15543
css, functions, gradients, effects
The EU Accessibility Act—Time to Start Implementation Projects Now15542
accessibility, compliance, legal
Network Observability: Beyond Metrics and Logs (leo)15541
network, observability, monitoring, logging
Catching Compromised Cookies (sla)15540
cookies, security, testing
Two New Artificial Intelligence Laws and Their Effects on Accessibility (equ)15539
accessibility, ai, legal
The Design Purity Trap and How to Escape It (ber)15538
design, creativity
Beyond Monospace: The Search for the Perfect Coding Font (rom+/evi)15537
fonts, developer-experience
Beej’s Guide to Git (bee)15536
guides, git, command-line, configuration
Advanced JavaScript Performance Optimization: Techniques and Patterns15535
javascript, performance, optimization, techniques, software-design-patterns
Kagi’s AI Integration Philosophy (kag)15534
kagi, ai, principles
Why Do Designers Become Managers?15533
design, career
AI Ethicists Are Speaking Out, but Are We Listening?15532
ai, ethics
Web Design Engineering With the New CSS (mat/css)15531
videos, css
AI Companies Ignoring robots.txt (mjt)15530
ai, scraping, robotstxt
New JavaScript Set Methods (bsm/mdn)15529
javascript, methods
Use Node Version Manager With Oh My Zsh15528
nvm, command-line, oh-my-zsh
How to Set Up Serverless Framework to Deploy AWS Lambda, Queues, and DynamoDB With Node.js15527
how-tos, serverless, deploying, aws, lambda, nodejs
From ZeroVer to SemVer: A Comprehensive List of Versioning Schemes in Open Source (and)15526
foss, versioning, semver, link-lists
Backdoor Slipped Into Multiple WordPress Plugins in Ongoing Supply-Chain Attack (dan/ars)15525
wordpress, plugins, security
Concept15524
design, concepts
Microfeatures I Love in Blogs and Personal Websites15523
indieweb, blogging, functionality
Why Is It So Difficult to Give Best in Class Accessibility Examples of Websites? (cer)15522
accessibility
In Detail: 1.4.11 Non-Text Contrast (User Interface Components) (yat)15521
accessibility, wcag, colors, contrast, borders
Is It Good Design, or Does It Just Look Good?15520
design
No No-JavaScript (dbu)15519
javascript, css, support, progressive-enhancement, graceful-degradation
Exploring Randomness in JavaScript15518
javascript, randomness
7 Use Cases for JavaScript Proxies15517
javascript
Measuring Developer Experience at Google15516
research, developer-experience, metrics, google
Design Extremes of Custom Accessibility Actions15515
accessibility, design, customization
Understanding JWT Authentication: A Comprehensive Guide With Examples15514
guides, examples, json-web-tokens, authentication
MDX or: How I Learned to Stop Worrying and Love Multimedia Writing (fre/sma)15513
markdown, mdx, components
Performance Mistakes You Might Not Realize You Are Making15512
videos, performance, mistakes, angular
Tracking the Impact of Our Content Design Work15511
content, design, metrics
A Rant About Front-End Development15510
content, html, css, javascript, preprocessors, frameworks, complexity
Bun Is Much Faster Than Node.js 22 at Decoding Base64 Inputs (lem)15509
bun, nodejs, performance, base64, comparisons
State of JavaScript 2023 [Results] (sac+/dev)15508
surveys, metrics, javascript
Uniting Web and Native Apps With 4 Unknown JavaScript APIs (mon/sma)15507
web-apps, native, javascript, apis
Simplest View Transitions Multi Page Demo (No JavaScript) (mor)15506
css, view-transitions, apis, examples
Seamless Screenshot Testing for Compose With Screenshotbot15505
screenshots, images, regressions, testing, tooling
Node v20.15.0 (LTS) (sat/nod)15504
release-notes, nodejs
Inline Conditionals in CSS, Now? (lea)15503
css, conditionals
Announcing TypeScript 5.5 (dan/typ)15502
typescript, release-notes
How to Perform Data Validation in Node.js (app)15501
how-tos, nodejs, validation
Footnotes Progressively Enhanced to Popovers (chr/fro)15500
footnotes, pop-overs, progressive-enhancement, javascript, css
Mina Tamang on SEO Techniques That Prioritise the User Experience (nat)15499
podcasts, interviews, seo, user-experience, techniques
Understanding React Compiler15498
react, compiling
The Hacking of Culture and the Creation of Socio-Technical Debt (sch)15497
culture, security
The Case for Web Components (dav)15496
books, web-components
Positioning Popover Elements (Pseudo-Anchoring) (chr)15495
pop-overs, javascript, positioning
npm and Node.js Should Do More to Make ES Modules Easy to Use15494
npm, nodejs, esm
Know the “search” Element (j9t)15493
html, semantics
Mike McQuaid on 15 Years of Homebrew (mik)15492
interviews, foss
Some UX Design Principles Startups Should Know15491
user-experience, design, principles
Firefox DevTools Newsletter 127 (nic/fir)15490
release-notes, browsers, firefox, dev-tools
How Top HR Agencies Build Trust Through Logo Designs15489
design, images, logos, branding
What Is the Best Browser for Privacy?15488
browsers, privacy, comparisons, brave, firefox, tor-browser, vivaldi, epic
Field Testing CSS Containment for Web Performance Optimization (scr)15487
css, containment, performance, optimization
A Hands-On Guide to Setting Up Zsh, Oh My Zsh, asdf, and Spaceship Prompt With Zinit for Your Development Environment15486
guides, zsh, oh-my-zsh
When Technical Debt Becomes Institutional Knowledge15485
technical-debt, documentation, economics
Modern CSS Layout Is Awesome: Talking and Thinking About CSS Layout (mic)15484
css, layout
Writing a WordPress Theme in Less Than 4 KB15483
wordpress, theming, minimalism, performance
The Frontend Treadmill (pol)15482
fundamentals, frameworks, maintenance, craft, career
Inline Conditionals in CSS? (lea)15481
css, conditionals
How Content Creation Helped Me Land My First Tech Job15480
content, career
Building a Responsive Menu With CSS (and No JavaScript) (cor)15479
responsive-design, css, navigation
Accessibility Maturity Model (w3c)15478
accessibility, processes, culture, leadership
A Brief Introduction to Keyboard Accessibility (kar)15477
introductions, accessibility, keyboard-navigation, focus
Cloud Computing Platforms15476
cloud-computing, aws, azure, gcp
The Way We Design AI Looks Like Nostalgia Already15475
design, ai
How to Increase the Visibility of Error Messages (nng)15474
videos, how-tos, errors, usability
How React 19 (Almost) Made the Internet Slower (cod)15473
react, performance
Say “No” to “console.log”!15472
javascript, console
Building a User-Centered Product-Management Culture (uxm)15471
product-management, culture, user-experience
What Happens When a Major npm Library Goes Commercial? (mco)15470
npm, dependencies, foss
Humanizing Technology in the Age of Conscious AI (uxm)15469
ai, hci
htmx 2.0.0 Has Been Released! (htm)15468
release-notes, htmx
How to Create Software Quality (let)15467
how-tos, quality, complexity, link-lists
Design Without Process, or the Form Factor Trap (pav)15466
design, processes
Mastering JavaScript Generators15465
javascript, functions
Dealing With Unicode Strings, Done Right and Better15464
unicode, javascript
BEM Modifiers in Pure CSS Nesting15463
bem, css, nesting
OAuth Authentication (rya)15462
authentication, authorization, oauth, security
Virtualization and Containerization With Docker15461
containerization, docker
Safari 18—What Web Features Are Usable Across Browsers? (ste)15460
browsers, safari, support, interoperability, css, javascript
UUIDv7 in 22 Languages (ant)15459
programming, javascript, python, sql, shells, java, php, go, rust, ruby, lua, dart, perl, clojure