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#
How I Won $2,750 Using JavaScript, AI, and a Can of WD-4015937
javascript, ai
Django: Create Sub-Commands Within a Management Command (ada)15936
django
“blocking=render”: Why Would You Do That?! (css)15935
performance, html, rendering
Tips for Using React Testing Library to Write Unit Tests (ato)15934
react, testing, libraries, tips-and-tricks
Reckoning: Object Lesson (sli)15933
javascript, performance, metrics
Dev Encyclopedia15932
websites, terminology, concepts, learning
CSS Finally Adds Vertical Centering in 202415931
css, centering
Context Is King: Long Live the King! (llo/tpg)15930
accessibility, usability, techniques, aria
45 Visual Studio Code Shortcuts for Boosting Your Productivity15929
code-editors, vs-code, keyboard-shortcuts
The Importance of Communication in Accessibility Testing15928
accessibility, testing, communication
We’re on the Brink of Another World Browser War (fir)15927
videos, browsers, browser-wars
Start Over-Engineering Your CSS (kev/css)15926
videos, css, complexity
The “address” Element (hey)15925
html, semantics
Relative Color Syntax—Basic Use Cases (chr/fro)15924
css, functions, colors, browsers, support
Reckoning: The Landscape (sli)15923
javascript, performance, metrics, mobile
“font-size” Limbo (seb)15922
design, typography, css
The Problem With Growth: Why Everything Is Failing Now15921
processes, agile, scrum, project-management, research
ObsoHTML, the Obsolete HTML Checker (j9t)15920
packages, npm, html, quality
Implementing SAML SSO in Node.js With Microsoft Entra ID15919
authentication, nodejs, microsoft, functionality
Things to Do Before Asking “Is This Accessible?” (aar)15918
accessibility, terminology, communication
The Most Important Thing to Look at When Choosing an Accessibility Auditor (kar)15917
accessibility, auditing, vpat-acr
Action Web Components Which Span the Server-Client Divide (jar)15916
web-components, html, apis
Verso: Initial Multi-Window Support (wuy)15915
verso, browsers
Comparing Design Systems to Find the Best Qualities (hdv)15914
design-systems, quality
Common Causes of Memory Leaks in JavaScript (tre)15913
javascript, memory, garbage-collection
12 Best JavaScript Animation Libraries to Supercharge Your Web Projects in 202415912
javascript, animations, libraries, link-lists
Stop Versioning Your Docker Compose File15911
docker, versioning
JSR and Deno: Final Review (dbu)15910
jsr, deno
Exploring the Possibilities of Native JavaScript Decorators (fro)15909
javascript, software-design-patterns
Design Patterns and WCAG (gra/tet)15908
accessibility, design-patterns, wcag
Documentation and Migration: From Vue 2 to Vue 315907
videos, interviews, vuejs, documentation, migrating
The Dying Web (mre)15906
browsers, chrome, chromium, firefox, web
Now in Baseline: Animating Entry Effects (una)15905
browsers, support, web-platform, css, animations
SOLID Principles for Designers15904
design, solid, principles
WOFF File Format 2.0 (w3c)15903
woff, fonts, standards
When It Comes to Digital Accessibility Lawsuits, the Best Defense Is a Good Offense (deq)15902
accessibility, legal
We Don’t Need a Boss, We Need a Process (mia)15901
design, leadership, processes, collaboration
Good Intentions, Poor Context (tpg)15900
accessibility, microcontent, images, buttons, links
Attaching Notes to Git Branches15899
git, documentation
Announcing Official Puppeteer Support for Firefox (moz)15898
browsers, firefox, puppeteer, support
Design Tokens Demystified15897
components, design-tokens, design-systems
FastHTML: Revolutionizing Web Development With Python (raj)15896
frameworks, fasthtml, python, web-apps
WCAG 2.2 Map by Theme (hic)15895
accessibility, wcag, standards
W3C Opens Community-Wide Survey (w3c)15894
surveys, w3c, community
The “abbr” Element (hey)15893
html, semantics, accessibility
Snippets in Svelte 5 (ada/fro)15892
svelte
Creating a Personal Brand: How to Sell Yourself as a Developer15891
how-tos, career, branding
Migrating From Netlify to Cloudflare for AI Bot Protection (sia)15890
migrating, netlify, cloudflare, bots, ai, security
Moderated and Unmoderated User Testing: The Differences15889
usability, testing, comparisons
The Great npm Garbage Patch15888
dependencies, npm, spam, security
The Art of Dithering and Retro Shading for the Web (max)15887
dithering, effects, javascript
Disability Data Alarmingly Absent From AI Algorithmic Tools, Report Suggests (for)15886
accessibility, ai, tooling
The Moral Implications of Being a Moderately Successful Computer Scientist and a Woman (ire)15885
community, ethics
Drupal 11 and Beyond15884
drupal
Should Your Website Work Without JavaScript? (wes+/syn)15883
videos, javascript, support
Shifting From Delivery Mode to Product Management: Shifting the Focus of Your Sprint Review15882
agile, scrum, processes, product-management, engineering-management
Video With Alpha Transparency on the Web (jaf)15881
multimedia, transparency+opacity, backgrounds
5 Ways to Fail at Managing Tech Debt15880
technical-debt, maintenance, refactoring, strategies
What Is a Component Library and Should You Build Your Own? (and)15879
components
Verso: A Web Browser That Plays Old World Blues to Build New World Hope (sig)15878
videos, verso, browsers
The Sneaky Costs of Scaling Serverless (zac)15877
scalability, serverless, economics, vercel, aws, comparisons
The Role of Generative AI in Shaping Next-Gen UX Strategies (uxm)15876
ai, user-experience, design, strategies
Let’s Make a Simpler, More Accessible Web (cod)15875
web, web-platform, tooling, simplicity, usability, accessibility, optimization
It’s Time to Talk About “CSS5” (uti/sma)15874
css, w3c
Is CSS Grid Really Slower Than Flexbox? (ben)15873
performance, css, grids, flexbox, layout
HTML Web Components Can Have a Little Shadow DOM, as a Treat (sco)15872
html, web-components, shadow-dom, dom
Figma Typography Variables (fro)15871
figma, typography, variables
101 React Tips and Tricks for Beginners [and] Experts15870
react, tips-and-tricks, best-practices
The Benefits of Learning Programming as a Designer15869
design, career, learning, programming
How to Keep IA Projects From Going Off the Rails (jar)15868
information-architecture
European Accessibility Act Requires Culture to Shift! (cer)15867
accessibility, legal, eaa, culture, leadership
AT Is More Than Screen Readers (aar)15866
accessibility, assistive-tech, screen-readers, terminology, concepts
AI Act Is Here (alv)15865
ai, legal
Ontology Engineering for Beginners15864
owl, tooling
Setting Up CI/CD for Flutter Apps15863
flutter, ci-cd, automation
Programming, I Hate It15862
programming, career
How to Make the Internet More Accessible15861
how-tos, web, accessibility
Attitudes to Digital Accessibility 202415860
surveys, accessibility
Beyond React: How Astro and Its Server Islands Work15859
astro, frameworks, architecture
Tabs, Used Right (nng)15858
design, design-patterns, navigation, usability
What if You Used Container Units for… Everything? (chr/fro)15857
css, units, container-queries
Who Is the Fastest? Node.js, Bun.js, or Deno.js (tre)15856
performance, javascript, runtimes, nodejs, bun, deno, comparisons
What You Want Isn’t Always What You Want (cwo)15855
career
Types of Accessibility Approaches (a11)15854
accessibility, processes, career, collaboration
The Anchor Element (hey)15853
html, links, semantics, terminology, usability
“stripes()”: The Border Function You Never Knew You Needed (jos)15852
css, functions, borders
Mastering Next.js: The Ultimate Guide to Structuring Large-Scale Projects in 202415851
guides, nextjs
Advanced Use Cases of the Node.js Native Test Runner (app)15850
nodejs, testing
Figma and the Cost of Collaboration15849
figma, collaboration
The Evolution of Attention15848
design, case-studies
Cloudflare Once Again Comes Under Pressure for Enabling Abusive Sites (dan/ars)15847
cloudflare
Browsers, Cookies, and Surfing the Web: The Quirky History of Internet Lingo (moz)15846
web, terminology, history
The Anatomy of Accessible Forms: Best Practices (deq)15845
accessibility, forms, html, best-practices
New CSS Logo? (arg)15844
discussions, css
HTML Web Components Make Progressive Enhancement and CSS Encapsulation Easier (css)15843
html, web-components, principles, solid, progressive-enhancement, examples
How to Build a Multilingual Website With Nuxt.js (sma)15842
how-tos, nuxt, internationalization
How I Use “AI”15841
ai, productivity, examples
How Google Handles JavaScript Throughout the Indexing Process15840
google, seo, web-apps, javascript, history, rendering
Interop 2024: Chrome at 100% for the Accessibility Focus Area15839
interoperability, browsers, chrome, accessibility
How to Stop Form Spam Bots With Honeypot Fields15838
spam, bots, forms
The Future Is Up for Grabs When Anyone Can Make Designs15837
design, ai
Nike’s $25B Blunder Shows Us the Limits of “Data-Driven” (pav)15836
product-management, metrics
Does Screen Time Help or Hinder Creativity? (its)15835
creativity, productivity
Using Postman for API Documentation: All You Need to Know15834
apis, documentation, postman
Replacing jQuery UI Datepicker With HTML Date Input (chr)15833
jquery, html
Reading From the Clipboard in JavaScript (ray/fro)15832
javascript
Decoding WCAG: “Change of Context” and “Change of Content” (web)15831
accessibility, wcag, standards
A Handful of Reasons JavaScript Won’t Be Available (bel/pic)15830
javascript, support
New to the Web Platform in July (rac)15829
release-notes, web-platform, browsers, firefox, safari, chrome
Why You Should Ship Your App, Even if It Sucks15828
web-apps, productivity
Faster Continuous Integration Builds at Canva15827
ci-cd, efficiency, optimization, case-studies
Standardization Stories (fan/css)15826
videos, web-platform, css, collaboration, standards
On Mapping the World of Frontend Development (j9t)15825
cross-posts, web-platform, learning, community, frontend-dogma
Misfire (sli)15824
web-platform, cookies, privacy, w3c
Instead of Restricting AI and Algorithms, Make Them Explainable (mfo)15823
ai, algorithms
“git push --force” and How to Deal With It (env+/evi)15822
git
Garbage Collection and Closures (jaf)15821
javascript, functions, closures, garbage-collection
Frontend Security Checklist (tre)15820
security, checklists, react
Developing a RACI Matrix for Accessibility (kar)15819
accessibility, processes, project-management
WebKit Features in Safari 17.6 (jen/web)15818
release-notes, browsers, safari, webkit
Vue and Vite Updates (eva)15817
videos, vuejs, vite
Websites Are Blocking the Wrong AI Scrapers (Because AI Companies Keep Making New Ones) (404)15816
ai, scraping, robotstxt
Flexible Network Data Preloading in Large SPAs15815
performance, single-page-apps, client-side-rendering, data-fetching, preloading
Why Unknown Types Are Useful15814
programming, typescript
What We Got Wrong About HTTP Imports (tin/den)15813
deno, jsr
WebGPU (kai+/w3c)15812
webgpu, standards
WCAG, VPAT, S508, Level A—What on Earth? (int)15811
accessibility, standards, legal, terminology, wcag, vpat-acr, section-508
Top 20 JavaScript Tricks and Tips for Every Developer15810
javascript, tips-and-tricks
Third-Party Cookies Have Got to Go (had/w3c)15809
cookies, privacy, web-platform
The Art of Clean Code: Mastering the SOLID Principles15808
quality, principles, solid
Servo: A Web Rendering Engine for the Future (reg/iga)15807
videos, browser-engines, servo
Patterns for Memory Efficient DOM Manipulation With Modern Vanilla JavaScript (fro)15806
javascript, memory, dom, software-design-patterns
Have It All: External, Styleable, and Scalable SVG (sco)15805
images, svg, css
Accessible Heading Structures for Home Pages (pop)15804
accessibility, headings, homepages
From Parcel to Vite: A Short Story of a 100K LOC Migration15803
migrating, parcel, vite
Designing for Forgiveness: How to Create Error-Tolerant Interfaces15802
design, interaction-design, errors, user-experience
User “Wants” vs. Accessibility (tem)15801
accessibility, usability
Laravel vs. Rails for JavaScript Developers15800
videos, laravel, ruby-on-rails, comparisons
Is It Okay to Make “connectedCallback” Async? (nol)15799
javascript, callbacks, asynchronicity, web-components
Building an “npm create” Package (ach)15798
npm
Automated Ways to Security Audit Your Website15797
security, auditing, automation, tooling
You Can Run Java Like Python Now15796
java, python
The Infuriating Inefficiency of Accessibility Audits (yat)15795
accessibility, auditing, efficiency
Popover API 101 (ami)15794
introductions, pop-overs, apis
A Different Way to Think About TypeScript15793
typescript
What a New Accessibility Class Action Lawsuit Means for Agencies15792
accessibility, legal, business-relations
Green Accessibility for Web Developers15791
videos, accessibility, sustainability
Why the jQuery Creator Uses React and TypeScript (jer+/syn)15790
podcasts, interviews, react, jquery, typescript
What I Learned From Making My Own Design System (pjo)15789
design-systems, lessons
V8 JavaScript Engine: Let’s Read the Code (ant)15788
videos, v8, javascript-engines, javascript
Node.js Adds Experimental Support for TypeScript (sar/soc)15787
nodejs, typescript, experiments
Information Scent: How Users Decide Where to Click15786
information-scent, links, navigation, usability
Cross Platform React (rea)15785
videos, react, native, outlooks
Why Designers Don’t Like Design Systems15784
design, design-systems, creativity
Measuring Design System Compliance of Your Teams15783
design-systems, compliance
React for Two Computers (dan/rea)15782
videos, react
And Now You Understand React Server Components (ken/rea)15781
videos, react, components
Let’s Break React’s Rules (rea)15780
videos, react, hooks
Vanilla React (rea)15779
videos, react, routing
Secure Node.js Applications From Supply Chain Attacks15778
nodejs, security, best-practices, dependencies
Closing the Designer–Developer Gap15777
design, career, collaboration, processes
Benchmarking AWS Lambda Cold Starts Across JavaScript Runtimes (den)15776
deno, aws, serverless, lambda, javascript, runtimes, performance, comparisons
Assessing Components and Patterns for WCAG 2.215775
accessibility, wcag, components, design-patterns
The User Location Is a Lie (aus)15774
geolocation, javascript, apis
The “of S” Syntax in “:nth-child()” (mat)15773
css, selectors
Pop(over) the Balloons (css)15772
html, disclosure-widgets, pop-overs, css
How to Get the Width/Height of Any Element in Only CSS (css/fro)15771
css
AI Crawlers Need to Be More Respectful (eri/rea)15770
ai, crawling, traffic, metrics
The AI Job Interviewer Will See You Now (res)15769
ai, hiring, career
Growing a Design System Organically15768
design-systems, case-studies, scalability
Designing Design Systems: Constructing an Icon System (ado)15767
design, design-systems, icons, images, case-studies
Understanding AbortController in Node.js: A Complete Guide (bet)15766
guides, nodejs, javascript
What to Expect When You’re Optimizing (tka)15765
performance, optimization
Rust Is Revolutionizing JavaScript Development15764
bundling, tooling, rust, javascript
My Favorite Interview Questions for QA Engineers15763
interviewing, quality
Improved Error Messaging for “require(esm)” in Node.js (zac)15762
eleventy
How to Choose the Best Rendering Strategy for Your App15761
how-tos, rendering, strategies, server-side-rendering, client-side-rendering, incremental-static-regeneration, comparisons
Learn CSS Grid First (5t3+/odd)15760
videos, css, grids, layout
Introduction to XAML: A Beginner’s Guide15759
introductions, guides, xaml
What’s New in WebGPU (Chrome 127)15758
release-notes, webgpu, browsers, chrome
Why Not All Voices Should Be Equal in the Design Process15757
design, policies, prioritization, dei
CSS “font-size-adjust” Is Now in Baseline (rac)15756
css, typography, browsers, support, web-platform
The Backlash Against AI Scraping Is Real and Measurable (404)15755
ai, scraping, robotstxt
Math4Devs15754
websites, javascript, math
CSS Scroll Snap Module Level 2 (tab+/w3c)15753
standards, css, scrolling
Clip Pathing Color Changes (chr/fro)15752
css, clipping, masking, colors
A New Path for Privacy Sandbox on the Web15751
browsers, chrome, cookies, privacy, apis, web-platform
What’s New for JavaScript Developers in ECMAScript 202415750
javascript, ecmascript, standards, promises, unicode, webassembly
How to Create Fake Back-End Using IndexedDB15749
how-tos, databases, indexeddb, browser-storage, javascript
Why You Should Have a Brag Document15748
career, documentation
Seriously, You Need to Learn Git (der)15747
git, command-line
“Practical SVG” Is Now Free to Read Online (chr)15746
books, images, svg
Learn Web Components (and)15745
websites, courses, web-components, html, css, dom, javascript
50 TypeScript F*ck Ups15744
books, typescript, mistakes
20 Super Useful CSS Animation Libraries15743
css, animations, libraries, link-lists
Flutter Unit Testing: Understanding “setUp()” and “setUpAll()”15742
flutter, testing
So You Think You Know Box Shadows?15741
shadows, javascript
Better Ways to Use Async Functions in JavaScript15740
javascript, asynchronicity, functions, promises
After CrowdStrike, Programmers Deserve Consequences15739
programming, career, quality
CSS Grid Areas (sha)15738
css, grids, layout
State of Developer Experience 202415737
research, developer-experience
Providing Type Definitions for CSS With “@property” (5t3)15736
css, custom-properties
Macro vs. Micro Conversions (nng)15735
user-conversion, concepts, comparisons
Architecture in an Agile World (may)15734
architecture, agile, processes
State of React 2023 [Results] (sac/dev)15733
surveys, metrics, react
Why Is Spawning a New Process in Node So Slow? (val)15732
nodejs, performance, comparisons
The Web We Want: A Beginner’s Guide to the IndieWeb (pau)15731
slides, guides, web, indieweb
Mapping the Landscape of Gen-AI Product User Experience (gen)15730
ai, overviews
Introducing Svelte 5 (ada/fro)15729
introductions, svelte, release-notes
Getting to the Bottom of Minimum WCAG-Conformant Interactive Element Size (eri/sma)15728
accessibility, design, wcag, css
Don’t Use JS for That: Moving Features to CSS and HTML (kil/jsc)15727
videos, javascript, css, html
CSS Stuff I’m Excited After the Last CSSWG Meeting (mon/css)15726
css, functions, transitions, anchor-positioning
Using pnpm on Heroku15725
pnpm, heroku
The Cloud Run Security Gap You Didn’t Know You Had (and How to Fix It)15724
security, gcp
Override HTTP Response Headers (pat/dev)15723
http, http-headers, dev-tools, browsers, chrome, edge
You’ll Write Less Code With Svelte 5.0, Promises Rich Harris15722
svelte
Breaking Bad News: How to Present Negative UX Research Findings (coo)15721
user-experience, research, communication, how-tos
How to Make Tables Fit on Small Screens15720
how-tos, design, responsive-design, information-design, tables, mobile
How to Incorporate Accessibility Into Your Agile Sprints (mic)15719
how-tos, accessibility, agile, processes, technical-debt
Testing Best Practices for Web Apps15718
videos, testing, best-practices, web-apps
Thoughts on a Global Design System (bka)15717
design-systems
The Pitfalls of In-App Browsers (fro)15716
browsers, mobile, privacy, security, user-experience
Summary of the June 2024 TC39 Plenary in Helsinki (iga)15715
ecmascript, javascript
Styling Tables the Modern CSS Way (mic/pic)15714
css, responsive-design, tables
Can AI Be Used to Write Good Descriptive Alt Text for Images in 2024? (the)15713
accessibility, alt-text, images, ai
Alternative Text in Action15712
accessibility, images, alt-text, writing, examples
A Plea for the Lost Practice of Information Architecture15711
information-architecture, history, link-lists
Expert Handling of Multiple Dimensions of Data (jun)15710
information-design
Flat vs. Deep Hierarchies in Information Architecture (IA) (nng)15709
videos, information-architecture, comparisons
Wait, What’s the Difference Between “:host”, “:host()”, and “:host-context()”?! (and)15708
web-components, css, selectors
Viewport Height and Width Units in Modern CSS15707
viewport, css, units
Node v22.5.0 (Current) (nod)15706
release-notes, nodejs
Named Alternates for WordPress (ede)15705
html, wordpress
Private Browsing 2.0 (wil+/web)15704
browsers, safari, webkit, privacy
It’s Official, Meteor 3.0 Official Release Is Out!15703
release-notes, meteor
Software Testing Fundamentals15702
fundamentals, testing
How to Engineer Your Developer Blog Posts to Have Bigger Impact (pgc)15701
videos, how-tos, blogging, communication, developer-relations
Get the Screen Width and Height Without JavaScript (css)15700
css, tips-and-tricks
Everybody’s Free (to Write Websites) (sar)15699
web, indieweb, blogging, writing
Cloudflare Reports Almost 7% of Internet Traffic Is Malicious (sjv/zdn)15698
web, traffic
Embracing Functional CSS: Have We Moved On?15697
css, presentational-html
13 Cool IntelliJ Features (You Probably Didn’t Know) (das)15696
videos, intellij-idea, code-editors
Character Modeling in CSS (jul/css)15695
videos, css, design, creativity, effects
An Update on Invokers: Invoker Commands in HTML (uti)15694
html, modals, pop-overs
What ARIA Still Does Not Do (ste)15693
html, aria, accessibility, standards
To Hell With the Business Case, Again (mat)15692
accessibility, economics
Thoughts on CSS in 2024 (j9t)15691
css, selectors, resets, logical-properties, custom-properties
JavaScript Event Loop: A Deep Dive15690
javascript, event-loop, events, deep-dives
Getting Stuck: All the Ways “position: sticky” Can Fail (pol)15689
css, layout
CSS Selectors (geo/css)15688
css, selectors, overviews
Why Designers Need to Be More Like Gardeners15687
design, sustainability
19 Microservices Patterns for System Design Interviews15686
interviewing, architecture, system-design, microservices
Verso: A New Browser Based on Servo15685
browsers, verso, servo
It’s Really This Thing That Gets Me (chr)15684
accessibility, overlays
Content Strategy vs. UX Writing (nng)15683
content, content-strategy, writing, user-experience, comparisons, concepts
“@property”: Next-Gen CSS Variables Now With Universal Browser Support (una)15682
css, variables, browsers, support, web-platform
Going With the PDF Reflow (ons/tpg)15681
accessibility, wcag, pdf
How to Add and Update Social Image Previews in WordPress15680
social-media, wordpress, plugins, testing
From Web to Native With React15679
react, migrating
Converging Web Frameworks (mge)15678
videos, frameworks
The Future of Serverless Is WebAssembly15677
videos, serverless, webassembly, outlooks
How to Test Web Applications15676
videos, how-tos, testing, web-apps
3 Design Tips From a Gorgeous New Landing Page15675
videos, design, tips-and-tricks, landing-pages
25 Open Source AI Tools to Cut Your Development Time in Half15674
ai, tooling, productivity, foss, link-lists
Hiring, Lip Service, and Inclusion15673
hiring, interviewing, dei, communication
HTML and CSS Techniques for Inverting Colors15672
css, filters, blend-modes, techniques, colors
Feature Detect CSS “@starting-style” Support (bra)15671
css, transitions, feature-detection, support, browsers
Misconceptions About View Transitions (bra)15670
css, view-transitions, apis
A Guide to Reading and Writing Node.js Streams (mco/pla)15669
guides, nodejs, streaming
Learn About What’s New in Angular 18 From Rakia Ben Sassi (rak+)15668
videos, angular
Why “page.goto()” Is Slowing Down Your Playwright Tests (ste)15667
playwright
Bad Design Is Like a Virus: Design Defects and Latent Failures15666
design
The Bag of Tricks for View Transitions (mar/vtb)15665
websites, css, view-transitions
Introducing @let in Angular (ang)15664
introductions, angular
Rian Rietveld on Understanding the European Accessibility Act and Its Impact on Websites (nat+)15663
podcasts, interviews, accessibility, legal, eaa, wordpress
Homepage Design: 4 Common Mistakes (nng)15662
videos, homepages, design, usability, mistakes
What Is Joomla: The Ultimate Guide15661
guides, content-management, joomla
Transitive Optimization Considered—Interesting (j9t)15660
optimization
Single-Directionally Allowed Overflow (chr/fro)15659
css, overflow
Publishing a TypeScript Module to npm vs. JSR (den)15658
videos, typescript, modules, dependencies, npm, jsr, comparisons
How to Check and Document Design Accessibility in Your Mockups (ste)15657
how-tos, auditing, documentation, prototyping, design, accessibility
Supply Chain Security in npm—We Can Be Optimistic About the Future15656
npm, dependencies, security, provenance
Designing Multimodal Interfaces: Voice + Screen15655
design, voice, prototyping
How I Develop Successful Link Building Strategies for My Clients (moz)15654
seo, strategies, links
A Quick-Ish Accessibility Review: shadcn/ui Charts (ash)15653
accessibility, information-design, shadcn, tooling, auditing, link-lists
Leaner npm Packument (Metadata) Contents15652
npm
Exploring the Challenges in Creating an Accessible Sortable List (Drag-and-Drop)15651
drag-and-drop, accessibility, keyboard-navigation
5 Questions for Miriam Suzanne (mia+/fro)15650
interviews, css, dei, learning
Zoom, Zoom, and Zoom (mia/odd)15649
zooming, css
The Software Engineering Industry in 2024: What Changed in 2 Years, Why, and What Is Next (ger)15648
videos, career, outlooks
The Magic of Clip Path (emi)15647
css, clipping, masking, effects
Playwright vs. Puppeteer: Which Is Better in 2024? (api)15646
playwright, puppeteer, automation, testing, tooling, comparisons
“If” CSS Gets Inline Conditionals (geo/css)15645
css, container-queries, conditionals
Don’t Use web.dev for Accessibility Info (aar)15644
accessibility, learning
15 Page Speed Optimizations That Sites Ignore (at Their Own Risk) (tam/spe)15643
performance, optimization
Interop 2024 Mid-Year Update (rac)15642
interoperability, web-platform, browsers, support
Utility First CSS Isn’t Inline Styles (css)15641
videos, css, presentational-html, atomic-css, caching
Tech Interviews Are Changing—Not for the Better15640
interviewing, career
State of Text Rendering 202415639
fonts, rendering
How to Transform Your Approach to Digital Accessibility From a Reactive Break-Fix Cycle to a Proactive Shift Left Approach (deq)15638
how-tos, accessibility, processes, best-practices
How Keyboard Navigation Works in a CSS Game (css/fro)15637
keyboard-navigation, css, sass
AI Unplugged: Rise (and Fall) of the Robots(.txt)15636
ai, robotstxt, scraping
50 Basic Linux Commands15635
unix-like, command-line
What Is Ladybird? Everything We Know About the New Browser and Web Engine (nim)15634
browsers, browser-engines, ladybird
Sneaky React Memory Leaks: How the React Compiler Won’t Save You15633
react, memory, compiling
System Design Basics—Caching15632
fundamentals, caching, architecture, system-design
Speeding Up the JavaScript Ecosystem—Isolated Declarations (mar)15631
performance, javascript, typescript
Progressive Web Apps (PWA): A Comprehensive Guide15630
guides, web-apps, progressive-web-apps, concepts
How Fast Is JavaScript? Simulating 20,000,000 Particles15629
javascript, performance
Eleventy Buckets and Cascade Layers (mia)15628
eleventy, cascade, css
Creativity Is the Byproduct of Work (fon)15627
processes, creativity, design
Advanced Markdown Using Extensions in Laravel (ami)15626
markdown, laravel
A Practical Guide to Designing for Colorblind People15625
accessibility, guides, design, colors, color-blindness
How to Try Experimental CSS Features (hui)15624
how-tos, css, browsers, safari, chrome, firefox
What’s New With ECMAScript 2024: An In-Depth Guide on the Latest Features (ele/des)15623
guest-posts, guides, overviews, ecmascript, asynchronicity
What’s Coming Next for ESLint (nza/esl)15622
eslint
Script Integrity (chr/fro)15621
embed-code, javascript, security
Optimizing for AI Overviews (moz)15620
ai, seo
Generative AI Is a Climate Disaster (par)15619
ai, sustainability
Button Width Styles (don)15618
buttons, css
Investigating Reddit’s robots.txt Cloaking Strategy15617
robotstxt, scraping, web
Ten Years of Vue (With Evan You) (eva+)15616
podcasts, vuejs, apis, history
How to Debug a Node.js App in a Docker Container15615
how-tos, debugging, nodejs, docker
Dynamic Type on the Web (cho)15614
typography, css, apple, unix-like, accessibility
How to Parse HTML in JavaScript (api)15613
how-tos, parsing, html, javascript
Backend for Frontend (BFF): What You Need to Know15612
backend-for-frontend, architecture
SPA vs. MPA: Which Web Architecture Is Right for You?15611
single-page-apps, multi-page-apps, web-apps, architecture, comparisons
Dialog Dilemmas and Modal Mischief (hdv)15610
videos, modals, pop-overs, accessibility
The Silent Crisis in Open Source: When Maintainers Walk Away (bek/ope)15609
foss, community
Canvas Simulations (gra)15608
ai, canvas
Feature Detect CSS “@property” Support (bra)15607
css, support
Reasons to Use Your Shell’s Job Control (b0r)15606
shells, command-line
Why Is This Thing in Dark Mode? (chr/fro)15605
dark-mode, email
Thoughts on Node.js, Deno, and Bun (nza)15604
nodejs, deno, bun, comparisons
Mythbusting DOM: Was DOM Invented Alongside HTML?15603
myths, dom, html, history
It’s About Time I Tried to Explain What Progressive Enhancement Actually Is (bel/pic)15602
progressive-enhancement
Forget “Show, Don’t Tell”—Engage, Don’t Show! (lea)15601
communication, advocacy, developer-relations, apis
European Accessibility Act (EAA): Top 20 Key Questions Answered (deq)15600
legal, eaa, accessibility
CSS One-Liners to Improve (Almost) Every Project (alv)15599
css, optimization
WebAuthn: Enhancing Security With Minimal Effort (tbe)15598
authentication, webauthn, security
Introducing the MDN HTTP Observatory (mdn)15597
introductions, mdn, http, security
Accessible Form Validation From Scratch—Preparing for Validation (dbe)15596
accessibility, forms, validation
WebAssembly vs. JavaScript: A Comparison15595
webassembly, javascript, comparisons
TypeScript 5.5: A Blockbuster Release15594
typescript
Tuesday, July 2, 2024 Security Releases (nod)15593
release-notes, nodejs, security
Overlays Misunderstand Accessibility (joe)15592
accessibility, overlays
Opting in to CSS Container Queries for an Existing Design System (hey)15591
css, container-queries, design-systems
Moving From Express to Fastify (val)15590
migrating, express, fastify
Guidance on Applying WCAG 2 to Non-Web Information and Communications Technologies (WCAG2ICT) (w3c)15589
guides, accessibility, wcag
CSS Surprise Manga Lines (alv)15588
css, effects
Are Web Components Worth It? (jaf+)15587
podcasts, web-components, html, dom, shadow-dom
RegreSSHion: Remote Unauthenticated Code Execution Vulnerability in OpenSSH Server15586
security, ssh, vulnerabilities
Announcing the Ladybird Browser Initiative (lad)15585
ladybird, browsers
Agile Is Not… Agile Is…15584
agile, concepts
How to Annul Promises in JavaScript15583
how-tos, javascript, promises
How to Use Container Queries Now (phi)15582
how-tos, css, container-queries
Layout and Reading Order (rac/css)15581
videos, css, layout
European Accessibility Act (EAA)—What You Need to Know15580
legal, eaa, accessibility
YouTube Embeds Are Bananas Heavy and It’s Fixable (chr/fro)15579
embed-code, youtube, performance, tooling
You Don’t Know Undo/Redo15578
programming, undo-redo
The 3 Types of CSS Utility Classes (jam)15577
css, presentational-html
On Open Source and the Sustainability of the Commons (plo)15576
foss, licensing
Feedback on a Pagination Pattern (aar)15575
pagination, accessibility
Deploy AWS Lambda Functions With Serverless Framework and Node.js15574
deploying, aws, serverless, lambda, functions, nodejs
Be Careful Using “Grid” (aar)15573
terminology, grids
Do Grayscale Images Take Less Space?15572
images, colors, performance
Why Toggle Switches Suck (and What to Do Instead) (ada)15571
design, toggles, usability, anti-patterns
Why Have a Personal Site Instead of Social Media? (kev)15570
career, blogging, social-media
Accessible PDF Forms Online—There’s a Catch (ons/tpg)15569
accessibility, pdf, forms
7 Ways to Champion Accessibility in Your Company15568
accessibility, advocacy
Integrate Go Library Into a JavaScript Webpage With WebAssembly (td8)15567
go, javascript, webassembly
Figma AI (chs)15566
figma, ai, design
Create npm Package With CommonJS and ESM Support in TypeScript15565
npm, dependencies, commonjs, esm, typescript
Strangling the Monolith15564
videos, monoliths, micro-frontends, migrating
How We Tamed Node.js Event Loop Lag: A Deepdive15563
nodejs, event-loop, events
Comprehensive React.js Cheatsheet for Developers15562
react, cheat-sheets
5 Questions for Bramus Van Damme (bra+/fro)15561
interviews, css, web-platform
Product and UX: Study Guide (nng)15560
guides, product-management, user-experience, training, link-lists
Checkboxes: Design Guidelines (nng)15559
forms, design, guidelines, conventions
This Month in Servo: Text Fields, Better Emoji, Devtools, and More (ser)15558
release-notes, servo
The True Story—as Best I Can Remember—of the Origin of Mosaic and Netscape15557
videos, history, browsers, mosaic, netscape
How to Improve Your Microcopy: UX Writing Tips for Non-UX Writers (sma)15556
how-tos, writing, microcontent, user-experience, tips-and-tricks
“Good Commit” vs. “Your Commit”: How to Write a Perfect Git Commit Message15555
how-tos, commit-messages, version-control, git
Browser Support Tests in JavaScript for Modern Web Features (chr/fro)15554
browsers, support, feature-detection, javascript
A Proposal for MDN to Use the APG15553
accessibility, documentation, mdn
Don’t Be Fooled by Figma’s New AI Features15552
figma, ai
Why and How You Should Rate-Limit Your API15551
apis
Understanding React Hooks15550
react, hooks
The Time for Designers to Learn to Code Is Now (bel/pic)15549
design, career, tooling, training, link-lists
Microsoft 1998 = Apple 202415548
microsoft, apple, browsers
Meaningful Ways to Measure Website Success (web)15547
metrics, economics
The State of Digital Accessibility in Europe15546
websites, accessibility, research
Enhancing The New York Times Web Performance With React 1815545
performance, react, case-studies
New to the Web Platform in June (rac)15544
release-notes, web-platform, browsers, firefox, chrome, safari
Accessibility Object Model (sun+/w3c)15543
accessibility
AI Anxiety and How to Design for It: Resources and Best Practices15542
ai, link-lists
“I Have Never Used a Library, Framework, or an API. I Don’t Know What to Do.”15541
career, training, programming, libraries, frameworks, apis
Polyfill Supply Chain Attack Embeds Malware in JavaScript CDN Assets15540
security, malware, vulnerabilities
The Little Things: Confusing Error Messages (brw)15539
errors, images, developer-experience
I Got Hacked and Blew Up Prod15538
career, databases, docker, debugging
htmx Does Not Play Well With Content Security Policy15537
htmx, csp
How to Make a Strong Case for Accessibility (vit/sma)15536
how-tos, accessibility, communication, advocacy
Event Loop and Concurrency Model–Task Queue—How the JS Engine Works (fro)15535
javascript, javascript-engines, event-loop, concurrency
Ecma International Approves ECMAScript 2024: What’s New? (rau)15534
ecmascript, standards
Consent, LLM Scrapers, and Poisoning the Well (eri)15533
ai, scraping, legal
A Text-Reveal Effect Using “conic-gradient()” in CSS (pre/fro)15532
css, functions, gradients, effects
The EU Accessibility Act—Time to Start Implementation Projects Now15531
accessibility, compliance, legal
Network Observability: Beyond Metrics and Logs (leo)15530
network, observability, monitoring, logging
Catching Compromised Cookies (sla)15529
cookies, security, testing
Two New Artificial Intelligence Laws and Their Effects on Accessibility (equ)15528
accessibility, ai, legal
The Design Purity Trap and How to Escape It (ber)15527
design, creativity
Beyond Monospace: The Search for the Perfect Coding Font (rom+/evi)15526
fonts, developer-experience
Beej’s Guide to Git (bee)15525
guides, git, command-line, configuration
Advanced JavaScript Performance Optimization: Techniques and Patterns15524
javascript, performance, optimization, techniques, software-design-patterns
Kagi’s AI Integration Philosophy (kag)15523
kagi, ai, principles
Why Do Designers Become Managers?15522
design, career
AI Ethicists Are Speaking Out, but Are We Listening?15521
ai, ethics
Web Design Engineering With the New CSS (mat/css)15520
videos, css
AI Companies Ignoring robots.txt (mjt)15519
ai, scraping, robotstxt
New JavaScript Set Methods (bsm/mdn)15518
javascript, methods
Use Node Version Manager With Oh My Zsh15517
nvm, command-line, oh-my-zsh
How to Set Up Serverless Framework to Deploy AWS Lambda, Queues, and DynamoDB With Node.js15516
how-tos, serverless, deploying, aws, lambda, nodejs
From ZeroVer to SemVer: A Comprehensive List of Versioning Schemes in Open Source (and)15515
foss, versioning, semver, link-lists
Backdoor Slipped Into Multiple WordPress Plugins in Ongoing Supply-Chain Attack (dan/ars)15514
wordpress, plugins, security
Concept15513
design, concepts
Microfeatures I Love in Blogs and Personal Websites15512
indieweb, blogging, functionality
Why Is It So Difficult to Give Best in Class Accessibility Examples of Websites? (cer)15511
accessibility
In Detail: 1.4.11 Non-Text Contrast (User Interface Components) (yat)15510
accessibility, wcag, colors, contrast, borders
Is It Good Design, or Does It Just Look Good?15509
design
No No-JavaScript (dbu)15508
javascript, css, support, progressive-enhancement, graceful-degradation
Exploring Randomness in JavaScript15507
javascript, randomness
7 Use Cases for JavaScript Proxies15506
javascript
Measuring Developer Experience at Google15505
research, developer-experience, metrics, google
Design Extremes of Custom Accessibility Actions15504
accessibility, design, customization
Understanding JWT Authentication: A Comprehensive Guide With Examples15503
guides, examples, json-web-tokens, authentication
MDX or: How I Learned to Stop Worrying and Love Multimedia Writing (fre/sma)15502
markdown, mdx, components
Performance Mistakes You Might Not Realize You Are Making15501
videos, performance, mistakes, angular
Tracking the Impact of Our Content Design Work15500
content, design, metrics
A Rant About Front-End Development15499
content, html, css, javascript, preprocessors, frameworks, complexity
Bun Is Much Faster Than Node.js 22 at Decoding Base64 Inputs (lem)15498
bun, nodejs, performance, base64, comparisons
State of JavaScript 2023 [Results] (sac+/dev)15497
surveys, metrics, javascript
Uniting Web and Native Apps With 4 Unknown JavaScript APIs (mon/sma)15496
web-apps, native, javascript, apis
Simplest View Transitions Multi Page Demo (No JavaScript) (mor)15495
css, view-transitions, apis, examples
Seamless Screenshot Testing for Compose With Screenshotbot15494
screenshots, images, regressions, testing, tooling
Node v20.15.0 (LTS) (sat/nod)15493
release-notes, nodejs
Inline Conditionals in CSS, Now? (lea)15492
css, conditionals
Announcing TypeScript 5.5 (dan/typ)15491
typescript, release-notes
How to Perform Data Validation in Node.js (app)15490
how-tos, nodejs, validation
Footnotes Progressively Enhanced to Popovers (chr/fro)15489
footnotes, pop-overs, progressive-enhancement, javascript, css
Mina Tamang on SEO Techniques That Prioritise the User Experience (nat)15488
podcasts, interviews, seo, user-experience, techniques
Understanding React Compiler15487
react, compiling
The Hacking of Culture and the Creation of Socio-Technical Debt (sch)15486
culture, security
The Case for Web Components (dav)15485
books, web-components
Positioning Popover Elements (Pseudo-Anchoring) (chr)15484
pop-overs, javascript, positioning
npm and Node.js Should Do More to Make ES Modules Easy to Use15483
npm, nodejs, esm
Know the “search” Element (j9t)15482
html, semantics
Mike McQuaid on 15 Years of Homebrew (mik)15481
interviews, foss
Some UX Design Principles Startups Should Know15480
user-experience, design, principles
Firefox DevTools Newsletter 127 (nic/fir)15479
release-notes, browsers, firefox, dev-tools
How Top HR Agencies Build Trust Through Logo Designs15478
design, images, logos, branding
What Is the Best Browser for Privacy?15477
browsers, privacy, comparisons, brave, firefox, tor-browser, vivaldi, epic
Field Testing CSS Containment for Web Performance Optimization (scr)15476
css, containment, performance, optimization
A Hands-On Guide to Setting Up Zsh, Oh My Zsh, asdf, and Spaceship Prompt With Zinit for Your Development Environment15475
guides, zsh, oh-my-zsh
When Technical Debt Becomes Institutional Knowledge15474
technical-debt, documentation, economics
Modern CSS Layout Is Awesome: Talking and Thinking About CSS Layout (mic)15473
css, layout
Writing a WordPress Theme in Less Than 4 KB15472
wordpress, theming, minimalism, performance
The Frontend Treadmill (pol)15471
fundamentals, frameworks, maintenance, craft, career
Inline Conditionals in CSS? (lea)15470
css, conditionals
How Content Creation Helped Me Land My First Tech Job15469
content, career
Building a Responsive Menu With CSS (and No JavaScript) (cor)15468
responsive-design, css, navigation
Accessibility Maturity Model (w3c)15467
accessibility, processes, culture, leadership
A Brief Introduction to Keyboard Accessibility (kar)15466
introductions, accessibility, keyboard-navigation, focus
Cloud Computing Platforms15465
cloud-computing, aws, azure, gcp
The Way We Design AI Looks Like Nostalgia Already15464
design, ai
How to Increase the Visibility of Error Messages (nng)15463
videos, how-tos, errors, usability
How React 19 (Almost) Made the Internet Slower (cod)15462
react, performance
Say “No” to “console.log”!15461
javascript, console
Building a User-Centered Product-Management Culture (uxm)15460
product-management, culture, user-experience
What Happens When a Major npm Library Goes Commercial? (mco)15459
npm, dependencies, foss
Humanizing Technology in the Age of Conscious AI (uxm)15458
ai, hci
htmx 2.0.0 Has Been Released! (htm)15457
release-notes, htmx
How to Create Software Quality (let)15456
how-tos, quality, complexity, link-lists
Design Without Process, or the Form Factor Trap (pav)15455
design, processes
Mastering JavaScript Generators15454
javascript, functions
Dealing With Unicode Strings, Done Right and Better15453
unicode, javascript
BEM Modifiers in Pure CSS Nesting15452
bem, css, nesting
OAuth Authentication (rya)15451
authentication, authorization, oauth, security
Virtualization and Containerization With Docker15450
containerization, docker
Safari 18—What Web Features Are Usable Across Browsers? (ste)15449
browsers, safari, support, interoperability, css, javascript
UUIDv7 in 22 Languages (ant)15448
programming, javascript, python, sql, shells, java, php, go, rust, ruby, lua, dart, perl, clojure
What Is Mixed Content? (fre)15447
security, http
What Does “aria-hidden=true” Actually Do to Interactive Elements? (cer)15446
accessibility, aria, screen-readers, hiding
The Basics of DNS: Understanding the Internet’s Directory Service15445
fundamentals, dns
Researchers Uncover npm Registry Vulnerability to Cache Poisoning and DoS Attacks (sar/soc)15444
npm, dependencies, vulnerabilities, caching, security
Minimal SVG Favicon (sto)15443
svg, images, favicons, minimalism
I Made My Own JSON Parser15442
json, parsing
Dual Publishing ESM and CJS Modules With tsup and “Are the Types Wrong?” (joh)15441
dependencies, esm, commonjs, tooling, typescript, type-safety
HTML Markup Explained: Building Blocks of Modern Web Pages15440
html, fundamentals
Writing Your First Visual Regression Check in Playwright15439
design, testing, regressions, playwright
How JavaScript Is Finally Improving the Module Experience15438
javascript, modules, esm, commonjs, developer-experience, webassembly