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#
Start Over-Engineering Your CSS (kev/css)15915
videos, css, complexity
The “address” Element (hey)15914
html, semantics
Relative Color Syntax—Basic Use Cases (chr/fro)15913
css, functions, colors, browsers, support
Reckoning: The Landscape (sli)15912
javascript, performance, metrics, mobile
“font-size” Limbo (seb)15911
design, typography, css
The Problem With Growth: Why Everything Is Failing Now15910
processes, agile, scrum, project-management, research
ObsoHTML, the Obsolete HTML Checker (j9t)15909
packages, npm, html, quality
Implementing SAML SSO in Node.js With Microsoft Entra ID15908
authentication, nodejs, microsoft, functionality
Things to Do Before Asking “Is This Accessible?” (aar)15907
accessibility, terminology, communication
The Most Important Thing to Look at When Choosing an Accessibility Auditor (kar)15906
accessibility, auditing, vpat-acr
Action Web Components Which Span the Server-Client Divide (jar)15905
web-components, html, apis
Verso: Initial Multi-Window Support (wuy)15904
verso, browsers
Comparing Design Systems to Find the Best Qualities (hdv)15903
design-systems, quality
Common Causes of Memory Leaks in JavaScript (tre)15902
javascript, memory, garbage-collection
12 Best JavaScript Animation Libraries to Supercharge Your Web Projects in 202415901
javascript, animations, libraries, link-lists
Stop Versioning Your Docker Compose File15900
docker, versioning
JSR and Deno: Final Review (dbu)15899
jsr, deno
Exploring the Possibilities of Native JavaScript Decorators (fro)15898
javascript, software-design-patterns
Design Patterns and WCAG (gra/tet)15897
accessibility, design-patterns, wcag
Documentation and Migration: From Vue 2 to Vue 315896
videos, interviews, vuejs, documentation, migrating
The Dying Web (mre)15895
browsers, chrome, chromium, firefox, web
Now in Baseline: Animating Entry Effects (una)15894
browsers, support, web-platform, css, animations
SOLID Principles for Designers15893
design, solid, principles
WOFF File Format 2.0 (w3c)15892
woff, fonts, standards
When It Comes to Digital Accessibility Lawsuits, the Best Defense Is a Good Offense (deq)15891
accessibility, legal
We Don’t Need a Boss, We Need a Process (mia)15890
design, leadership, processes, collaboration
Good Intentions, Poor Context (tpg)15889
accessibility, microcontent, images, buttons, links
Attaching Notes to Git Branches15888
git, documentation
Announcing Official Puppeteer Support for Firefox (moz)15887
browsers, firefox, puppeteer, support
Design Tokens Demystified15886
components, design-tokens, design-systems
FastHTML: Revolutionizing Web Development With Python (raj)15885
frameworks, fasthtml, python, web-apps
WCAG 2.2 Map by Theme (hic)15884
accessibility, wcag, standards
W3C Opens Community-Wide Survey (w3c)15883
surveys, w3c, community
The “abbr” Element (hey)15882
html, semantics, accessibility
Snippets in Svelte 5 (ada/fro)15881
svelte
Creating a Personal Brand: How to Sell Yourself as a Developer15880
how-tos, career, branding
Migrating From Netlify to Cloudflare for AI Bot Protection (sia)15879
migrating, netlify, cloudflare, bots, ai, security
Moderated and Unmoderated User Testing: The Differences15878
usability, testing, comparisons
The Great npm Garbage Patch15877
dependencies, npm, spam, security
The Art of Dithering and Retro Shading for the Web (max)15876
dithering, effects, javascript
Disability Data Alarmingly Absent From AI Algorithmic Tools, Report Suggests (for)15875
accessibility, ai, tooling
The Moral Implications of Being a Moderately Successful Computer Scientist and a Woman (ire)15874
community, ethics
Drupal 11 and Beyond15873
drupal
Should Your Website Work Without JavaScript? (wes+/syn)15872
videos, javascript, support
Shifting From Delivery Mode to Product Management: Shifting the Focus of Your Sprint Review15871
agile, scrum, processes, product-management, engineering-management
Video With Alpha Transparency on the Web (jaf)15870
multimedia, transparency+opacity, backgrounds
5 Ways to Fail at Managing Tech Debt15869
technical-debt, maintenance, refactoring, strategies
What Is a Component Library and Should You Build Your Own? (and)15868
components
Verso: A Web Browser That Plays Old World Blues to Build New World Hope (sig)15867
videos, verso, browsers
The Sneaky Costs of Scaling Serverless (zac)15866
scalability, serverless, economics, vercel, aws, comparisons
The Role of Generative AI in Shaping Next-Gen UX Strategies (uxm)15865
ai, user-experience, design, strategies
Let’s Make a Simpler, More Accessible Web (cod)15864
web, web-platform, tooling, simplicity, usability, accessibility, optimization
It’s Time to Talk About “CSS5” (uti/sma)15863
css, w3c
Is CSS Grid Really Slower Than Flexbox? (ben)15862
performance, css, grids, flexbox, layout
HTML Web Components Can Have a Little Shadow DOM, as a Treat (sco)15861
html, web-components, shadow-dom, dom
Figma Typography Variables (fro)15860
figma, typography, variables
101 React Tips and Tricks for Beginners [and] Experts15859
react, tips-and-tricks, best-practices
The Benefits of Learning Programming as a Designer15858
design, career, learning, programming
How to Keep IA Projects From Going Off the Rails (jar)15857
information-architecture
European Accessibility Act Requires Culture to Shift! (cer)15856
accessibility, legal, eaa, culture, leadership
AT Is More Than Screen Readers (aar)15855
accessibility, assistive-tech, screen-readers, terminology, concepts
AI Act Is Here (alv)15854
ai, legal
Ontology Engineering for Beginners15853
owl, tooling
Setting Up CI/CD for Flutter Apps15852
flutter, ci-cd, automation
Programming, I Hate It15851
programming, career
How to Make the Internet More Accessible15850
how-tos, web, accessibility
Attitudes to Digital Accessibility 202415849
surveys, accessibility
Beyond React: How Astro and Its Server Islands Work15848
astro, frameworks, architecture
Tabs, Used Right (nng)15847
design, design-patterns, navigation, usability
What if You Used Container Units for… Everything? (chr/fro)15846
css, units, container-queries
Who Is the Fastest? Node.js, Bun.js, or Deno.js (tre)15845
performance, javascript, runtimes, nodejs, bun, deno, comparisons
What You Want Isn’t Always What You Want (cwo)15844
career
Types of Accessibility Approaches (a11)15843
accessibility, processes, career, collaboration
The Anchor Element (hey)15842
html, links, semantics, terminology, usability
“stripes()”: The Border Function You Never Knew You Needed (jos)15841
css, functions, borders
Mastering Next.js: The Ultimate Guide to Structuring Large-Scale Projects in 202415840
guides, nextjs
Advanced Use Cases of the Node.js Native Test Runner (app)15839
nodejs, testing
Figma and the Cost of Collaboration15838
figma, collaboration
The Evolution of Attention15837
design, case-studies
Cloudflare Once Again Comes Under Pressure for Enabling Abusive Sites (dan/ars)15836
cloudflare
Browsers, Cookies, and Surfing the Web: The Quirky History of Internet Lingo (moz)15835
web, terminology, history
The Anatomy of Accessible Forms: Best Practices (deq)15834
accessibility, forms, html, best-practices
New CSS Logo? (arg)15833
discussions, css
HTML Web Components Make Progressive Enhancement and CSS Encapsulation Easier (css)15832
html, web-components, principles, solid, progressive-enhancement, examples
How to Build a Multilingual Website With Nuxt.js (sma)15831
how-tos, nuxt, internationalization
How I Use “AI”15830
ai, productivity, examples
How Google Handles JavaScript Throughout the Indexing Process15829
google, seo, web-apps, javascript, history, rendering
Interop 2024: Chrome at 100% for the Accessibility Focus Area15828
interoperability, browsers, chrome, accessibility
How to Stop Form Spam Bots With Honeypot Fields15827
spam, bots, forms
The Future Is Up for Grabs When Anyone Can Make Designs15826
design, ai
Nike’s $25B Blunder Shows Us the Limits of “Data-Driven” (pav)15825
product-management, metrics
Does Screen Time Help or Hinder Creativity? (its)15824
creativity, productivity
Using Postman for API Documentation: All You Need to Know15823
apis, documentation, postman
Replacing jQuery UI Datepicker With HTML Date Input (chr)15822
jquery, html
Reading From the Clipboard in JavaScript (ray/fro)15821
javascript
Decoding WCAG: “Change of Context” and “Change of Content” (web)15820
accessibility, wcag, standards
A Handful of Reasons JavaScript Won’t Be Available (bel/pic)15819
javascript, support
New to the Web Platform in July (rac)15818
release-notes, web-platform, browsers, firefox, safari, chrome
Why You Should Ship Your App, Even if It Sucks15817
web-apps, productivity
Faster Continuous Integration Builds at Canva15816
ci-cd, efficiency, optimization, case-studies
Standardization Stories (fan/css)15815
videos, web-platform, css, collaboration, standards
On Mapping the World of Frontend Development (j9t)15814
cross-posts, web-platform, learning, community, frontend-dogma
Misfire (sli)15813
web-platform, cookies, privacy, w3c
Instead of Restricting AI and Algorithms, Make Them Explainable (mfo)15812
ai, algorithms
“git push --force” and How to Deal With It (env+/evi)15811
git
Garbage Collection and Closures (jaf)15810
javascript, functions, closures, garbage-collection
Frontend Security Checklist (tre)15809
security, checklists, react
Developing a RACI Matrix for Accessibility (kar)15808
accessibility, processes, project-management
WebKit Features in Safari 17.6 (jen/web)15807
release-notes, browsers, safari, webkit
Vue and Vite Updates (eva)15806
videos, vuejs, vite
Websites Are Blocking the Wrong AI Scrapers (Because AI Companies Keep Making New Ones) (404)15805
ai, scraping, robotstxt
Flexible Network Data Preloading in Large SPAs15804
performance, single-page-apps, client-side-rendering, data-fetching, preloading
Why Unknown Types Are Useful15803
programming, typescript
What We Got Wrong About HTTP Imports (tin/den)15802
deno, jsr
WebGPU (kai+/w3c)15801
webgpu, standards
WCAG, VPAT, S508, Level A—What on Earth? (int)15800
accessibility, standards, legal, terminology, wcag, vpat-acr, section-508
Top 20 JavaScript Tricks and Tips for Every Developer15799
javascript, tips-and-tricks
Third-Party Cookies Have Got to Go (had/w3c)15798
cookies, privacy, web-platform
The Art of Clean Code: Mastering the SOLID Principles15797
quality, principles, solid
Servo: A Web Rendering Engine for the Future (reg/iga)15796
videos, browser-engines, servo
Patterns for Memory Efficient DOM Manipulation With Modern Vanilla JavaScript (fro)15795
javascript, memory, dom, software-design-patterns
Have It All: External, Styleable, and Scalable SVG (sco)15794
images, svg, css
Accessible Heading Structures for Home Pages (pop)15793
accessibility, headings, homepages
From Parcel to Vite: A Short Story of a 100K LOC Migration15792
migrating, parcel, vite
Designing for Forgiveness: How to Create Error-Tolerant Interfaces15791
design, interaction-design, errors, user-experience
User “Wants” vs. Accessibility (tem)15790
accessibility, usability
Laravel vs. Rails for JavaScript Developers15789
videos, laravel, ruby-on-rails, comparisons
Is It Okay to Make “connectedCallback” Async? (nol)15788
javascript, callbacks, asynchronicity, web-components
Building an “npm create” Package (ach)15787
npm
Automated Ways to Security Audit Your Website15786
security, auditing, automation, tooling
You Can Run Java Like Python Now15785
java, python
The Infuriating Inefficiency of Accessibility Audits (yat)15784
accessibility, auditing, efficiency
Popover API 101 (ami)15783
introductions, pop-overs, apis
A Different Way to Think About TypeScript15782
typescript
What a New Accessibility Class Action Lawsuit Means for Agencies15781
accessibility, legal, business-relations
Green Accessibility for Web Developers15780
videos, accessibility, sustainability
Why the jQuery Creator Uses React and TypeScript (jer+/syn)15779
podcasts, interviews, react, jquery, typescript
What I Learned From Making My Own Design System (pjo)15778
design-systems, lessons
V8 JavaScript Engine: Let’s Read the Code (ant)15777
videos, v8, javascript-engines, javascript
Node.js Adds Experimental Support for TypeScript (sar/soc)15776
nodejs, typescript, experiments
Information Scent: How Users Decide Where to Click15775
information-scent, links, navigation, usability
Cross Platform React (rea)15774
videos, react, native, outlooks
Why Designers Don’t Like Design Systems15773
design, design-systems, creativity
Measuring Design System Compliance of Your Teams15772
design-systems, compliance
React for Two Computers (dan/rea)15771
videos, react
And Now You Understand React Server Components (ken/rea)15770
videos, react, components
Let’s Break React’s Rules (rea)15769
videos, react, hooks
Vanilla React (rea)15768
videos, react, routing
Secure Node.js Applications From Supply Chain Attacks15767
nodejs, security, best-practices, dependencies
Closing the Designer–Developer Gap15766
design, career, collaboration, processes
Benchmarking AWS Lambda Cold Starts Across JavaScript Runtimes (den)15765
deno, aws, serverless, lambda, javascript, runtimes, performance, comparisons
Assessing Components and Patterns for WCAG 2.215764
accessibility, wcag, components, design-patterns
The User Location Is a Lie (aus)15763
geolocation, javascript, apis
The “of S” Syntax in “:nth-child()” (mat)15762
css, selectors
Pop(over) the Balloons (css)15761
html, disclosure-widgets, pop-overs, css
How to Get the Width/Height of Any Element in Only CSS (css/fro)15760
css
AI Crawlers Need to Be More Respectful (eri/rea)15759
ai, crawling, traffic, metrics
The AI Job Interviewer Will See You Now (res)15758
ai, hiring, career
Growing a Design System Organically15757
design-systems, case-studies, scalability
Designing Design Systems: Constructing an Icon System (ado)15756
design, design-systems, icons, images, case-studies
Understanding AbortController in Node.js: A Complete Guide (bet)15755
guides, nodejs, javascript
What to Expect When You’re Optimizing (tka)15754
performance, optimization
Rust Is Revolutionizing JavaScript Development15753
bundling, tooling, rust, javascript
My Favorite Interview Questions for QA Engineers15752
interviewing, quality
Improved Error Messaging for “require(esm)” in Node.js (zac)15751
eleventy
How to Choose the Best Rendering Strategy for Your App15750
how-tos, rendering, strategies, server-side-rendering, client-side-rendering, incremental-static-regeneration, comparisons
Learn CSS Grid First (5t3+/odd)15749
videos, css, grids, layout
Introduction to XAML: A Beginner’s Guide15748
introductions, guides, xaml
What’s New in WebGPU (Chrome 127)15747
release-notes, webgpu, browsers, chrome
Why Not All Voices Should Be Equal in the Design Process15746
design, policies, prioritization, dei
CSS “font-size-adjust” Is Now in Baseline (rac)15745
css, typography, browsers, support, web-platform
The Backlash Against AI Scraping Is Real and Measurable (404)15744
ai, scraping, robotstxt
Math4Devs15743
websites, javascript, math
CSS Scroll Snap Module Level 2 (tab+/w3c)15742
standards, css, scrolling
Clip Pathing Color Changes (chr/fro)15741
css, clipping, masking, colors
A New Path for Privacy Sandbox on the Web15740
browsers, chrome, cookies, privacy, apis, web-platform
What’s New for JavaScript Developers in ECMAScript 202415739
javascript, ecmascript, standards, promises, unicode, webassembly
How to Create Fake Back-End Using IndexedDB15738
how-tos, databases, indexeddb, browser-storage, javascript
Why You Should Have a Brag Document15737
career, documentation
Seriously, You Need to Learn Git (der)15736
git, command-line
“Practical SVG” Is Now Free to Read Online (chr)15735
books, images, svg
Learn Web Components (and)15734
websites, courses, web-components, html, css, dom, javascript
50 TypeScript F*ck Ups15733
books, typescript, mistakes
20 Super Useful CSS Animation Libraries15732
css, animations, libraries, link-lists
Flutter Unit Testing: Understanding “setUp()” and “setUpAll()”15731
flutter, testing
So You Think You Know Box Shadows?15730
shadows, javascript
Better Ways to Use Async Functions in JavaScript15729
javascript, asynchronicity, functions, promises
After CrowdStrike, Programmers Deserve Consequences15728
programming, career, quality
CSS Grid Areas (sha)15727
css, grids, layout
State of Developer Experience 202415726
research, developer-experience
Providing Type Definitions for CSS With “@property” (5t3)15725
css, custom-properties
Macro vs. Micro Conversions (nng)15724
user-conversion, concepts, comparisons
Architecture in an Agile World (may)15723
architecture, agile, processes
State of React 2023 [Results] (sac/dev)15722
surveys, metrics, react
Why Is Spawning a New Process in Node So Slow? (val)15721
nodejs, performance, comparisons
The Web We Want: A Beginner’s Guide to the IndieWeb (pau)15720
slides, guides, web, indieweb
Mapping the Landscape of Gen-AI Product User Experience (gen)15719
ai, overviews
Introducing Svelte 5 (ada/fro)15718
introductions, svelte, release-notes
Getting to the Bottom of Minimum WCAG-Conformant Interactive Element Size (eri/sma)15717
accessibility, design, wcag, css
Don’t Use JS for That: Moving Features to CSS and HTML (kil/jsc)15716
videos, javascript, css, html
CSS Stuff I’m Excited After the Last CSSWG Meeting (mon/css)15715
css, functions, transitions, anchor-positioning
Using pnpm on Heroku15714
pnpm, heroku
The Cloud Run Security Gap You Didn’t Know You Had (and How to Fix It)15713
security, gcp
Override HTTP Response Headers (pat/dev)15712
http, http-headers, dev-tools, browsers, chrome, edge
You’ll Write Less Code With Svelte 5.0, Promises Rich Harris15711
svelte
Breaking Bad News: How to Present Negative UX Research Findings (coo)15710
user-experience, research, communication, how-tos
How to Make Tables Fit on Small Screens15709
how-tos, design, responsive-design, information-design, tables, mobile
How to Incorporate Accessibility Into Your Agile Sprints (mic)15708
how-tos, accessibility, agile, processes, technical-debt
Testing Best Practices for Web Apps15707
videos, testing, best-practices, web-apps
Thoughts on a Global Design System (bka)15706
design-systems
The Pitfalls of In-App Browsers (fro)15705
browsers, mobile, privacy, security, user-experience
Summary of the June 2024 TC39 Plenary in Helsinki (iga)15704
ecmascript, javascript
Styling Tables the Modern CSS Way (mic/pic)15703
css, responsive-design, tables
Can AI Be Used to Write Good Descriptive Alt Text for Images in 2024? (the)15702
accessibility, alt-text, images, ai
Alternative Text in Action15701
accessibility, images, alt-text, writing, examples
A Plea for the Lost Practice of Information Architecture15700
information-architecture, history, link-lists
Expert Handling of Multiple Dimensions of Data (jun)15699
information-design
Flat vs. Deep Hierarchies in Information Architecture (IA) (nng)15698
videos, information-architecture, comparisons
Wait, What’s the Difference Between “:host”, “:host()”, and “:host-context()”?! (and)15697
web-components, css, selectors
Viewport Height and Width Units in Modern CSS15696
viewport, css, units
Node v22.5.0 (Current) (nod)15695
release-notes, nodejs
Named Alternates for WordPress (ede)15694
html, wordpress
Private Browsing 2.0 (wil+/web)15693
browsers, safari, webkit, privacy
It’s Official, Meteor 3.0 Official Release Is Out!15692
release-notes, meteor
Software Testing Fundamentals15691
fundamentals, testing
How to Engineer Your Developer Blog Posts to Have Bigger Impact (pgc)15690
videos, how-tos, blogging, communication, developer-relations
Get the Screen Width and Height Without JavaScript (css)15689
css, tips-and-tricks
Everybody’s Free (to Write Websites) (sar)15688
web, indieweb, blogging, writing
Cloudflare Reports Almost 7% of Internet Traffic Is Malicious (sjv/zdn)15687
web, traffic
Embracing Functional CSS: Have We Moved On?15686
css, presentational-html
13 Cool IntelliJ Features (You Probably Didn’t Know) (das)15685
videos, intellij-idea, code-editors
Character Modeling in CSS (jul/css)15684
videos, css, design, creativity, effects
An Update on Invokers: Invoker Commands in HTML (uti)15683
html, modals, pop-overs
What ARIA Still Does Not Do (ste)15682
html, aria, accessibility, standards
To Hell With the Business Case, Again (mat)15681
accessibility, economics
Thoughts on CSS in 2024 (j9t)15680
css, selectors, resets, logical-properties, custom-properties
JavaScript Event Loop: A Deep Dive15679
javascript, event-loop, events, deep-dives
Getting Stuck: All the Ways “position: sticky” Can Fail (pol)15678
css, layout
CSS Selectors (geo/css)15677
css, selectors, overviews
Why Designers Need to Be More Like Gardeners15676
design, sustainability
19 Microservices Patterns for System Design Interviews15675
interviewing, architecture, system-design, microservices
Verso: A New Browser Based on Servo15674
browsers, verso, servo
It’s Really This Thing That Gets Me (chr)15673
accessibility, overlays
Content Strategy vs. UX Writing (nng)15672
content, content-strategy, writing, user-experience, comparisons, concepts
“@property”: Next-Gen CSS Variables Now With Universal Browser Support (una)15671
css, variables, browsers, support, web-platform
Going With the PDF Reflow (ons/tpg)15670
accessibility, wcag, pdf
How to Add and Update Social Image Previews in WordPress15669
social-media, wordpress, plugins, testing
From Web to Native With React15668
react, migrating
Converging Web Frameworks (mge)15667
videos, frameworks
The Future of Serverless Is WebAssembly15666
videos, serverless, webassembly, outlooks
How to Test Web Applications15665
videos, how-tos, testing, web-apps
3 Design Tips From a Gorgeous New Landing Page15664
videos, design, tips-and-tricks, landing-pages
25 Open Source AI Tools to Cut Your Development Time in Half15663
ai, tooling, productivity, foss, link-lists
Hiring, Lip Service, and Inclusion15662
hiring, interviewing, dei, communication
HTML and CSS Techniques for Inverting Colors15661
css, filters, blend-modes, techniques, colors
Feature Detect CSS “@starting-style” Support (bra)15660
css, transitions, feature-detection, support, browsers
Misconceptions About View Transitions (bra)15659
css, view-transitions, apis
A Guide to Reading and Writing Node.js Streams (mco/pla)15658
guides, nodejs, streaming
Learn About What’s New in Angular 18 From Rakia Ben Sassi (rak+)15657
videos, angular
Why “page.goto()” Is Slowing Down Your Playwright Tests (ste)15656
playwright
Bad Design Is Like a Virus: Design Defects and Latent Failures15655
design
The Bag of Tricks for View Transitions (mar/vtb)15654
websites, css, view-transitions
Introducing @let in Angular (ang)15653
introductions, angular
Rian Rietveld on Understanding the European Accessibility Act and Its Impact on Websites (nat+)15652
podcasts, interviews, accessibility, legal, eaa, wordpress
Homepage Design: 4 Common Mistakes (nng)15651
videos, homepages, design, usability, mistakes
What Is Joomla: The Ultimate Guide15650
guides, content-management, joomla
Transitive Optimization Considered—Interesting (j9t)15649
optimization
Single-Directionally Allowed Overflow (chr/fro)15648
css, overflow
Publishing a TypeScript Module to npm vs. JSR (den)15647
videos, typescript, modules, dependencies, npm, jsr, comparisons
How to Check and Document Design Accessibility in Your Mockups (ste)15646
how-tos, auditing, documentation, prototyping, design, accessibility
Supply Chain Security in npm—We Can Be Optimistic About the Future15645
npm, dependencies, security, provenance
Designing Multimodal Interfaces: Voice + Screen15644
design, voice, prototyping
How I Develop Successful Link Building Strategies for My Clients (moz)15643
seo, strategies, links
A Quick-Ish Accessibility Review: shadcn/ui Charts (ash)15642
accessibility, information-design, shadcn, tooling, auditing, link-lists
Leaner npm Packument (Metadata) Contents15641
npm
Exploring the Challenges in Creating an Accessible Sortable List (Drag-and-Drop)15640
drag-and-drop, accessibility, keyboard-navigation
5 Questions for Miriam Suzanne (mia+/fro)15639
interviews, css, dei, learning
Zoom, Zoom, and Zoom (mia/odd)15638
zooming, css
The Software Engineering Industry in 2024: What Changed in 2 Years, Why, and What Is Next (ger)15637
videos, career, outlooks
The Magic of Clip Path (emi)15636
css, clipping, masking, effects
Playwright vs. Puppeteer: Which Is Better in 2024? (api)15635
playwright, puppeteer, automation, testing, tooling, comparisons
“If” CSS Gets Inline Conditionals (geo/css)15634
css, container-queries, conditionals
Don’t Use web.dev for Accessibility Info (aar)15633
accessibility, learning
15 Page Speed Optimizations That Sites Ignore (at Their Own Risk) (tam/spe)15632
performance, optimization
Interop 2024 Mid-Year Update (rac)15631
interoperability, web-platform, browsers, support
Utility First CSS Isn’t Inline Styles (css)15630
videos, css, presentational-html, atomic-css, caching
Tech Interviews Are Changing—Not for the Better15629
interviewing, career
State of Text Rendering 202415628
fonts, rendering
How to Transform Your Approach to Digital Accessibility From a Reactive Break-Fix Cycle to a Proactive Shift Left Approach (deq)15627
how-tos, accessibility, processes, best-practices
How Keyboard Navigation Works in a CSS Game (css/fro)15626
keyboard-navigation, css, sass
AI Unplugged: Rise (and Fall) of the Robots(.txt)15625
ai, robotstxt, scraping
50 Basic Linux Commands15624
unix-like, command-line
What Is Ladybird? Everything We Know About the New Browser and Web Engine (nim)15623
browsers, browser-engines, ladybird
Sneaky React Memory Leaks: How the React Compiler Won’t Save You15622
react, memory, compiling
System Design Basics—Caching15621
fundamentals, caching, architecture, system-design
Speeding Up the JavaScript Ecosystem—Isolated Declarations (mar)15620
performance, javascript, typescript
Progressive Web Apps (PWA): A Comprehensive Guide15619
guides, web-apps, progressive-web-apps, concepts
How Fast Is JavaScript? Simulating 20,000,000 Particles15618
javascript, performance
Eleventy Buckets and Cascade Layers (mia)15617
eleventy, cascade, css
Creativity Is the Byproduct of Work (fon)15616
processes, creativity, design
Advanced Markdown Using Extensions in Laravel (ami)15615
markdown, laravel
A Practical Guide to Designing for Colorblind People15614
accessibility, guides, design, colors, color-blindness
How to Try Experimental CSS Features (hui)15613
how-tos, css, browsers, safari, chrome, firefox
What’s New With ECMAScript 2024: An In-Depth Guide on the Latest Features (ele/des)15612
guest-posts, guides, overviews, ecmascript, asynchronicity
What’s Coming Next for ESLint (nza/esl)15611
eslint
Script Integrity (chr/fro)15610
embed-code, javascript, security
Optimizing for AI Overviews (moz)15609
ai, seo
Generative AI Is a Climate Disaster (par)15608
ai, sustainability
Button Width Styles (don)15607
buttons, css
Investigating Reddit’s robots.txt Cloaking Strategy15606
robotstxt, scraping, web
Ten Years of Vue (With Evan You) (eva+)15605
podcasts, vuejs, apis, history
How to Debug a Node.js App in a Docker Container15604
how-tos, debugging, nodejs, docker
Dynamic Type on the Web (cho)15603
typography, css, apple, unix-like, accessibility
How to Parse HTML in JavaScript (api)15602
how-tos, parsing, html, javascript
Backend for Frontend (BFF): What You Need to Know15601
backend-for-frontend, architecture
SPA vs. MPA: Which Web Architecture Is Right for You?15600
single-page-apps, multi-page-apps, web-apps, architecture, comparisons
Dialog Dilemmas and Modal Mischief (hdv)15599
videos, modals, pop-overs, accessibility
The Silent Crisis in Open Source: When Maintainers Walk Away (bek/ope)15598
foss, community
Canvas Simulations (gra)15597
ai, canvas
Feature Detect CSS “@property” Support (bra)15596
css, support
Reasons to Use Your Shell’s Job Control (b0r)15595
shells, command-line
Why Is This Thing in Dark Mode? (chr/fro)15594
dark-mode, email
Thoughts on Node.js, Deno, and Bun (nza)15593
nodejs, deno, bun, comparisons
Mythbusting DOM: Was DOM Invented Alongside HTML?15592
myths, dom, html, history
It’s About Time I Tried to Explain What Progressive Enhancement Actually Is (bel/pic)15591
progressive-enhancement
Forget “Show, Don’t Tell”—Engage, Don’t Show! (lea)15590
communication, advocacy, developer-relations, apis
European Accessibility Act (EAA): Top 20 Key Questions Answered (deq)15589
legal, eaa, accessibility
CSS One-Liners to Improve (Almost) Every Project (alv)15588
css, optimization
WebAuthn: Enhancing Security With Minimal Effort (tbe)15587
authentication, webauthn, security
Introducing the MDN HTTP Observatory (mdn)15586
introductions, mdn, http, security
Accessible Form Validation From Scratch—Preparing for Validation (dbe)15585
accessibility, forms, validation
WebAssembly vs. JavaScript: A Comparison15584
webassembly, javascript, comparisons
TypeScript 5.5: A Blockbuster Release15583
typescript
Tuesday, July 2, 2024 Security Releases (nod)15582
release-notes, nodejs, security
Overlays Misunderstand Accessibility (joe)15581
accessibility, overlays
Opting in to CSS Container Queries for an Existing Design System (hey)15580
css, container-queries, design-systems
Moving From Express to Fastify (val)15579
migrating, express, fastify
Guidance on Applying WCAG 2 to Non-Web Information and Communications Technologies (WCAG2ICT) (w3c)15578
guides, accessibility, wcag
CSS Surprise Manga Lines (alv)15577
css, effects
Are Web Components Worth It? (jaf+)15576
podcasts, web-components, html, dom, shadow-dom
RegreSSHion: Remote Unauthenticated Code Execution Vulnerability in OpenSSH Server15575
security, ssh, vulnerabilities
Announcing the Ladybird Browser Initiative (lad)15574
ladybird, browsers
Agile Is Not… Agile Is…15573
agile, concepts
How to Annul Promises in JavaScript15572
how-tos, javascript, promises
How to Use Container Queries Now (phi)15571
how-tos, css, container-queries
Layout and Reading Order (rac/css)15570
videos, css, layout
European Accessibility Act (EAA)—What You Need to Know15569
legal, eaa, accessibility
YouTube Embeds Are Bananas Heavy and It’s Fixable (chr/fro)15568
embed-code, youtube, performance, tooling
You Don’t Know Undo/Redo15567
programming, undo-redo
The 3 Types of CSS Utility Classes (jam)15566
css, presentational-html
On Open Source and the Sustainability of the Commons (plo)15565
foss, licensing
Feedback on a Pagination Pattern (aar)15564
pagination, accessibility
Deploy AWS Lambda Functions With Serverless Framework and Node.js15563
deploying, aws, serverless, lambda, functions, nodejs
Be Careful Using “Grid” (aar)15562
terminology, grids
Do Grayscale Images Take Less Space?15561
images, colors, performance
Why Toggle Switches Suck (and What to Do Instead) (ada)15560
design, toggles, usability, anti-patterns
Why Have a Personal Site Instead of Social Media? (kev)15559
career, blogging, social-media
Accessible PDF Forms Online—There’s a Catch (ons/tpg)15558
accessibility, pdf, forms
7 Ways to Champion Accessibility in Your Company15557
accessibility, advocacy
Integrate Go Library Into a JavaScript Webpage With WebAssembly (td8)15556
go, javascript, webassembly
Figma AI (chs)15555
figma, ai, design
Create npm Package With CommonJS and ESM Support in TypeScript15554
npm, dependencies, commonjs, esm, typescript
Strangling the Monolith15553
videos, monoliths, micro-frontends, migrating
How We Tamed Node.js Event Loop Lag: A Deepdive15552
nodejs, event-loop, events
Comprehensive React.js Cheatsheet for Developers15551
react, cheat-sheets
5 Questions for Bramus Van Damme (bra+/fro)15550
interviews, css, web-platform
Product and UX: Study Guide (nng)15549
guides, product-management, user-experience, training, link-lists
Checkboxes: Design Guidelines (nng)15548
forms, design, guidelines, conventions
This Month in Servo: Text Fields, Better Emoji, Devtools, and More (ser)15547
release-notes, servo
The True Story—as Best I Can Remember—of the Origin of Mosaic and Netscape15546
videos, history, browsers, mosaic, netscape
How to Improve Your Microcopy: UX Writing Tips for Non-UX Writers (sma)15545
how-tos, writing, microcontent, user-experience, tips-and-tricks
“Good Commit” vs. “Your Commit”: How to Write a Perfect Git Commit Message15544
how-tos, commit-messages, version-control, git
Browser Support Tests in JavaScript for Modern Web Features (chr/fro)15543
browsers, support, feature-detection, javascript
A Proposal for MDN to Use the APG15542
accessibility, documentation, mdn
Don’t Be Fooled by Figma’s New AI Features15541
figma, ai
Why and How You Should Rate-Limit Your API15540
apis
Understanding React Hooks15539
react, hooks
The Time for Designers to Learn to Code Is Now (bel/pic)15538
design, career, tooling, training, link-lists
Microsoft 1998 = Apple 202415537
microsoft, apple, browsers
Meaningful Ways to Measure Website Success (web)15536
metrics, economics
The State of Digital Accessibility in Europe15535
websites, accessibility, research
Enhancing The New York Times Web Performance With React 1815534
performance, react, case-studies
New to the Web Platform in June (rac)15533
release-notes, web-platform, browsers, firefox, chrome, safari
Accessibility Object Model (sun+/w3c)15532
accessibility
AI Anxiety and How to Design for It: Resources and Best Practices15531
ai, link-lists
“I Have Never Used a Library, Framework, or an API. I Don’t Know What to Do.”15530
career, training, programming, libraries, frameworks, apis
Polyfill Supply Chain Attack Embeds Malware in JavaScript CDN Assets15529
security, malware, vulnerabilities
The Little Things: Confusing Error Messages (brw)15528
errors, images, developer-experience
I Got Hacked and Blew Up Prod15527
career, databases, docker, debugging
htmx Does Not Play Well With Content Security Policy15526
htmx, csp
How to Make a Strong Case for Accessibility (vit/sma)15525
how-tos, accessibility, communication, advocacy
Event Loop and Concurrency Model–Task Queue—How the JS Engine Works (fro)15524
javascript, javascript-engines, event-loop, concurrency
Ecma International Approves ECMAScript 2024: What’s New? (rau)15523
ecmascript, standards
Consent, LLM Scrapers, and Poisoning the Well (eri)15522
ai, scraping, legal
A Text-Reveal Effect Using “conic-gradient()” in CSS (pre/fro)15521
css, functions, gradients, effects
The EU Accessibility Act—Time to Start Implementation Projects Now15520
accessibility, compliance, legal
Network Observability: Beyond Metrics and Logs (leo)15519
network, observability, monitoring, logging
Catching Compromised Cookies (sla)15518
cookies, security, testing
Two New Artificial Intelligence Laws and Their Effects on Accessibility (equ)15517
accessibility, ai, legal
The Design Purity Trap and How to Escape It (ber)15516
design, creativity
Beyond Monospace: The Search for the Perfect Coding Font (rom+/evi)15515
fonts, developer-experience
Beej’s Guide to Git (bee)15514
guides, git, command-line, configuration
Advanced JavaScript Performance Optimization: Techniques and Patterns15513
javascript, performance, optimization, techniques, software-design-patterns
Kagi’s AI Integration Philosophy (kag)15512
kagi, ai, principles
Why Do Designers Become Managers?15511
design, career
AI Ethicists Are Speaking Out, but Are We Listening?15510
ai, ethics
Web Design Engineering With the New CSS (mat/css)15509
videos, css
AI Companies Ignoring robots.txt (mjt)15508
ai, scraping, robotstxt
New JavaScript Set Methods (bsm/mdn)15507
javascript, methods
Use Node Version Manager With Oh My Zsh15506
nvm, command-line, oh-my-zsh
How to Set Up Serverless Framework to Deploy AWS Lambda, Queues, and DynamoDB With Node.js15505
how-tos, serverless, deploying, aws, lambda, nodejs
From ZeroVer to SemVer: A Comprehensive List of Versioning Schemes in Open Source (and)15504
foss, versioning, semver, link-lists
Backdoor Slipped Into Multiple WordPress Plugins in Ongoing Supply-Chain Attack (dan/ars)15503
wordpress, plugins, security
Concept15502
design, concepts
Microfeatures I Love in Blogs and Personal Websites15501
indieweb, blogging, functionality
Why Is It So Difficult to Give Best in Class Accessibility Examples of Websites? (cer)15500
accessibility
In Detail: 1.4.11 Non-Text Contrast (User Interface Components) (yat)15499
accessibility, wcag, colors, contrast, borders
Is It Good Design, or Does It Just Look Good?15498
design
No No-JavaScript (dbu)15497
javascript, css, support, progressive-enhancement, graceful-degradation
Exploring Randomness in JavaScript15496
javascript, randomness
7 Use Cases for JavaScript Proxies15495
javascript
Measuring Developer Experience at Google15494
research, developer-experience, metrics, google
Design Extremes of Custom Accessibility Actions15493
accessibility, design, customization
Understanding JWT Authentication: A Comprehensive Guide With Examples15492
guides, examples, json-web-tokens, authentication
MDX or: How I Learned to Stop Worrying and Love Multimedia Writing (fre/sma)15491
markdown, mdx, components
Performance Mistakes You Might Not Realize You Are Making15490
videos, performance, mistakes, angular
Tracking the Impact of Our Content Design Work15489
content, design, metrics
A Rant About Front-End Development15488
content, html, css, javascript, preprocessors, frameworks, complexity
Bun Is Much Faster Than Node.js 22 at Decoding Base64 Inputs (lem)15487
bun, nodejs, performance, base64, comparisons
State of JavaScript 2023 [Results] (sac+/dev)15486
surveys, metrics, javascript
Uniting Web and Native Apps With 4 Unknown JavaScript APIs (mon/sma)15485
web-apps, native, javascript, apis
Simplest View Transitions Multi Page Demo (No JavaScript) (mor)15484
css, view-transitions, apis, examples
Seamless Screenshot Testing for Compose With Screenshotbot15483
screenshots, images, regressions, testing, tooling
Node v20.15.0 (LTS) (sat/nod)15482
release-notes, nodejs
Inline Conditionals in CSS, Now? (lea)15481
css, conditionals
Announcing TypeScript 5.5 (dan/typ)15480
typescript, release-notes
How to Perform Data Validation in Node.js (app)15479
how-tos, nodejs, validation
Footnotes Progressively Enhanced to Popovers (chr/fro)15478
footnotes, pop-overs, progressive-enhancement, javascript, css
Mina Tamang on SEO Techniques That Prioritise the User Experience (nat)15477
podcasts, interviews, seo, user-experience, techniques
Understanding React Compiler15476
react, compiling
The Hacking of Culture and the Creation of Socio-Technical Debt (sch)15475
culture, security
The Case for Web Components (dav)15474
books, web-components
Positioning Popover Elements (Pseudo-Anchoring) (chr)15473
pop-overs, javascript, positioning
npm and Node.js Should Do More to Make ES Modules Easy to Use15472
npm, nodejs, esm
Know the “search” Element (j9t)15471
html, semantics
Mike McQuaid on 15 Years of Homebrew (mik)15470
interviews, foss
Some UX Design Principles Startups Should Know15469
user-experience, design, principles
Firefox DevTools Newsletter 127 (nic/fir)15468
release-notes, browsers, firefox, dev-tools
How Top HR Agencies Build Trust Through Logo Designs15467
design, images, logos, branding
What Is the Best Browser for Privacy?15466
browsers, privacy, comparisons, brave, firefox, tor-browser, vivaldi, epic
Field Testing CSS Containment for Web Performance Optimization (scr)15465
css, containment, performance, optimization
A Hands-On Guide to Setting Up Zsh, Oh My Zsh, asdf, and Spaceship Prompt With Zinit for Your Development Environment15464
guides, zsh, oh-my-zsh
When Technical Debt Becomes Institutional Knowledge15463
technical-debt, documentation, economics
Modern CSS Layout Is Awesome: Talking and Thinking About CSS Layout (mic)15462
css, layout
Writing a WordPress Theme in Less Than 4 KB15461
wordpress, theming, minimalism, performance
The Frontend Treadmill (pol)15460
fundamentals, frameworks, maintenance, craft, career
Inline Conditionals in CSS? (lea)15459
css, conditionals
How Content Creation Helped Me Land My First Tech Job15458
content, career
Building a Responsive Menu With CSS (and No JavaScript) (cor)15457
responsive-design, css, navigation
Accessibility Maturity Model (w3c)15456
accessibility, processes, culture, leadership
A Brief Introduction to Keyboard Accessibility (kar)15455
introductions, accessibility, keyboard-navigation, focus
Cloud Computing Platforms15454
cloud-computing, aws, azure, gcp
The Way We Design AI Looks Like Nostalgia Already15453
design, ai
How to Increase the Visibility of Error Messages (nng)15452
videos, how-tos, errors, usability
How React 19 (Almost) Made the Internet Slower (cod)15451
react, performance
Say “No” to “console.log”!15450
javascript, console
Building a User-Centered Product-Management Culture (uxm)15449
product-management, culture, user-experience
What Happens When a Major npm Library Goes Commercial? (mco)15448
npm, dependencies, foss
Humanizing Technology in the Age of Conscious AI (uxm)15447
ai, hci
htmx 2.0.0 Has Been Released! (htm)15446
release-notes, htmx
Design Without Process, or the Form Factor Trap (pav)15445
design, processes
Mastering JavaScript Generators15444
javascript, functions
Dealing With Unicode Strings, Done Right and Better15443
unicode, javascript
BEM Modifiers in Pure CSS Nesting15442
bem, css, nesting
OAuth Authentication (rya)15441
authentication, authorization, oauth, security
Virtualization and Containerization With Docker15440
containerization, docker
Safari 18—What Web Features Are Usable Across Browsers? (ste)15439
browsers, safari, support, interoperability, css, javascript
UUIDv7 in 22 Languages (ant)15438
programming, javascript, python, sql, shells, java, php, go, rust, ruby, lua, dart, perl, clojure
What Is Mixed Content? (fre)15437
security, http
What Does “aria-hidden=true” Actually Do to Interactive Elements? (cer)15436
accessibility, aria, screen-readers, hiding
The Basics of DNS: Understanding the Internet’s Directory Service15435
fundamentals, dns
Researchers Uncover npm Registry Vulnerability to Cache Poisoning and DoS Attacks (sar/soc)15434
npm, dependencies, vulnerabilities, caching, security
Minimal SVG Favicon (sto)15433
svg, images, favicons, minimalism
I Made My Own JSON Parser15432
json, parsing
Dual Publishing ESM and CJS Modules With tsup and “Are the Types Wrong?” (joh)15431
dependencies, esm, commonjs, tooling, typescript, type-safety
HTML Markup Explained: Building Blocks of Modern Web Pages15430
html, fundamentals
Writing Your First Visual Regression Check in Playwright15429
design, testing, regressions, playwright
How JavaScript Is Finally Improving the Module Experience15428
javascript, modules, esm, commonjs, developer-experience, webassembly
Using AI to Encourage Best Practices in the Code Review Process15427
research, best-practices, code-reviews, ai
Setting Up Typography Variables in Figma15426
figma, typography, variables
What Are CSS Container Style Queries Good For? (mon/sma)15425
css, style-queries, container-queries
Why You Should Use Redux in 2024 (git)15424
videos, redux, state-management
Difference Between Docker, Kubernetes, and Podman for System Design Interview?15423
docker, kubernetes, podman, architecture, system-design, interviewing, concepts
Use of “ch” Unit Considered Inappropriate (in Certain Circumstances) (ric)15422
css, units, typography
How to Create Truly Accessible Forms (cjf)15421
videos, how-tos, accessibility, forms
The WCAG for Content Writers (hom)15420
writing, content, wcag, accessibility, link-lists
Perfect Bug Report15419
websites, writing, quality, bugs
Blazing Fast Websites With Speculation Rules (deb)15418
performance, speculation
Lesser-Known CSS Features That You Should Learn Now15417
css, functions
Web Platform Features Explorer15416
web-platform, support, browsers