Tech is political: The people under attack in Palestine 🇵🇸, Iran 🇮🇷, and Lebanon 🇱🇧 are people like us. They’re our brothers and sisters, too. Read up on their history, scrutinize what you’re told, and demand respect and accountability. Hide

Frontend Dogma

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

→ 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#
Node.js TSC Confirms: No Intention to Remove npm From Distribution (sar/soc)14982
nodejs, npm
Going Beyond Pixels and (r)ems in CSS—Absolute Length Units (uti/iod)14981
css, units
CSS Values and Units Module Level 3 (tab+/w3c)14980
standards, css, units
CAPTCHA Excludes Disabled Web Users (zel)14979
accessibility, captcha
Accessible Forms With Pseudo Classes (css)14978
accessibility, forms, css, selectors
Relicensing and Rug Pulls14977
foss, licensing, history
Node.js: The Documentary (isa+)14976
videos, nodejs, history
Welcome to Future of Web Accessibility Based on Predictors (jar+)14975
videos, accessibility, outlooks
Avoid These Design System Traps14974
design-systems
“__dirname” Is Back in Node.js With ES Modules (phi)14973
nodejs, esm
Microservices Promised Freedom but Delivered Dependencies (pur)14972
microservices, dependencies
This Pattern Will Wreck Your React App’s TS Performance (mat)14971
design-patterns, react, typescript, performance
Optimizing JavaScript for Fun and for Profit14970
javascript, optimization
On the Gift of OKR for Company Culture (j9t)14969
processes, okr, culture
On Popover Accessibility: What the Browser Does and Doesn’t Do (hdv+)14968
accessibility, pop-overs, html
How to Test 3.3.8 Accessible Authentication (Minimum) (sib/tpg)14967
how-tos, accessibility, testing, authentication
[Bulma] 1.0.014966
release-notes, bulma
Building a Micro htmx SSR Framework (mco/pla)14965
frameworks, htmx, examples
Psychology and UX: Decoding the Science Behind User Clicks14964
user-experience, design, principles
Angular Signals: Best Practices14963
angular, signals, best-practices
Understanding Memory Heap and Memory Leaks—How the JS Engine Works (fro)14962
javascript-engines, memory, garbage-collection, asynchronicity
The Box Model and Box Sizing (bel/pic)14961
css, box-model, concepts
Progressive Disclosure Defaults (ada)14960
css, forms, interaction-design
How to Plan Your First Successful Website (web)14959
how-tos, processes, project-management
How to Create a Website and a PDF From the Same Codebase (spa/clo)14958
how-tos, code-generation, pdf, functionality
Folder Structures in React Projects14957
react, architecture
Aesthetic Layouts: 2 Column Magazine With “shape-outside” (jhe)14956
code-pens, layout, css
Essential CSS Tools for Developers (nim)14955
css, tooling
Build a Full-Stack App With Node.js and htmx14954
web-apps, nodejs, htmx
How to Assess Your Fit for a Job Description: A Guide for Technologists (wom)14953
how-tos, guides, interviewing, career
Using Relative Colors (chr/mdn)14952
css, colors
Chill Scroll Snapping: Article Headers (chr/fro)14951
css, scrolling
The Ultimate Guide to Understanding npx vs. npm14950
guides, npx, npm, nodejs
Make a Web Browser: Beginner’s Guide (nim)14949
guides, browsers, browser-engines
Empowering the User Experience Through Microinteractions: 7 Best Practices (uxm)14948
user-experience, interaction-design, best-practices
A Designer’s Role Is Not “at the Table”14947
design, career
How Meta Improved Their Cache Consistency to 99.9999999914946
facebook+meta, caching
Accessibility Foundations (ihe/tpg)14945
accessibility, fundamentals, link-lists
Observability Is an Illusion (pur)14944
observability, logging, monitoring, alerting
“require(esm)” in Node.js (joy)14943
nodejs, ecmascript, esm, commonjs
The Power of Textual Content in UX Design (uxm)14942
content, user-experience
Oh Sh*t, My App Is Successful and I Didn’t Think About Accessibility14941
accessibility
I’m So Old: Web Edition (dav)14940
web, history
How Web-Site Design and Social Media Work Together (uxm)14939
design, content, social-media
How to Kill the Cascade (fon)14938
css, cascade, resets, scope
Every React Concept Explained in 12 Minutes14937
videos, react, concepts
Comparing ECMAScript Modules and CommonJS14936
comparisons, esm, commonjs
Build a Node App With TypeScript (mat)14935
nodejs, typescript, pnpm, esm
A Comparison of JavaScript CRDTs (alm)14934
javascript, types, comparisons
Why UI Designers Should Understand Flexbox and CSS Grid14933
design, layout, flexbox, grids, css
Time to Ditch Analytics? Tracking Scripts and Web Sustainability (mic)14932
embed-code, google, analytics, sustainability, performance, compliance
2024 Cheat Sheet Collection14931
cheat-sheets, link-lists
Migrating Away From Jest and Achieving Over 90% Reduction in Running Time (pat)14930
migrating, jest, testing, memory, performance
How Web Bloat Impacts Users With Slow Devices14929
performance, metrics, comparisons, web
Copy Objects Ways in JavaScript14928
javascript, objects
Webflow 101: A Guide for Beginners14927
introductions, guides, webflow, low-and-no-code
Deploying Remix to GitHub Pages (rem)14926
videos, deploying, remix, github-pages
How to Optimize Cumulative Layout Shift (CLS) on Shopify Sites (sia)14925
how-tos, performance, web-vitals, optimization, shopify
How (In)Efficient Are Engineering Organizations?14924
efficiency, processes, engineering-management
Quick Tip: Creating a Date Picker in React14923
tips-and-tricks, react, functionality
Accessibility in Design Systems: A Comprehensive Approach Through Documentation and Assets14922
accessibility, design-systems, documentation, dei
Skeuomorphism (nng)14921
design, terminology
Homepage Design: 5 Fundamental Principles (nng)14920
design, homepages, principles
Performance Tooling in 2024 and Beyond (pau)14919
performance, tooling, browsers, dev-tools, lighthouse
There Is No EU Cookie Banner Law14918
consent-management, cookies, legal
Qwik vs. Next.js: Which Framework Is Right for Your Next Web Project?14917
frameworks, comparisons, qwik, nextjs
When “Semantic Tokens” Are No Longer Semantic14916
design-tokens, semantics
What Is Safe Alignment in CSS? (chr/fro)14915
css, layout, user-experience
The Golden Age of Accessibility14914
accessibility
Make Your Functions More Reusable With Generics (mat)14913
typescript, functions, generics, maintainability
Arguments for Opening Links in a New Tab or Window (gri/clo)14912
links, usability
WCAG 2.2 Detective Skills14911
accessibility, standards, wcag
How to Design Icons in Figma14910
how-tos, images, icons, figma, design
How to Avoid Flaky Tests in Playwright14909
how-tos, testing, flakiness, playwright
A Beginner’s Guide to Node.js Worker Threads (bet)14908
guides, nodejs, worker-threads
You Want “border-color: transparent”, Not “border: none” (dav/fro)14907
css, borders, transparency+opacity, accessibility, contrast
HTML Performance Optimization: Tips for Faster Loading Pages14906
html, landing-pages, performance, optimization, tips-and-tricks
What’s Next for a Global Design System (bra)14905
design-systems
There Are No Standards Police (mno)14904
standards, policies, processes
The Problem With Data Attributes for Text Effects (man)14903
html, custom-data, css, typography, effects
The Problem With AI (cfe)14902
ai
Ruby Is Complicated14901
html
Refactoring My Ugliest Code With Signal View Queries14900
videos, refactoring, angular
My New Favorite CSS Trick: “will-change”14899
css, animations, transitions, tips-and-tricks
Another JS Registry—Seriously?! (den)14898
videos, jsr, dependencies, javascript
25 Unnoticeable Features of JavaScript14897
javascript
Runtime Compatibility (asc+)14896
websites, runtimes, interoperability, comparisons, bun, deno, netlify, nodejs
The Essential Guide to Microcopy and Becoming a More Literate Designer14895
guides, design, microcontent, content, writing
5 Exciting New JavaScript Features in 202414894
javascript
Marking the Web’s 35th Birthday: An Open Letter (tim)14893
open-letters, web, history, anniversaries
Interaction to Next Paint Is Officially a Core Web Vital (rvi)14892
performance, web-vitals
15 Years of Running a Personal Website (ste)14891
indieweb
Why Your Microservices Architecture Is Probably Overkill (and How I Learned to Love the Monolith Again) (pur)14890
architecture, microservices, monoliths
Thoughts on Embedding Alternative Text Metadata Into Images (eri)14889
accessibility, images, metadata
The “10× Engineer”: 50 Years Ago and Now (ger)14888
productivity, processes, career, history
Spread vs. Rest Operators in JavaScript14887
javascript, operators, comparisons
How to Read Files Quickly in JavaScript (lem)14886
how-tos, javascript, file-handling
Building Websites and Building Websites Well (j9t)14885
quality, craft, community
A Letter to My Younger Self, as an Accessibility Advocate (hbu)14884
accessibility, advocacy, retrospectives
Accessibility: Implementing Focus Traps14883
accessibility, focus, keyboard-navigation
JSON Canvas14882
websites, standards, json, canvas
Have You Optimized for INP?14881
performance, web-vitals, optimization
What Is INP and Why You Should Care (whi/get)14880
performance, web-vitals, monitoring
Streaming HTML (chr/fro)14879
html, php, streaming
IDEs vs. Code Editors: Everything You Need to Know (jet)14878
code-editors, comparisons, concepts
Express.js With TypeScript—Setup, Examples, Testing14877
videos, express, typescript, testing, examples
Distinguishing Between ARIA and Native HTML Attributes (deq)14876
html, aria, attributes, accessibility, comparisons
Comparing JavaScript Frameworks: Templates14875
javascript, frameworks, templates, comparisons
Are We Watching the Internet Die? (edz)14874
web
Announcing Speedometer 3.0: A Shared Browser Benchmark for Web Application Responsiveness14873
performance, tooling, metrics
Alt Text for CSS Generated Content (tem)14872
css, generated-content, alt-text, accessibility
A Gentle Introduction to Generics in TypeScript14871
introductions, typescript, generics
Optimising Your Design System With Figma’s Variables14870
design-systems, optimization, variables, figma
Things I Learned While Building My JS Library14869
javascript, libraries, lessons
CSS Button Styles You Might Not Know (dbu)14868
html, css, buttons
Replace ESLint and Prettier With Biome.js14867
biome, eslint, prettier, comparisons, tooling, remix
Jakob Has Jumped the Shark (aar)14866
accessibility, link-lists
How to Invert the Colors Using CSS (ron)14865
css, colors, filters, images
eslint-plugin-depend14864
packages, npm, maintenance, simplicity
Access by a Thousand Curb Cuts (yat)14863
accessibility
Navigating the Future of Frontend14862
frameworks, web-platform, outlooks
Asking Users for Their Pronouns: A Guide for UX Designers14861
guides, user-experience, communication
Creating Color Palettes With the CSS “color-mix()” Function (mic)14860
css, functions, colors, color-palettes
Add Superpowers to Your CSS Variables With Style Queries (jar/van)14859
css, style-queries, custom-properties
Modern CSS Tooltips and Speech Bubbles II (css/sma)14858
tooltips, css, techniques
How “HEAD” Works in Git (b0r)14857
git
Dissecting Layered Architecture (yok)14856
architecture
Managing Static Files in Django: A Comprehensive Guide14855
guides, django, file-handling
How to Check and Set the “NODE_ENV” Environment Variable and Its Use in a Project14854
how-tos, nodejs, environments
AVIF Is the Future of Web Images14853
images, avif, performance, outlooks
The Quiet, Pervasive Devaluation of Frontend (col)14852
html, css, craft, career, community
Some Little Ways I’m Using CSS “:has()” in the Real World (bel/pic)14851
css, selectors, examples
How to Test 2.5.8 Target Size (Minimum) (sib/tpg)14850
how-tos, accessibility, testing
Taming the Shadow DOM: Injecting Global Styles With Adopted Stylesheets14849
shadow-dom, dom, css
10 Figma Keyboard Shortcuts: A Cheat Sheet for UX Designers14848
figma, keyboard-shortcuts, cheat-sheets, design
Release Notes for Safari Technology Preview 190 (jon/web)14847
release-notes, browsers, safari
5 Ways Productivity Culture Kills Business Agility14846
productivity, agile, economics, culture
Leadership Is a Hell of a Drug (lud)14845
leadership, engineering-management
90% of Designers are Unhirable?14844
design, processes, career
Exploring the Creative Power of CSS Filters and Blending14843
css, blend-modes, filters, effects
The Ultimate Guide to Choosing the Best React Website Builder14842
guides, react, tooling, comparisons, link-lists
WebAssembly JSPI Is Going to Origin Trial14841
webassembly, origin-trials
Sometimes, a Button Just Wants to Look Like a Button14840
design, usability, buttons
The End of My Gatsby Journey (mon)14839
gatsby, frameworks, comparisons
SSG, SSR, ISR, CSR Rendering Strategies in Next.js (fro)14838
static-site-generation, server-side-rendering, incremental-static-regeneration, client-side-rendering, rendering, strategies, comparisons, nextjs
Simplify Your CSS Using “:is()” and “:where()” Pseudo-Classes (zor/css)14837
videos, css, selectors
Making Room for Long List Markers With Subgrid (nol)14836
html, lists, css, grids
Internationalization With Remix (rem)14835
remix, internationalization
Announcing TypeScript 5.4 (dan/typ)14834
release-notes, typescript
Best Practices for Inclusive Design (slo)14833
design, dei, accessibility, best-practices
WebKit Features in Safari 17.4 (jen+/web)14832
release-notes, browsers, safari, webkit
How to Ensure Your Designs Work if You Can’t Access Sample Data14831
how-tos, design, usability, metrics, testing
Data Table Design Patterns14830
information-design, tables, design-patterns
How to Use WebSockets in Node.js to Create Real-Time Apps (cra)14829
how-tos, websockets, nodejs
When We Talk About Front-End Performance, What Are We Talking About14828
performance, metrics, web-vitals, lighthouse
JavaScript Runs the World—Maybe Even Literally (wir)14827
javascript, programming, web
SemVer Simplified: An Introduction to Semantic Versioning14826
introductions, semver, versioning
WCAG? More Like, W-What?! (stv)14825
accessibility, wcag, link-lists
The 88×31 Archive14824
web, images, history
Modern Git Commands and Features You Should Be Using14823
git, command-line
JSR: Second Look (dbu)14822
jsr
Designing for Mobile Accessibility: Enhancing the User Experience on Small Screens (uxm)14821
design, accessibility, user-experience, mobile
Achieving Design Collegiality While Maintaining Psychological Safety (uxm)14820
design, collaboration
How npm Install Scripts Can Be Weaponized: A Real-World Example of a Harmful npm Package (eth)14819
npm, dependencies, examples, security
VPS Showdown—March 2024—DigitalOcean vs. Linode vs. Vultr14818
servers, hosting, comparisons, metrics
Visualizing Frontend Architecture (max)14817
architecture, documentation, visualization
We Need to Talk About Jakob (mat)14816
accessibility
Tools That Make Me Productive as a Software Engineer14815
tooling, productivity, link-lists
CSS for Printing to Paper14814
css, print
Bugs I’ve Filed on Browsers (nol)14813
browsers, chromium, firefox, webkit, quality
Accessibility Has Not Failed—It Has Not Even Started for Real (cer)14812
accessibility, ai
Accessibility Darkness (ste)14811
accessibility, overlays
The Faster Lambda Runtime—Node.js or LLRT? We Benchmarked14810
lambda, javascript, runtimes, nodejs, comparisons, metrics
Emerging UX Patterns in Generative AI Experiences14809
user-experience, design-patterns, ai
Planning a Design System Generation (nat)14808
design-systems, automation
The Hunt for the Missing Data Type (hil)14807
types, algorithms
Go Ahead and Block AI Web Crawlers (cor)14806
robotstxt, crawling, scraping, ai
Introducing JSR—the JavaScript Registry (lca+/den)14805
introductions, jsr, deno, dependencies, javascript
Team Productivity Metrics for Engineering Managers14804
productivity, metrics, engineering-management
Apple Says iOS 17.4 Won’t Remove Home Screen Web Apps in the EU After All (9to)14803
browsers, apple, mobile, web-apps
An Introduction to Webflow—the No-Code Website Builder14802
introductions, webflow, low-and-no-code
Design System Generations (nat)14801
design-systems, processes
Retrofitting Fluid Typography (ric)14800
liquid-design, typography, css
Web Tech Trends to Watch in 2024 and Beyond (web)14799
trends, design, dark-mode, ai, sustainability, minimalism
TIL—“submit()” Versus “requestSubmit()” (ray)14798
javascript, comparisons
Modern CSS Tooltips and Speech Bubbles (css/sma)14797
tooltips, css, techniques
Eloquent JavaScript (mar)14796
websites, books, javascript
Apple Backs Off Killing Web Apps, but the Fight Continues (owa)14795
web-apps, apple
“AI” and Accessible Front-End Components: Is the Nuance Generatable? (hdv)14794
accessibility, web-components, ai
A Love Letter to the Underrepresented in Tech14793
community
Diving Into CSS Interactivity (daw+/sto)14792
videos, css
What Is Inclusive Design, and How Does It Relate to Accessibility? (slo)14791
design, dei, accessibility
New to the Web Platform in February (rac)14790
release-notes, web-platform, browsers, firefox, chrome, safari
Understanding Cookies and Sessions in React14789
react, authentication, cookies
Why Does “is-number” Package Have 59M Weekly Downloads?14788
dependencies, npm
What You Need to Know About Software Requirements14787
software-design, best-practices
The Wax and the Wane of the Web (ste/ali)14786
web-platform, history
Techniques to Break Words (aar)14785
techniques, html, css, content
Keyboard Accessibility Testing on Mobile Devices14784
accessibility, testing, keyboard-navigation, mobile
Choosing the Right Node.js Package Manager in 2024: A Comparative Guide (nod)14783
guides, nodejs, dependencies, comparisons
Accessibility Has Failed: Try Generative UI = Individualized UX14782
accessibility, usability, ai, outlooks
Ultimate Guide to Visual Testing With Playwright14781
guides, testing, regressions, playwright
How to Create a Sidebar Navigation With Astro, Tailwind CSS, and Alpine.js14780
how-tos, navigation, functionality, astro, tailwind, alpinejs
Top 8 Recent V8 in Node Updates (app)14779
nodejs, v8
Creativity Lies in the Paradoxes14778
creativity, design
Enhanced Internationalization (I18N) in Next.js 1414777
nextjs, internationalization
Test Quality vs. Bashing Tailwind CSS (mar)14776
tailwind, css, comparisons
So, What Exactly Did Apple Break in the EU? (tom)14775
browsers, apple, mobile, support, web-apps, apis
Making Math Accessible (ons/tpg)14774
accessibility, math
Going Beyond Pixels and (r)ems in CSS—Container Query Length Units (uti/iod)14773
css, container-queries, units
Apple vs. PWAs—Go Act Now and Help Avoid This Disaster… (cod)14772
apple, web-apps, progressive-web-apps, community
An HTML Switch Control (ann+/web)14771
html, css, forms
What Is Vuetify in Vue.js?14770
vuetify, vuejs
A Guide to CSS Cursor Types14769
guides, css, cursors
The 3 Capabilities Designers Need to Build for the AI Era14768
design, career, training, ai, link-lists
How to Use Server-Sent Events in Node.js (cra)14767
how-tos, nodejs, events
Screen Readers and Drag-and-Drop: Grabbing and Releasing Elements (dar)14766
drag-and-drop, accessibility, browsers, screen-readers, support
Tumblr and WordPress to Sell Users’ Data to Train AI Tools (404)14765
wordpress, ai
YouTube Video Embedding Harm Reduction (jvo)14764
multimedia, embed-code, youtube, html, privacy
ServerlessHorrors (and)14763
websites, serverless, cloud-computing
Reporting Core Web Vitals With the Performance API (geo/sma)14762
apis, performance, web-vitals
How to Lazy-Load CodePen and CanIUse Embeds14761
how-tos, embed-code, performance, codepen, caniuse
Here Lies the Internet, Murdered by Generative AI14760
web, content, ai
AI and Design Systems (bra)14759
ai, design-systems
A Simple Mistake That Can Screw Up Your Light/Dark Theme (and How to Fix It) (kev)14758
videos, mistakes, dark-mode, css
A Fun Line of Code (dbu)14757
javascript, apis, multimedia
Speaker Spotlight: Michelle Barker (mic)14756
interviews, css, sustainability
Why I Use Firefox (sim)14755
browsers, firefox
Advanced Figma Tips and Tricks 2024: Little Gems We Love14754
figma, tips-and-tricks
Open Letter to Tim Cook, Sabotaging Web Apps Is Indefensible (owa)14753
open-letters, apple, web-apps
CSS Foundations: What Is IACVT? (bra)14752
css, fundamentals
What Is a Single-Page Application? (hey)14751
single-page-apps, javascript, performance, user-experience
The CSS Cascade—a (Re)Introduction (mat)14750
videos, css, cascade
No Outer Margin14749
css, margins, spacing, components
How to Build a Newthing14748
how-tos, processes, creativity, maintenance
CSS-Only Bottom-Anchored Scrolling Area (kit)14747
css, scrolling
A Web Designer’s Accessibility Advocacy Toolkit (sma)14746
accessibility, advocacy, strategies
10 Takeaways From the WebAIM Screenreader Survey #10 (kar)14745
accessibility, screen-readers
Home Screen Advantage (sli)14744
browsers, apple, mobile, support, web-apps, web-platform
WebAIM Screen Reader User Survey 10 (den)14743
accessibility, screen-readers
The Power of Patterns and Playbooks in Content Design (kat)14742
design, content, design-patterns
Understanding Event-Driven Architecture14741
architecture, events
Navigating Signals: An Efficient Alternative to React Hooks for Enhanced Performance and Optimization14740
react, hooks, signals
My WebAIM 10th SR User Survey Takeaways (aar)14739
accessibility, screen-readers
JSDoc as an Alternative TypeScript Syntax14738
typescript, documentation, jsdoc
CSS “:has()” Interactive Guide (sha)14737
guides, css, selectors
CAPTCHA Is Still [the] Most Problematic Issue on the Web (cer)14736
accessibility, web, captcha
A Developer’s Guide for Web Accessibility14735
guides, accessibility
Why My Code Isn’t in TypeScript (rem)14734
typescript
Proposal: CSS Variable Groups (lea)14733
css, variables
Difference Between the Accessibility Page and the Accessibility Statement14732
accessibility, documentation, comparisons
htmx vs. React: A Complete Comparison14731
htmx, react, comparisons
UX Leadership Is Failing (and What We Can Do About It)14730
user-experience, leadership
Navbar Gallery14729
websites, navigation, design-patterns, examples
JavaScript Bloat in 2024 (nik)14728
javascript, performance
Vanilla JavaScript, Libraries, and the Quest for Stateful DOM Rendering (sma)14727
javascript, libraries, client-side-rendering, state-management
JSR: What We Know So Far About Deno’s New JavaScript Package Registry (sar/soc)14726
jsr, deno, dependencies, javascript
Filling Gaps With a Polyfill (jay)14725
polyfills, html, css, javascript, history
Building Dynamic Progress Bars Using Only CSS (ami)14724
css, progress-indicators
ARIA (Are Ya) Afraid of the Dark? Unmasking Common HTML Monsters to Create Better User Experiences (deq)14723
videos, accessibility, aria, html, user-experience
Next.js vs. Remix—a Developer’s Dilemma14722
nextjs, remix, comparisons
Release Notes for Safari Technology Preview 189 (jon/web)14721
release-notes, browsers, safari
The One Trick Every Flutter Web Dev Needs to Know14720
tips-and-tricks, flutter, performance
Discovering Web Automation and Scraping (gli)14719
scraping, automation, bots, tooling
Making of True Multi-Brand Design System14718
design-systems, theming
10 Best “Create React App” Alternatives for Different Use Cases14717
react, frameworks, tech-stacks, comparisons, link-lists
How to Optimize the Web for the Worst User Conditions?14716
how-tos, user-experience, responsive-design, performance, optimization
CSS “::backdrop” Now Inherits From Its Originating Element (bra)14715
css, selectors
View Transitions: Handling Aspect Ratio Changes (jaf)14714
css, view-transitions, aspect-ratio
Syntax Highlighting With No Spans?! (chr/fro)14713
css, apis, syntax-highlighting
Parallax Effect With CSS Custom Properties (fro)14712
css, custom-properties, effects, parallax
Node.js 2023 Year in an Article (raf)14711
nodejs, retrospectives
My Favourite Animation Trick: Exponential Smoothing (lis)14710
animations, tips-and-tricks
CSS-Only Radial Progress Bars Using Conic Gradients14709
videos, css, gradients, progress-indicators
My Design System Journey: Building the Plane While Flying14708
design-systems, collaboration, processes
Control Lazy Load, Infinite Scroll, and Animations in React14707
react, lazy-loading, scrolling, animations, javascript
How to Make a Cursor Image Hover Effect With CSS and JS14706
how-tos, css, javascript, images, cursors, hover
Design Patterns That Encourage Junk Data (mic)14705
design-patterns, sustainability, economics, storage, email
Preventing SQL Injection Attacks in Node.js14704
security, nodejs, databases, sql
Why Is JavaScript Fragile? (cfe)14703
javascript
“random()” Distribution Visualizer14702
javascript, randomness, visualization
Okay, Color Spaces (eee)14701
colors, oklch
How to Use Local Storage in JavaScript (fre)14700
how-tos, browser-storage, javascript
How to Transfer Binary Data Efficiently Across Worker Threads in Node.js14699
how-tos, nodejs, worker-threads
Does Your Design Conform With WCAG Accessibility Guidelines—or Does It Comply? (deq)14698
videos, accessibility, wcag, guidelines, compliance
A Practical Guide to Using Shadow DOM (may)14697
guides, dom, shadow-dom
A Practical Guide to Designing for Colorblind People (vit/sma)14696
guides, accessibility, design, colors, color-blindness
17 Equations That Changed the World—Rewritten in JavaScript14695
javascript, math
7 Effective Ways to Craft Compelling Problem Statements for UX Design (uxm)14694
user-experience, product-management, processes
Responsive Web Design: 3 Key Fundamentals (nng)14693
videos, responsive-design, fundamentals
What Is Utility-First CSS? (hey)14692
css, presentational-html, principles
“Web Design as a Process” in Charts: Maintenance, Decay, Tech Debt, and Big Bang Launching (j9t)14691
content, design, design-debt, technical-debt, maintenance, processes, visualization
[Web Accessibility] Survey Results14690
accessibility, surveys
The Fifty-Fifty Split and Overflow (hex)14689
css, overflow, layout
How to Design an Accessible Web Site for People With Color-Deficient Vision (uxm)14688
how-tos, accessibility, dei, user-experience, colors, contrast, readability
Fostering a Collaborative Onboarding Team to Design Better Onboarding Experiences (uxm)14687
collaboration, onboarding, user-experience
100 Things You Can Do on Your Personal Website (cap)14686
blogging, writing, indieweb
Syntax Highlighting Code Snippets With Prism and the Custom Highlight API (bra)14685
apis, javascript, css, syntax-highlighting
Tailwind Marketing and Misinformation Engine14684
tailwind, css, semantics, principles, maintainability, marketing
Don’t Care About Accessibility? Resistance Is Futile! (cer)14683
accessibility
JavaScript on Demand: How Qwik Differs From React Hydration14682
javascript, qwik, react, hydration, comparisons
Understanding React “useEffect”14681
react, hooks
JavaScript Workers14680
videos, javascript, web-workers
A Manifesto for Small, Static, Web Apps (ros)14679
manifestos, web-apps, principles
How to Set Up a Node Server With TypeScript in 2024 (jle)14678
how-tos, nodejs, servers, typescript
Frontend Application Security: Tips and Tricks14677
web-apps, security, xss, csrf, authentication, dependencies, csp, validation, tips-and-tricks
UI = ƒ(statesⁿ) (dav)14676
design, state-management
Popular Git Config Options (b0r)14675
git, configuration
It’s Official, Apple Kills Web Apps in the EU (owa)14674
web-apps, apple
Be a Better Developer With These Git Good Practices14673
git, best-practices, conventions, consistency, code-reviews
Full Guide on How to Hire Front-End Developers Effectively14672
guides, how-tos, hiring, career
React Labs: What We’ve Been Working On—February 2024 (rea)14671
react
Top 20 JavaScript One-Liners That Don’t Actually Work (dar)14670
javascript
Playing With Infinity in CSS (lon)14669
css, math
Making the Most of Ligatures (man)14668
css, typography
How I Developed the 10 Usability Heuristics14667
usability, heuristics, history
Getting to an Accessibility Strategy14666
accessibility, strategies, processes
Future of CSS: Functions and Mixins14665
css, functions, mixins
CSS “:is(.awesome)” (mar/cfe)14664
videos, css, selectors, techniques
ARIA “note” (aar)14663
accessibility, aria, browsers, screen-readers, support
A Dozen Thoughts About AI (dav)14662
ai
Wednesday, February 14, 2024 Security Releases (raf+/nod)14661
release-notes, nodejs, security
What Is the Difference Between ASP and ASP.NET?14660
asp, asp-net, comparisons
What Is Lighthouse Speed Index (SI) and How to Reduce It14659
performance, metrics, lighthouse
How Accessibility Standards Can Empower Better Chart Visual Design (sma)14658
accessibility, contrast, colors, information-design
Input Type “date”: The Accessibility of HTML Date Picker14657
accessibility, forms
Scroll-Driven Animations: You Want “overflow: clip”, not “overflow: hidden” (bra)14656
css, overflow, scrolling, animations
When It Says “Name From Author” It Means From You, Not Boll or Bukowski (ste)14655
accessibility, aria, naming
The Text File That Runs the Internet (dav/ver)14654
robotstxt, crawling, scraping, ai, web
Reasonable WCAG Additions (a11)14653
accessibility, wcag
Selenium Automation Testing: A Step-by-Step Beginners Guide14652
guides, selenium, testing, automation
An Introduction to Node.js Multithreading (cra)14651
introductions, nodejs, multithreading
Building htmx and Go Web Apps With Gemini Advanced14650
videos, web-apps, htmx, go, ai, gemini
Why I Like Scrumban (j9t)14649
processes, agile, scrum, kanban
The New CSS Math: “pow()”, “sqrt()”, and Exponential Friends (dan)14648
css, functions, math
The Best CSS Frameworks to Use in Your Projects for 2024 and Beyond (fre)14647
css, frameworks, comparisons, bootstrap, tailwind, foundation, bulma, pure
How to Fix the Invisible Scrollbar Issue in iOS Browsers (sim/fro)14646
how-tos, browsers, mobile, scrolling, css
How to Center a Div (jos)14645
how-tos, css, centering
CSS Color Module Level 4 (tab+/w3c)14644
standards, css, colors
Be Aware of Arrays—V8 Engine Advice14643
javascript, javascript-engines, v8, arrays
Advanced Architecture for AI Application (aka AAAA) (aus)14642
ai, architecture, edge-computing, optimization
A Practical Guide to Designing for Children (vit/sma)14641
guides, design, link-lists
The ü/ü Conundrum14640
javascript, unicode, encoding
You Want to Make It Easy to Feature Your Content (fro)14639
frontend-dogma, content, community
How to Choose the Best Static Site Generator in 202414638
how-tos, site-generators, gatsby, jekyll, nuxt, nextjs, hugo, eleventy, vuejs
How to Boost WordPress Security and Protect Your SEO Ranking14637
how-tos, wordpress, security, seo
The Anatomy of Addictive Content (moz)14636
content, writing, seo
React, Solid, htmx14635
react, solidjs, htmx, comparisons
Learn TypeScript (jad)14634
websites, courses, typescript
Can Generative AI Help Write Accessible Code? (tin/tet)14633
accessibility, code-generation, ai
A CSS Project Boilerplate (bel/pic)14632
css, tailwind, templates
Using Recursive CSS to Change Styles Based on Depth (cri)14631
css, selectors
Names Are Complex: Displaying Initials for an Avatar Component in a Design System (hey)14630
naming, design, case-studies
Dynamic Text Color Contrast Based on Background Lightness With CSS/SVG Filters (miu)14629
css, svg, filters, colors, contrast
CSS Mixins and Functions Explainer (mia/odd)14628
css, mixins, functions
Navigating Prioritization: Four Approaches (cwo)14627
project-management, prioritization, processes
Don’t Disable Form Controls (aar)14626
accessibility, usability, forms, buttons
Accelerating Code Reviews With Nudges14625
research, code-reviews, productivity, experiments, facebook+meta
The Front-End Development We’re Used to Is Dying14624
career, simplicity, complexity
HTML as the Baseline (cfe)14623
html, progressive-enhancement
Have We Forgotten How to Build Ethical Things for the Web? (nic)14622
web, ethics
Everything You Need to Know About Image Formats in 2024 (web)14621
images, jpeg, png, gif, webp, avif, pdf, svg
Git Tips: Really Large Repositories (git)14620
git, monorepos, tips-and-tricks
So You Think You Know Git (git)14619
videos, git
What Is a Descriptive Transcript?14618
accessibility, multimedia
Format Nunjucks Files With Prettier (san)14617
nunjucks, prettier
The Accessibility Mindset: Moving Beyond Remediating, Fixing, and Reacting (a11)14616
videos, accessibility
Node.js Community Debate Intensifies Over Enabling Corepack by Default and Potentially Unbundling npm (sar/soc)14615
nodejs, corepack, npm, yarn, pnpm, dependencies
Is [“* { min-width: 0; }”] a Good Idea? (kev)14614
videos, css
In Its Tantrum With Europe, Apple Broke Web Apps in iOS 17 Beta, Still Hasn’t Fixed Them (tho/the)14613
web-apps, browsers, apple, mobile
Going Beyond Pixels and (r)ems in CSS—Relative Length Units Based on the Viewport (uti/iod)14612
viewport, css, units
Frequently Heard in My Beginning Front-End Web Development Class (geo/sma)14611
learning, career
10 Best Automated AI Code Review Tools 202414610
ai, automation, code-reviews, tooling, comparisons, link-lists
Release Notes for Safari Technology Preview 188 (jon/web)14609
release-notes, browsers, safari
Patterns in Design Systems (ikn)14608
design-systems, design-patterns, components
Web Development Is Getting Too Complex, and It May Be Our Fault (mon/sma)14607
web-platform, frameworks, tech-stacks, complexity
Opportunities for AI in Accessibility (aar/ali)14606
accessibility, ai
Offloading JavaScript With Custom Properties (hey)14605
javascript, css, custom-properties
CSS Is Logical (geo)14604
css
JavaScript Promises Demystified (mar)14603
javascript, promises
Remix Takes on Next.js in Battle of the React Frameworks14602
frameworks, react, remix, nextjs
JavaScript vs. Python: Which One Should You Learn First?14601
javascript, python, comparisons
UI Elements Are Not So Elementary14600
design, design-patterns
Designing User Onboarding: Lessons From Figma, Duolingo, and More14599
lessons, onboarding, design, user-experience, figma
Immutable Array Updates With “Array.prototype.with” (jad)14598
javascript, arrays, prototypes, browsers, support
A Beginner’s Guide to Seamless Open-Source Contributions (wom)14597
guides, foss
When to Use the “min()” or “max()” Function (css)14596
css, functions, tips-and-tricks
Malicious npm Package Masquerades as Noblox.js, Targeting Roblox Users for Data Theft (sar/soc)14595
npm, dependencies, security
Lines of Code—How to Not Measure Code Quality and Developer Efficiency (cod)14594
metrics, quality, efficiency, productivity
Lessons Learned Moving Eleventy From CommonJS to ESM in 2024 (zac/cfe)14593
videos, lessons, eleventy, commonjs, esm, refactoring
jQuery 4.0.0 Beta (tim/jqu)14592
release-notes, jquery
In Praise of the “switch” Statement (chi)14591
javascript
Doing What’s Required: Indicating Mandatory Fields in an Accessible Way (tpg)14590
accessibility, usability, forms, errors
Detect Caps Lock With JavaScript (dav)14589
javascript
A Guide to Designing for Older Adults (vit/sma)14588
guides, design, accessibility
The Decision to Leave Tech (col)14587
career, retrospectives
13 Best Books, Courses, and Communities for Learning React14586
react, books, courses, link-lists
You Won’t Scale (cfe)14585
maintainability, scalability
Visual Hierarchy: Making User Experiences Easier to Understand (uxm)14584
user-experience, design, hierarchy
Thoughts on a Global Design System (chr)14583
design-systems
The Most Demanded Frontend Frameworks in 202314582
frameworks, comparisons, react, angular, vuejs
Revolutionizing Usability Testing With Machine Learning (uxm)14581
usability, testing, ai
It’s the Hope That Kills You (yat)14580
accessibility, career, community
How to Create Rounded Gradient Borders With Any Background in CSS (ben)14579
how-tos, css, borders, gradients, backgrounds
Getting Into Web Components—an Intro (uti)14578
introductions, web-components
Exciting New Tools for Designers, February 2024 (web)14577
design, tooling, link-lists
Everything You Need to Know About Git14576
git, command-line
Bookmarklet: Load All GitHub Comments (mey)14575
bookmarklets, github, code-reviews
htmx Deep Dive With Carson Gross14574
videos, htmx, deep-dives
HTML Attributes That Every Web Developer Should Know14573
html, attributes, pop-overs, forms, custom-data
“X” Marks the Spot: Landmark Elements (stv)14572
html, semantics, accessibility, assistive-tech, aria
Why Disabled People’s Needs Aren’t “Special”14571
accessibility
The Importance of Web Performance to Information Equity (sch/fos)14570
videos, performance, accessibility
A View Source Web (gar)14569
websites, view-source, browsers
What Is WAP?14568
wap, mobile
From Many to One: Moving Our JavaScript Code Into a Monorepo14567
migrating, monorepos, javascript, git
The SEO Starter Guide Got a Makeover (liz+)14566
guides, seo, search, google
SOLID Principles: They’re Rock-Solid for Good Reason14565
programming, principles, solid
Making Your SVG Icons CSS Masks Instead of Inline HTML or Backgrounds Has Some Benefits (chr/fro)14564
images, svg, css, masking, performance
All Art Is a Copy of Something (chr)14563
art
5 Hidden Risks of Your Inaccessible Website (deq)14562
accessibility
Everyone’s a Sellout Now14561
career, culture
How to Make a Great Framework Better?—Svelte 5 With Rich Harris (ric)14560
videos, frameworks, svelte
A Complete Guide to Open Source—100× Simpler14559
guides, foss
Drupal Creator: Websites Needed More Than Ever in the AI Era14558
web, ai, complexity
Tracking Your Interviews Is Extremely Important14557
career, interviewing
Interop 2024 (rac)14556
interoperability, web-platform, browsers, support
What’s the Difference Between “localhost” and “127.0.0.1”?14555
network, ip, testing
Is the Increasing Amount of Shit Code All the Fault of AI-Generated Code?14554
ai, quality, technical-debt
The Web Just Gets Better With Interop 2024 (jen/web)14553
web-platform, interoperability, browsers, support
Dynamically Adding Text Alternatives to Images With AI (kar)14552
automation, ai, accessibility, images, alt-text
Career Retrospective14551
career, retrospectives
A Look at the New WAI–ARIA 1.3 Draft (cra)14550
accessibility, aria, standards
Tackling Flaky Tests With Cypress and Playwright Through Network Synchronization14549
testing, flakiness, cypress, playwright, network
GitLab vs. GitHub: Which Is Better in 2024?14548
version-control, gitlab, github, comparisons
Be Purposeful About Your Content14547
accessibility, content, writing
The Art and Science of Annotations in Dev Mode (fig)14546
figma, annotations
Implementing User Authentication in React Apps With Appwrite14545
react, authentication, tooling
Interaction to Next Paint Becomes a Core Web Vital on March 12 (mal+)14544
performance, web-vitals, metrics
PurePWA—a Radical U-Turn in Web Development14543
web-apps, progressive-web-apps, simplicity, tooling
Why Not htmx? (cfe)14542
htmx
The Good, the Bad, the Web Components (zac)14541
web-components, shadow-dom, dom
Practice Safe DSD With “setHTMLUnsafe” (It’s Complicated) (jar/van)14540
html, dom, shadow-dom, apis, security
Making VPATs and ACRs More Effective in Procurement (web)14539
accessibility, vpat-acr, processes
How to Stream Files From Next.js Route Handlers (eri)14538
how-tos, nextjs, routing, streaming
Designing Accessible Color Palettes in Figma: A Guide for Web Accessibility (kno)14537
guides, accessibility, colors, color-palettes, figma
5 Essential DevTools Console Hacks for Every Web Developer14536
videos, browsers, dev-tools
Tuesday, February 6, 2024 Security Releases (raf/nod)14535
release-notes, nodejs, security
Web Platform Design Principles (lea/w3c)14534
web-platform, software-design, principles, standards, w3c
Why Do Rubber Ducks Work?14533
processes, productivity, creativity
New to the Web Platform in January (rac)14532
release-notes, web-platform, browsers, firefox, chrome, safari
Understanding Signals in Django14531
signals, django
Celebrate a More Interoperable Web With Interop 2023 (rac)14530
web-platform, interoperability, browsers, support
Learn Testing14529
courses, testing
Use CSS “accent-color” to Style Your Inputs (cas)14528
css, forms
The Psychology of Site Speed and Human Happiness (tam/spe)14527
performance, usability
Stop Burning Out Maintainers: An Empathetic Guide for Contributors (bek/ope)14526
guides, foss, collaboration
Onboarding (mfo)14525
processes, onboarding, productivity, engineering-management
Is Generated Code Harder to Maintain?14524
discussions, ai, maintainability, maintenance
Going Beyond Pixels and (r)ems in CSS—Relative Length Units Based on Font (uti/iod)14523
css, units, fonts
“field-sizing” Just Works! (kil/pol)14522
css, forms, comparisons
A Highly Configurable Switch Component Using Modern CSS Techniques (bel/pic)14521
html, css
The EU Forces Open Apple’s Walled Garden (tid)14520
legal, apple, browsers, mobile
Next.js App Router Migration: The Good, Bad, and Ugly14519
nextjs, routing, migrating
ESG and DEI Policies Were Always Luxury Goods14518
dei, sustainability, policies
Debunking 10 Common Objections to Incremental Delivery for Software Teams14517
agile, processes
The Loss of the Process in the Name of Progress14516
design, creativity, productivity, processes
Express Forward (exp)14515
discussions, outlooks, express
Practical Guide to Destructuring: TypeScript vs. Dart14514
guides, typescript, dart, comparisons
The Web Component Success Story (jak)14513
web-components
How to Favicon in 2024: Six Files That Fit Most Needs (sit/evi)14512
how-tos, images, favicons
Git: The Basics of “git bisect” (ada)14511
fundamentals, git
Dynamic README Image Based on GitHub Activity14510
readme, github
At Last, Browser Choice * (dav)14509
legal, browsers, apple, mobile
The Singular Web (dut)14508
web, web-platform, google, microsoft, amazon, apple
Nicer Text Wrapping With CSS “text-wrap” (lon)14507
css, typography
Design Systems Burnout (fon)14506
design-systems
A Guide to Styling Tables (sto)14505
css, tables, responsive-design
Futuring With Design14504
design, creativity, processes
Please, Don’t Force Me to Log In (ham)14503
web, authentication, user-experience
Gold Text Effect With CSS (man)14502
css, effects
Big, Beautiful, Beefy Focus States With “:focus-visible” (dav)14501
css, selectors, focus
Apple, the DMA, and Malicious Compliance (bru)14500
legal, browsers, apple, mobile
Apple Redecorates Its iPhone Prison to Appease Europe (tho/the)14499
legal, browsers, apple, mobile
Introducing Our Updated [Green Web Hosting] Directory (mrc)14498
introductions, release-notes, sustainability, hosting
Mozilla Says Apple’s New Browser Rules Are “as Painful as Possible” for Firefox (ver)14497
browsers, apple, mozilla, firefox, mobile
The Impact of Developer Experience14496
research, developer-experience, productivity, efficiency
Overlays and Ethics: A Conference Panel That Hurt My Heart (lfl)14495
accessibility, ethics, overlays, community
Inside .git (b0r)14494
git
HTML Web Components on the Server Are Great (sco)14493
html, web-components
7 Tips for Devs and Designers to Set Your Accessibility Efforts Up for Success (deq)14492
accessibility, tips-and-tricks, processes
5 Web Design Disasters That Will Ruin Your 2024 (web)14491
design, responsive-design, seo
JWT vs. Session Authentication14490
security, authentication, json-web-tokens, comparisons
A Day in the Life of a Developer—Building a Dashboard App With SQL, Node.js, Django, and Next.js14489
functionality, databases, sql, nodejs, django, nextjs
The Largest Webshops in the Netherlands Remain Inaccessible for People With Visual and/or Motor Impairments14488
studies, research, accessibility, ecommerce, legal
Deno 1.40: Temporal API (den)14487
release-notes, deno, apis, time
Using Alternative Browser Engines in the European Union14486
apple, browsers, browser-engines, mobile
This Web Page Is Best Viewed in the EU (gri/clo)14485
legal, browsers, apple, mobile, web
Should Links Open in a New Tab? (stv)14484
links, usability, user-experience
One World, One Web, One Love (aar)14483
web