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#
Svelte Parses HTML All Wrong (ric)15233
svelte, html, parsing
Hanging Punctuation in CSS (ada)15232
css, typography
Fluid Typography With Discrete Steps (css)15231
css, typography, tips-and-tricks
Finally Understand Responsive Design15230
videos, responsive-design, css
BFCache Explained15229
bfcache, browsers, performance
“aspect-ratio” Gotcha (css)15228
css, aspect-ratio, images
An Advanced Way to Use CSS Variables (cfe)15227
css, custom-properties
AI and the Web: Understanding and Managing the Impact of Machine Learning Models on the Web (don/w3c)15226
ai, web
WebAssembly at Google (tom)15225
videos, webassembly, google
Learn JavaScript (wil)15224
courses, javascript
WordPress 6.5 “Regina” (pho/wor)15223
release-notes, wordpress
How-To: 5 Steps to Detect Invalid HTML Breaking Your [Site’s Performance] (erw)15222
how-tos, html, conformance, performance
Infinite-Scrolling Logos in Flat HTML and Pure CSS (cit/sma)15221
branding, scrolling, animations, techniques, css
How We’re Approaching Theming With Modern CSS (bel/pic)15220
css, theming
How to Get Somebody Fired Using Git15219
version-control, git, career
Drawing a Line to Connect Elements With CSS Anchor Positioning (cit/fro)15218
css, anchor-positioning
Authentication in Next.js (rwi)15217
authentication, nextjs
An Interactive Guide to CSS Container Queries (sha)15216
guides, css, container-queries
Micro Frontends With Native Federation15215
micro-frontends, comparisons
The Era of High-Paying Tech Jobs Is Over15214
programming, career, ai, economics
Introducing Root.js15213
introductions, tooling, content-management
What Even Is a JSON Number?15212
json, terminology
The Detail, the Quality15211
design, quality
Bun 1.1 (jar+/bun)15210
release-notes, bun
A Complete Guide for Content Creators to Start Making Accessible Content (pop)15209
guides, accessibility, content
14 Top UX Tools for Designers in 2024 (web)15208
user-experience, tooling, link-lists
Disable AWS CloudFront Distributions if Budget Is Exceeded15207
aws, cloudfront, configuration, economics
Why I Use Node, Deno, Bun, [QuickJS], [txiki.js] at the Same Time15206
tooling, nodejs, deno, bun, quickjs
Why I Care Deeply About Web Accessibility and You Should Too (sch)15205
accessibility, web
The DevOps Basics15204
dev-ops, fundamentals
Object Structure in JavaScript Engines15203
objects, javascript, javascript-engines
Latest WebAIM’s Million—Some Thoughts (cer)15202
accessibility
Kobold Letters (wed)15201
html, email, support
10 JavaScript Sites Every Web Developer Should Know15200
javascript, learning, link-lists
Some Samples Using UIkit15199
uikit
Design Is a Process of Getting Stuck (fon)15198
design, processes
“@scope” Is Coming to CSS and It’s Amazing (kev)15197
videos, css, scope
What Negative Effects Does a Bad Website Design Have on My Business? (web)15196
design, economics
The WebAIM Million: The 2024 Report on the Accessibility of the Top 1,000,000 Home Pages (web)15195
studies, research, accessibility, homepages, metrics
The Power of “:has()” in CSS (css)15194
css, selectors
The Easy Way to Access the Last JavaScript Array Element15193
javascript, arrays
The Curious Case of the CSS Monochrome Media Query (sea)15192
css, media-queries
On “disabled” and “aria-disabled” Attributes (kit)15191
accessibility, html, attributes, aria
Front-End Development’s Identity Crisis (ell)15190
career
Figma Plugins (tmc)15189
figma, plugins
Improving the Developer Experience of Enterprise Design Systems15188
design-systems, developer-experience, optimization
History of JS Interop in Dart15187
javascript, dart, interoperability, history
The Browser Company and Radical Transparency15186
the-browser-company, culture, communication
What’s New in DevTools, Chrome 12415185
release-notes, dev-tools, browsers, chrome
Release Notes for Safari Technology Preview 191 (jon/web)15184
release-notes, browsers, safari
New to the Web Platform in March (rac)15183
release-notes, web-platform, browsers, firefox, safari, chrome
CSS Color-Scheme-Dependent Colors With “light-dark()” (bra)15182
css, functions, colors, dark-mode
The Complete Guide to Captioned Videos (mer)15181
guides, accessibility, captions, multimedia
Finally Understanding How “Array.sort(comparator)” Works (jam)15180
javascript, arrays
A Guide to Building CLI Tools in JavaScript15179
guides, tooling, command-line, javascript, nodejs
What Even Are Dragging Movements? (cat/spa)15178
accessibility, interaction-design, terminology
Iterator Helpers15177
ecmascript, javascript, javascript-engines, v8
How I Fixed My Brutal TTFB (whi/get)15176
performance, metrics, optimization
ai.robots.txt (cor)15175
ai, crawling, scraping, robotstxt, tooling
Meet Angular’s New “output()” API (ang)15174
angular, apis
In-App Browsers Are Still a Privacy, Security, and Choice Problem (tho/the)15173
browsers, mobile, privacy, security
Flickering Glowing Text Effect With CSS (man)15172
css, effects
How to Use jQuery’s “ajax()” Function for Asynchronous HTTP Requests15171
how-tos, jquery, ajax, functions, asynchrony
Node v20.12.0 (LTS) (nod)15170
release-notes, nodejs
History of Web Accessibility15169
videos, accessibility, history
Quick Tip: How to Align Column Rows With CSS Subgrid (ral)15168
tips-and-tricks, how-tos, css, grids, layout, alignment
Convention Over Creativity? The Ups and Downs of UX Design15167
user-experience, design
Exploring the Power of ARIA Live Attribute in Web Accessibility15166
accessibility, aria, attributes
Animating Clip Paths on Scroll With “@property” in CSS (uti)15165
css, animations, scrolling, clipping, masking
What You Need to Know About Modern CSS (Spring 2024 Edition) (chr/fro)15164
css, overviews
How to Take Control of Flexbox (kev)15163
videos, how-tos, css, flexbox, layout
How Invalid HTML Elements Impact Web Performance (erw)15162
html, conformance, performance
How Does npx Actually Work and When to Use It15161
npx, nodejs
CSS Anchor Positioning (tab+/w3c)15160
standards, css, anchor-positioning
Be Flexible About What People Need (and Don’t Assume) (eri)15159
accessibility
How to Consolidate Multiple Design Systems15158
how-tos, design-systems, processes
7 Simple Rules for Better Data Visualization15157
information-design
Error Messages 101 (nng)15156
videos, usability, errors, microcontent
Setting and Persisting Color Scheme Preferences With CSS and a “Touch” of JavaScript (ole/sma)15155
colors, dark-mode, css, javascript
JavaScript Visualized: Promise Execution15154
javascript, promises, visualization
Diving Into the Node.js Website Redesign (bri/nod)15153
redesigning, case-studies
No One Actually Wants Accessibility (dav)15152
accessibility
CORS Finally Explained—Simply15151
security, csrf, cors, concepts
How Does Single Sign-On (SSO) Work? (mil)15150
authentication, security
Spicing Up Text With “text-emphasis” in CSS (ami)15149
css, typography, effects
New CSS That Can Actually Be Used in 2024 (tho)15148
css, logical-properties, container-queries, selectors, nesting, functions, cascade, grids
Incredible JavaScript Animation Libraries15147
javascript, animations, libraries, link-lists
Learn OAuth 2.0 by Building Your Own OAuth Client15146
authorization, oauth, functionality
Radix Themes 3.015145
release-notes, radix
Profile Node.js Performance With the Performance Panel (jec+)15144
nodejs, performance, debugging, browsers, chrome, dev-tools
AI Can Make a Code Review for Free15143
ai, code-reviews, tooling
ARIA “role=application” and Mobile Screen Readers (cer)15142
accessibility, aria, screen-readers, mobile
Don’t Get Scammed by Fake Performance Experts and Apps15141
performance, tooling
Quick Tip: How to Add Gradient Effects and Patterns to Text (ral)15140
tips-and-tricks, how-tos, css, gradients, effects
The Cost of Interrupted Work: More Speed and Stress15139
research, productivity, processes
12 Figma Tips to Work More Efficiently15138
figma, tips-and-tricks, efficiency
The “Current Branch” in Git (b0r)15137
git
Node.js TSC Confirms: No Intention to Remove npm From Distribution (sar/soc)15136
nodejs, npm
Going Beyond Pixels and (r)ems in CSS—Absolute Length Units (uti/iod)15135
css, units
CSS Values and Units Module Level 3 (tab+/w3c)15134
standards, css, units
CAPTCHA Excludes Disabled Web Users (zel)15133
accessibility, captcha
Accessible Forms With Pseudo Classes (css)15132
accessibility, forms, css, selectors
Relicensing and Rug Pulls15131
foss, licensing, history
Node.js: The Documentary (isa+)15130
videos, nodejs, history
Welcome to Future of Web Accessibility Based on Predictors (jar+)15129
videos, accessibility, outlooks
Avoid These Design System Traps15128
design-systems
“__dirname” Is Back in Node.js With ES Modules (phi)15127
nodejs, esm
Microservices Promised Freedom but Delivered Dependencies (pur)15126
microservices, dependencies
This Pattern Will Wreck Your React App’s TS Performance (mat)15125
design-patterns, react, typescript, performance
Optimizing JavaScript for Fun and for Profit15124
javascript, optimization
On the Gift of OKR for Company Culture (j9t)15123
processes, okr, culture
On Popover Accessibility: What the Browser Does and Doesn’t Do (hdv+)15122
accessibility, pop-overs, html
How to Test 3.3.8 Accessible Authentication (Minimum) (sib/tpg)15121
how-tos, accessibility, testing, authentication
[Bulma] 1.0.015120
release-notes, bulma
Building a Micro htmx SSR Framework (mco/pla)15119
frameworks, htmx, examples
Understanding Memory Heap and Memory Leaks—How the JS Engine Works (fro)15118
javascript-engines, memory, garbage-collection, asynchrony
Psychology and UX: Decoding the Science Behind User Clicks15117
user-experience, design, principles
Angular Signals: Best Practices15116
angular, signals, best-practices
The Box Model and Box Sizing (bel/pic)15115
css, box-model, concepts
Progressive Disclosure Defaults (ada)15114
css, forms, interaction-design
How to Plan Your First Successful Website (web)15113
how-tos, processes, project-management
How to Create a Website and a PDF From the Same Codebase (spa/clo)15112
how-tos, code-generation, pdf, functionality
Folder Structures in React Projects15111
react, architecture
Aesthetic Layouts: 2 Column Magazine With “shape-outside” (jhe)15110
code-pens, layout, css
Essential CSS Tools for Developers (nim)15109
css, tooling
Build a Full-Stack App With Node.js and htmx15108
web-apps, nodejs, htmx
How to Assess Your Fit for a Job Description: A Guide for Technologists (wom)15107
how-tos, guides, interviewing, career
Using Relative Colors (chr/mdn)15106
css, colors
Chill Scroll Snapping: Article Headers (chr/fro)15105
css, scrolling
The Ultimate Guide to Understanding npx vs. npm15104
guides, npx, npm, nodejs
Make a Web Browser: Beginner’s Guide (nim)15103
guides, browsers, browser-engines
Empowering the User Experience Through Microinteractions: 7 Best Practices (uxm)15102
user-experience, interaction-design, best-practices
A Designer’s Role Is Not “at the Table”15101
design, career
How Meta Improved Their Cache Consistency to 99.9999999915100
facebook+meta, caching
Accessibility Foundations (ihe/tpg)15099
accessibility, fundamentals, link-lists
Observability Is an Illusion (pur)15098
observability, logging, monitoring, alerting
“require(esm)” in Node.js (joy)15097
nodejs, ecmascript, esm, commonjs
The Power of Textual Content in UX Design (uxm)15096
content, user-experience
Oh Sh*t, My App Is Successful and I Didn’t Think About Accessibility15095
accessibility
I’m So Old: Web Edition (dav)15094
web, history
How Web-Site Design and Social Media Work Together (uxm)15093
design, content, social-media
How to Kill the Cascade (fon)15092
css, cascade, resets, scope
Every React Concept Explained in 12 Minutes15091
videos, react, concepts
Comparing ECMAScript Modules and CommonJS15090
comparisons, esm, commonjs
Build a Node App With TypeScript (mat)15089
nodejs, typescript, pnpm, esm
A Comparison of JavaScript CRDTs (alm)15088
javascript, types, comparisons
Why UI Designers Should Understand Flexbox and CSS Grid15087
design, layout, flexbox, grids, css
Time to Ditch Analytics? Tracking Scripts and Web Sustainability (mic)15086
embed-code, google, analytics, sustainability, performance, compliance
2024 Cheat Sheet Collection15085
cheat-sheets, link-lists
Migrating Away From Jest and Achieving Over 90% Reduction in Running Time (pat)15084
migrating, jest, testing, memory, performance
How Web Bloat Impacts Users With Slow Devices15083
performance, metrics, comparisons, web
Copy Objects Ways in JavaScript15082
javascript, objects
Webflow 101: A Guide for Beginners15081
introductions, guides, webflow, low-and-no-code
Deploying Remix to GitHub Pages (rem)15080
videos, deploying, remix, github-pages
How to Optimize Cumulative Layout Shift (CLS) on Shopify Sites (sia)15079
how-tos, performance, web-vitals, optimization, shopify
How (In)Efficient Are Engineering Organizations?15078
efficiency, processes, engineering-management
Quick Tip: Creating a Date Picker in React15077
tips-and-tricks, react, functionality
Accessibility in Design Systems: A Comprehensive Approach Through Documentation and Assets15076
accessibility, design-systems, documentation, dei
Skeuomorphism (nng)15075
design, terminology
Homepage Design: 5 Fundamental Principles (nng)15074
design, homepages, principles
Performance Tooling in 2024 and Beyond (pau)15073
performance, tooling, browsers, dev-tools, lighthouse
There Is No EU Cookie Banner Law15072
consent-management, cookies, legal
Qwik vs. Next.js: Which Framework Is Right for Your Next Web Project?15071
frameworks, comparisons, qwik, nextjs
When “Semantic Tokens” Are No Longer Semantic15070
design-tokens, semantics
What Is Safe Alignment in CSS? (chr/fro)15069
css, layout, user-experience
The Golden Age of Accessibility15068
accessibility
Make Your Functions More Reusable With Generics (mat)15067
typescript, functions, generics, maintainability
Arguments for Opening Links in a New Tab or Window (gri/clo)15066
links, usability
WCAG 2.2 Detective Skills15065
accessibility, standards, wcag
How to Design Icons in Figma15064
how-tos, images, icons, figma, design
How to Avoid Flaky Tests in Playwright15063
how-tos, testing, flakiness, playwright
A Beginner’s Guide to Node.js Worker Threads (bet)15062
guides, nodejs, worker-threads
You Want “border-color: transparent”, Not “border: none” (dav/fro)15061
css, borders, transparency+opacity, accessibility, contrast
HTML Performance Optimization: Tips for Faster Loading Pages15060
html, landing-pages, performance, optimization, tips-and-tricks
What’s Next for a Global Design System (bra)15059
design-systems
There Are No Standards Police (mno)15058
standards, policies, processes
The Problem With Data Attributes for Text Effects (man)15057
html, custom-data, css, typography, effects
The Problem With AI (cfe)15056
ai
Ruby Is Complicated15055
html
Refactoring My Ugliest Code With Signal View Queries15054
videos, refactoring, angular
My New Favorite CSS Trick: “will-change”15053
css, animations, transitions, tips-and-tricks
Another JS Registry—Seriously?! (den)15052
videos, jsr, dependencies, javascript
25 Unnoticeable Features of JavaScript15051
javascript
Runtime Compatibility (asc+)15050
websites, runtimes, interoperability, comparisons, bun, deno, netlify, nodejs
The Essential Guide to Microcopy and Becoming a More Literate Designer15049
guides, design, microcontent, content, writing
5 Exciting New JavaScript Features in 202415048
javascript
Marking the Web’s 35th Birthday: An Open Letter (tim)15047
open-letters, web, history, anniversaries
Interaction to Next Paint Is Officially a Core Web Vital (rvi)15046
performance, web-vitals
15 Years of Running a Personal Website (ste)15045
indieweb
Why Your Microservices Architecture Is Probably Overkill (and How I Learned to Love the Monolith Again) (pur)15044
architecture, microservices, monoliths
Thoughts on Embedding Alternative Text Metadata Into Images (eri)15043
accessibility, images, metadata
The “10× Engineer”: 50 Years Ago and Now (ger)15042
productivity, processes, career, history
Spread vs. Rest Operators in JavaScript15041
javascript, operators, comparisons
How to Read Files Quickly in JavaScript (lem)15040
how-tos, javascript, file-handling
Building Websites and Building Websites Well (j9t)15039
quality, craft, community
A Letter to My Younger Self, as an Accessibility Advocate (hbu)15038
accessibility, advocacy, retrospectives
Accessibility: Implementing Focus Traps15037
accessibility, focus, keyboard-navigation
JSON Canvas15036
websites, standards, json, canvas
Have You Optimized for INP?15035
performance, web-vitals, optimization
What Is INP and Why You Should Care (whi/get)15034
performance, web-vitals, monitoring
Streaming HTML (chr/fro)15033
html, php, streaming
IDEs vs. Code Editors: Everything You Need to Know (jet)15032
code-editors, comparisons, concepts
Express.js With TypeScript—Setup, Examples, Testing15031
videos, express, typescript, testing, examples
Distinguishing Between ARIA and Native HTML Attributes (deq)15030
html, aria, attributes, accessibility, comparisons
Comparing JavaScript Frameworks: Templates15029
javascript, frameworks, templates, comparisons
Are We Watching the Internet Die? (edz)15028
web
Announcing Speedometer 3.0: A Shared Browser Benchmark for Web Application Responsiveness15027
performance, tooling, metrics
Alt Text for CSS Generated Content (tem)15026
css, generated-content, alt-text, accessibility
A Gentle Introduction to Generics in TypeScript15025
introductions, typescript, generics
Optimising Your Design System With Figma’s Variables15024
design-systems, optimization, variables, figma
Things I Learned While Building My JS Library15023
javascript, libraries, lessons
CSS Button Styles You Might Not Know (dbu)15022
html, css, buttons
Replace ESLint and Prettier With Biome.js15021
biome, eslint, prettier, comparisons, tooling, remix
Jakob Has Jumped the Shark (aar)15020
accessibility, link-lists
How to Invert the Colors Using CSS (ron)15019
css, colors, filters, images
eslint-plugin-depend15018
packages, npm, maintenance, simplicity
Access by a Thousand Curb Cuts (yat)15017
accessibility
Navigating the Future of Frontend15016
frameworks, web-platform, outlooks
Asking Users for Their Pronouns: A Guide for UX Designers15015
guides, user-experience, communication
Creating Color Palettes With the CSS “color-mix()” Function (mic)15014
css, functions, colors, color-palettes
Add Superpowers to Your CSS Variables With Style Queries (jar/van)15013
css, style-queries, custom-properties
Modern CSS Tooltips and Speech Bubbles II (css/sma)15012
tooltips, css, techniques
How “HEAD” Works in Git (b0r)15011
git
Dissecting Layered Architecture (yok)15010
architecture
Managing Static Files in Django: A Comprehensive Guide15009
guides, django, file-handling
How to Check and Set the “NODE_ENV” Environment Variable and Its Use in a Project15008
how-tos, nodejs, environments
AVIF Is the Future of Web Images15007
images, avif, performance, outlooks
The Quiet, Pervasive Devaluation of Frontend (col)15006
html, css, craft, career, community
Some Little Ways I’m Using CSS “:has()” in the Real World (bel/pic)15005
css, selectors, examples
How to Test 2.5.8 Target Size (Minimum) (sib/tpg)15004
how-tos, accessibility, testing
Taming the Shadow DOM: Injecting Global Styles With Adopted Stylesheets15003
shadow-dom, dom, css
10 Figma Keyboard Shortcuts: A Cheat Sheet for UX Designers15002
figma, keyboard-shortcuts, cheat-sheets, design
Release Notes for Safari Technology Preview 190 (jon/web)15001
release-notes, browsers, safari
5 Ways Productivity Culture Kills Business Agility15000
productivity, agile, economics, culture
Leadership Is a Hell of a Drug (lud)14999
leadership, engineering-management
90% of Designers are Unhirable?14998
design, processes, career
Exploring the Creative Power of CSS Filters and Blending14997
css, blend-modes, filters, effects
The Ultimate Guide to Choosing the Best React Website Builder14996
guides, react, tooling, comparisons, link-lists
WebAssembly JSPI Is Going to Origin Trial14995
webassembly, origin-trials
Sometimes, a Button Just Wants to Look Like a Button14994
design, usability, buttons
The End of My Gatsby Journey (mon)14993
gatsby, frameworks, comparisons
SSG, SSR, ISR, CSR Rendering Strategies in Next.js (fro)14992
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)14991
videos, css, selectors
Making Room for Long List Markers With Subgrid (nol)14990
html, lists, css, grids
Internationalization With Remix (rem)14989
remix, internationalization
Announcing TypeScript 5.4 (dan/typ)14988
release-notes, typescript
CSS-Tricks in Limbo: Chris Coyier Wants It Back and the Community Reacts14987
css-tricks, digitalocean, community
Best Practices for Inclusive Design (slo)14986
design, dei, accessibility, best-practices
WebKit Features in Safari 17.4 (jen+/web)14985
release-notes, browsers, safari, webkit
How to Ensure Your Designs Work if You Can’t Access Sample Data14984
how-tos, design, usability, metrics, testing
Data Table Design Patterns14983
information-design, tables, design-patterns
How to Use WebSockets in Node.js to Create Real-Time Apps (cra)14982
how-tos, websockets, nodejs
When We Talk About Front-End Performance, What Are We Talking About14981
performance, metrics, web-vitals, lighthouse
JavaScript Runs the World—Maybe Even Literally (wir)14980
javascript, programming, web
SemVer Simplified: An Introduction to Semantic Versioning14979
introductions, semver, versioning
WCAG? More Like, W-What?! (stv)14978
accessibility, wcag, link-lists
The 88×31 Archive14977
web, images, history
Modern Git Commands and Features You Should Be Using14976
git, command-line
JSR: Second Look (dbu)14975
jsr
Designing for Mobile Accessibility: Enhancing the User Experience on Small Screens (uxm)14974
design, accessibility, user-experience, mobile
Achieving Design Collegiality While Maintaining Psychological Safety (uxm)14973
design, collaboration
VPS Showdown—March 2024—DigitalOcean vs. Linode vs. Vultr14972
servers, hosting, comparisons, metrics, digitalocean
How npm Install Scripts Can Be Weaponized: A Real-World Example of a Harmful npm Package (eth)14971
npm, dependencies, examples, security
Visualizing Frontend Architecture (max)14970
architecture, documentation, visualization
We Need to Talk About Jakob (mat)14969
accessibility
Tools That Make Me Productive as a Software Engineer14968
tooling, productivity, link-lists
CSS for Printing to Paper14967
css, print
Bugs I’ve Filed on Browsers (nol)14966
browsers, chromium, firefox, webkit, quality
Accessibility Has Not Failed—It Has Not Even Started for Real (cer)14965
accessibility, ai
Accessibility Darkness (ste)14964
accessibility, overlays
The Faster Lambda Runtime—Node.js or LLRT? We Benchmarked14963
lambda, javascript, runtimes, nodejs, comparisons, metrics
Emerging UX Patterns in Generative AI Experiences14962
user-experience, design-patterns, ai
Planning a Design System Generation (nat)14961
design-systems, automation
The Hunt for the Missing Data Type (hil)14960
types, algorithms
Go Ahead and Block AI Web Crawlers (cor)14959
robotstxt, crawling, scraping, ai
Introducing JSR—the JavaScript Registry (lca+/den)14958
introductions, jsr, deno, dependencies, javascript
Team Productivity Metrics for Engineering Managers14957
productivity, metrics, engineering-management
Apple Says iOS 17.4 Won’t Remove Home Screen Web Apps in the EU After All (9to)14956
browsers, apple, mobile, web-apps
An Introduction to Webflow—the No-Code Website Builder14955
introductions, webflow, low-and-no-code
Design System Generations (nat)14954
design-systems, processes
Retrofitting Fluid Typography (ric)14953
liquid-design, typography, css
Web Tech Trends to Watch in 2024 and Beyond (web)14952
trends, design, dark-mode, ai, sustainability, minimalism
TIL—“submit()” Versus “requestSubmit()” (ray)14951
javascript, comparisons
Modern CSS Tooltips and Speech Bubbles (css/sma)14950
tooltips, css, techniques
Eloquent JavaScript (mar)14949
websites, books, javascript
Apple Backs Off Killing Web Apps, but the Fight Continues (owa)14948
web-apps, apple
“AI” and Accessible Front-End Components: Is the Nuance Generatable? (hdv)14947
accessibility, web-components, ai
A Love Letter to the Underrepresented in Tech14946
community
Diving Into CSS Interactivity (daw+/sto)14945
videos, css
What Is Inclusive Design, and How Does It Relate to Accessibility? (slo)14944
design, dei, accessibility
New to the Web Platform in February (rac)14943
release-notes, web-platform, browsers, firefox, chrome, safari
Understanding Cookies and Sessions in React14942
react, authentication, cookies
Why Does “is-number” Package Have 59M Weekly Downloads?14941
dependencies, npm
What You Need to Know About Software Requirements14940
software-design, best-practices
The Wax and the Wane of the Web (ste/ali)14939
web-platform, history
Techniques to Break Words (aar)14938
techniques, html, css, content
Keyboard Accessibility Testing on Mobile Devices14937
accessibility, testing, keyboard-navigation, mobile
Choosing the Right Node.js Package Manager in 2024: A Comparative Guide (nod)14936
guides, nodejs, dependencies, comparisons
Accessibility Has Failed: Try Generative UI = Individualized UX14935
accessibility, usability, ai, outlooks
Where I’m at on the Whole CSS-Tricks Thing (chr)14934
css-tricks, digitalocean
Ultimate Guide to Visual Testing With Playwright14933
guides, testing, regressions, playwright
How to Create a Sidebar Navigation With Astro, Tailwind CSS, and Alpine.js14932
how-tos, navigation, functionality, astro, tailwind, alpinejs
Top 8 Recent V8 in Node Updates (app)14931
nodejs, v8
Creativity Lies in the Paradoxes14930
creativity, design
Enhanced Internationalization (I18N) in Next.js 1414929
nextjs, internationalization
Test Quality vs. Bashing Tailwind CSS (mar)14928
tailwind, css, comparisons
So, What Exactly Did Apple Break in the EU? (tom)14927
browsers, apple, mobile, support, web-apps, apis
Making Math Accessible (ons/tpg)14926
accessibility, math
Going Beyond Pixels and (r)ems in CSS—Container Query Length Units (uti/iod)14925
css, container-queries, units
Apple vs. PWAs—Go Act Now and Help Avoid This Disaster… (cod)14924
apple, web-apps, progressive-web-apps, community
An HTML Switch Control (ann+/web)14923
html, css, forms
What Is Vuetify in Vue.js?14922
vuetify, vuejs
A Guide to CSS Cursor Types14921
guides, css, cursors
The 3 Capabilities Designers Need to Build for the AI Era14920
design, career, training, ai, link-lists
How to Use Server-Sent Events in Node.js (cra)14919
how-tos, nodejs, events
Screen Readers and Drag-and-Drop: Grabbing and Releasing Elements (dar)14918
drag-and-drop, accessibility, browsers, screen-readers, support
Tumblr and WordPress to Sell Users’ Data to Train AI Tools (404)14917
wordpress, ai
YouTube Video Embedding Harm Reduction (jvo)14916
multimedia, embed-code, youtube, html, privacy
ServerlessHorrors (and)14915
websites, serverless, cloud-computing
Reporting Core Web Vitals With the Performance API (geo/sma)14914
apis, performance, web-vitals
How to Lazy-Load CodePen and CanIUse Embeds14913
how-tos, embed-code, performance, codepen, caniuse
Here Lies the Internet, Murdered by Generative AI14912
web, content, ai
AI and Design Systems (bra)14911
ai, design-systems
A Simple Mistake That Can Screw Up Your Light/Dark Theme (and How to Fix It) (kev)14910
videos, mistakes, dark-mode, css
A Fun Line of Code (dbu)14909
javascript, apis, multimedia
Speaker Spotlight: Michelle Barker (mic)14908
interviews, css, sustainability
Why I Use Firefox (sim)14907
browsers, firefox
Advanced Figma Tips and Tricks 2024: Little Gems We Love14906
figma, tips-and-tricks
Open Letter to Tim Cook, Sabotaging Web Apps Is Indefensible (owa)14905
open-letters, apple, web-apps
CSS Foundations: What Is IACVT? (bra)14904
css, fundamentals
What Is a Single-Page Application? (hey)14903
single-page-apps, javascript, performance, user-experience
The CSS Cascade—a (Re)Introduction (mat)14902
videos, css, cascade
No Outer Margin14901
css, margins, spacing, components
How to Build a Newthing14900
how-tos, processes, creativity, maintenance
CSS-Only Bottom-Anchored Scrolling Area (kit)14899
css, scrolling
A Web Designer’s Accessibility Advocacy Toolkit (sma)14898
accessibility, advocacy, strategies
10 Takeaways From the WebAIM Screenreader Survey #10 (kar)14897
accessibility, screen-readers
Home Screen Advantage (sli)14896
browsers, apple, mobile, support, web-apps, web-platform
WebAIM Screen Reader User Survey 10 (den)14895
accessibility, screen-readers
The Power of Patterns and Playbooks in Content Design (kat)14894
design, content, design-patterns
Understanding Event-Driven Architecture14893
architecture, events
Navigating Signals: An Efficient Alternative to React Hooks for Enhanced Performance and Optimization14892
react, hooks, signals
My WebAIM 10th SR User Survey Takeaways (aar)14891
accessibility, screen-readers
JSDoc as an Alternative TypeScript Syntax14890
typescript, documentation, jsdoc
CSS “:has()” Interactive Guide (sha)14889
guides, css, selectors
CAPTCHA Is Still [the] Most Problematic Issue on the Web (cer)14888
accessibility, web, captcha
A Developer’s Guide for Web Accessibility14887
guides, accessibility
Why My Code Isn’t in TypeScript (rem)14886
typescript
Proposal: CSS Variable Groups (lea)14885
css, variables
Difference Between the Accessibility Page and the Accessibility Statement14884
accessibility, documentation, comparisons
htmx vs. React: A Complete Comparison14883
htmx, react, comparisons
UX Leadership Is Failing (and What We Can Do About It)14882
user-experience, leadership
Navbar Gallery14881
websites, navigation, design-patterns, examples
JavaScript Bloat in 2024 (nik)14880
javascript, performance
Vanilla JavaScript, Libraries, and the Quest for Stateful DOM Rendering (sma)14879
javascript, libraries, client-side-rendering, state-management
JSR: What We Know So Far About Deno’s New JavaScript Package Registry (sar/soc)14878
jsr, deno, dependencies, javascript
Filling Gaps With a Polyfill (jay)14877
polyfills, html, css, javascript, history
Building Dynamic Progress Bars Using Only CSS (ami)14876
css, progress-indicators
ARIA (Are Ya) Afraid of the Dark? Unmasking Common HTML Monsters to Create Better User Experiences (deq)14875
videos, accessibility, aria, html, user-experience
Next.js vs. Remix—a Developer’s Dilemma14874
nextjs, remix, comparisons
Release Notes for Safari Technology Preview 189 (jon/web)14873
release-notes, browsers, safari
The One Trick Every Flutter Web Dev Needs to Know14872
tips-and-tricks, flutter, performance
Discovering Web Automation and Scraping (gli)14871
scraping, automation, bots, tooling
Making of True Multi-Brand Design System14870
design-systems, theming
10 Best “Create React App” Alternatives for Different Use Cases14869
react, frameworks, tech-stacks, comparisons, link-lists
How to Optimize the Web for the Worst User Conditions?14868
how-tos, user-experience, responsive-design, performance, optimization
CSS “::backdrop” Now Inherits From Its Originating Element (bra)14867
css, selectors
View Transitions: Handling Aspect Ratio Changes (jaf)14866
css, view-transitions, aspect-ratio
Syntax Highlighting With No Spans?! (chr/fro)14865
css, apis, syntax-highlighting
Parallax Effect With CSS Custom Properties (fro)14864
css, custom-properties, effects, parallax
Node.js 2023 Year in an Article (raf)14863
nodejs, retrospectives
My Favourite Animation Trick: Exponential Smoothing (lis)14862
animations, tips-and-tricks
CSS-Only Radial Progress Bars Using Conic Gradients14861
videos, css, gradients, progress-indicators
My Design System Journey: Building the Plane While Flying14860
design-systems, collaboration, processes
Control Lazy Load, Infinite Scroll, and Animations in React14859
react, lazy-loading, scrolling, animations, javascript
How to Make a Cursor Image Hover Effect With CSS and JS14858
how-tos, css, javascript, images, cursors, hover
Design Patterns That Encourage Junk Data (mic)14857
design-patterns, sustainability, economics, storage, email
Preventing SQL Injection Attacks in Node.js14856
security, nodejs, databases, sql
Why Is JavaScript Fragile? (cfe)14855
javascript
“random()” Distribution Visualizer14854
javascript, randomness, visualization
Okay, Color Spaces (eee)14853
colors, oklch
How to Use Local Storage in JavaScript (fre)14852
how-tos, browser-storage, javascript
How to Transfer Binary Data Efficiently Across Worker Threads in Node.js14851
how-tos, nodejs, worker-threads
Does Your Design Conform With WCAG Accessibility Guidelines—or Does It Comply? (deq)14850
videos, accessibility, wcag, guidelines, compliance
A Practical Guide to Using Shadow DOM (may)14849
guides, dom, shadow-dom
A Practical Guide to Designing for Colorblind People (vit/sma)14848
guides, accessibility, design, colors, color-blindness
17 Equations That Changed the World—Rewritten in JavaScript14847
javascript, math
7 Effective Ways to Craft Compelling Problem Statements for UX Design (uxm)14846
user-experience, product-management, processes
Responsive Web Design: 3 Key Fundamentals (nng)14845
videos, responsive-design, fundamentals
What Is Utility-First CSS? (hey)14844
css, presentational-html, principles
“Web Design as a Process” in Charts: Maintenance, Decay, Tech Debt, and Big Bang Launching (j9t)14843
content, design, design-debt, technical-debt, maintenance, processes, visualization
[Web Accessibility] Survey Results14842
accessibility, surveys
The Fifty-Fifty Split and Overflow (hex)14841
css, overflow, layout
How to Design an Accessible Web Site for People With Color-Deficient Vision (uxm)14840
how-tos, accessibility, dei, user-experience, colors, contrast, readability
Fostering a Collaborative Onboarding Team to Design Better Onboarding Experiences (uxm)14839
collaboration, onboarding, user-experience
100 Things You Can Do on Your Personal Website (cap)14838
blogging, writing, indieweb
Syntax Highlighting Code Snippets With Prism and the Custom Highlight API (bra)14837
apis, javascript, css, syntax-highlighting
Tailwind Marketing and Misinformation Engine14836
tailwind, css, semantics, principles, maintainability, marketing
Don’t Care About Accessibility? Resistance Is Futile! (cer)14835
accessibility
JavaScript on Demand: How Qwik Differs From React Hydration14834
javascript, qwik, react, hydration, comparisons
Understanding React “useEffect”14833
react, hooks
JavaScript Workers14832
videos, javascript, web-workers
A Manifesto for Small, Static, Web Apps (ros)14831
manifestos, web-apps, principles
How to Set Up a Node Server With TypeScript in 2024 (jle)14830
how-tos, nodejs, servers, typescript
Frontend Application Security: Tips and Tricks14829
web-apps, security, xss, csrf, authentication, dependencies, csp, validation, tips-and-tricks
UI = ƒ(statesⁿ) (dav)14828
design, state-management
Popular Git Config Options (b0r)14827
git, configuration
It’s Official, Apple Kills Web Apps in the EU (owa)14826
web-apps, apple
Be a Better Developer With These Git Good Practices14825
git, best-practices, conventions, consistency, code-reviews
Full Guide on How to Hire Front-End Developers Effectively14824
guides, how-tos, hiring, career
React Labs: What We’ve Been Working On—February 2024 (rea)14823
react
Top 20 JavaScript One-Liners That Don’t Actually Work (dar)14822
javascript
Playing With Infinity in CSS (lon)14821
css, math
Making the Most of Ligatures (man)14820
css, typography
How I Developed the 10 Usability Heuristics14819
usability, heuristics, history
Getting to an Accessibility Strategy14818
accessibility, strategies, processes
Future of CSS: Functions and Mixins14817
css, functions, mixins
CSS “:is(.awesome)” (mar/cfe)14816
videos, css, selectors, techniques
ARIA “note” (aar)14815
accessibility, aria, browsers, screen-readers, support
A Dozen Thoughts About AI (dav)14814
ai
Wednesday, February 14, 2024 Security Releases (raf+/nod)14813
release-notes, nodejs, security
What Is the Difference Between ASP and ASP.NET?14812
asp, asp-net, comparisons
What Is Lighthouse Speed Index (SI) and How to Reduce It14811
performance, metrics, lighthouse
How Accessibility Standards Can Empower Better Chart Visual Design (sma)14810
accessibility, contrast, colors, information-design
Input Type “date”: The Accessibility of HTML Date Picker14809
accessibility, forms
Scroll-Driven Animations: You Want “overflow: clip”, not “overflow: hidden” (bra)14808
css, overflow, scrolling, animations
When It Says “Name From Author” It Means From You, Not Boll or Bukowski (ste)14807
accessibility, aria, naming
The Text File That Runs the Internet (dav/ver)14806
robotstxt, crawling, scraping, ai, web
Reasonable WCAG Additions (a11)14805
accessibility, wcag
Selenium Automation Testing: A Step-by-Step Beginners Guide14804
guides, selenium, testing, automation
An Introduction to Node.js Multithreading (cra)14803
introductions, nodejs, multithreading
Building htmx and Go Web Apps With Gemini Advanced14802
videos, web-apps, htmx, go, ai, gemini
Why I Like Scrumban (j9t)14801
processes, agile, scrum, kanban
The New CSS Math: “pow()”, “sqrt()”, and Exponential Friends (dan)14800
css, functions, math
The Best CSS Frameworks to Use in Your Projects for 2024 and Beyond (fre)14799
css, frameworks, comparisons, bootstrap, tailwind, foundation, bulma, pure
How to Fix the Invisible Scrollbar Issue in iOS Browsers (sim/fro)14798
how-tos, browsers, mobile, scrolling, css
How to Center a Div (jos)14797
how-tos, css, centering
CSS Color Module Level 4 (tab+/w3c)14796
standards, css, colors
Be Aware of Arrays—V8 Engine Advice14795
javascript, javascript-engines, v8, arrays
Advanced Architecture for AI Application (aka AAAA) (aus)14794
ai, architecture, edge-computing, optimization
A Practical Guide to Designing for Children (vit/sma)14793
guides, design, link-lists
The ü/ü Conundrum14792
javascript, unicode, encoding
You Want to Make It Easy to Feature Your Content (fro)14791
frontend-dogma, content, community
How to Choose the Best Static Site Generator in 202414790
how-tos, site-generators, gatsby, jekyll, nuxt, nextjs, hugo, eleventy, vuejs
How to Boost WordPress Security and Protect Your SEO Ranking14789
how-tos, wordpress, security, seo
The Anatomy of Addictive Content (moz)14788
content, writing, seo
React, Solid, htmx14787
react, solidjs, htmx, comparisons
Learn TypeScript (jad)14786
websites, courses, typescript
Can Generative AI Help Write Accessible Code? (tin/tet)14785
accessibility, code-generation, ai
A CSS Project Boilerplate (bel/pic)14784
css, tailwind, templates
Using Recursive CSS to Change Styles Based on Depth (cri)14783
css, selectors
Names Are Complex: Displaying Initials for an Avatar Component in a Design System (hey)14782
naming, design, case-studies
Dynamic Text Color Contrast Based on Background Lightness With CSS/SVG Filters (miu)14781
css, svg, filters, colors, contrast
CSS Mixins and Functions Explainer (mia/odd)14780
css, mixins, functions
Navigating Prioritization: Four Approaches (cwo)14779
project-management, prioritization, processes
Don’t Disable Form Controls (aar)14778
accessibility, usability, forms, buttons
Accelerating Code Reviews With Nudges14777
research, code-reviews, productivity, experiments, facebook+meta
The Front-End Development We’re Used to Is Dying14776
career, simplicity, complexity
HTML as the Baseline (cfe)14775
html, progressive-enhancement
Have We Forgotten How to Build Ethical Things for the Web? (nic)14774
web, ethics
Everything You Need to Know About Image Formats in 2024 (web)14773
images, jpeg, png, gif, webp, avif, pdf, svg
Git Tips: Really Large Repositories (git)14772
git, monorepos, tips-and-tricks
So You Think You Know Git (git)14771
videos, git
What Is a Descriptive Transcript?14770
accessibility, multimedia
Format Nunjucks Files With Prettier (san)14769
nunjucks, prettier
The Accessibility Mindset: Moving Beyond Remediating, Fixing, and Reacting (a11)14768
videos, accessibility
Node.js Community Debate Intensifies Over Enabling Corepack by Default and Potentially Unbundling npm (sar/soc)14767
nodejs, corepack, npm, yarn, pnpm, dependencies
Is [“* { min-width: 0; }”] a Good Idea? (kev)14766
videos, css
In Its Tantrum With Europe, Apple Broke Web Apps in iOS 17 Beta, Still Hasn’t Fixed Them (tho/the)14765
web-apps, browsers, apple, mobile
Going Beyond Pixels and (r)ems in CSS—Relative Length Units Based on the Viewport (uti/iod)14764
viewport, css, units
Frequently Heard in My Beginning Front-End Web Development Class (geo/sma)14763
learning, career
10 Best Automated AI Code Review Tools 202414762
ai, automation, code-reviews, tooling, comparisons, link-lists
Release Notes for Safari Technology Preview 188 (jon/web)14761
release-notes, browsers, safari
Patterns in Design Systems (ikn)14760
design-systems, design-patterns, components
Web Development Is Getting Too Complex, and It May Be Our Fault (mon/sma)14759
web-platform, frameworks, tech-stacks, complexity
Opportunities for AI in Accessibility (aar/ali)14758
accessibility, ai
Offloading JavaScript With Custom Properties (hey)14757
javascript, css, custom-properties
CSS Is Logical (geo)14756
css
JavaScript Promises Demystified (mar)14755
javascript, promises
Remix Takes on Next.js in Battle of the React Frameworks14754
frameworks, react, remix, nextjs
JavaScript vs. Python: Which One Should You Learn First?14753
javascript, python, comparisons
UI Elements Are Not So Elementary14752
design, design-patterns
Designing User Onboarding: Lessons From Figma, Duolingo, and More14751
lessons, onboarding, design, user-experience, figma
Immutable Array Updates With “Array.prototype.with” (jad)14750
javascript, arrays, prototypes, browsers, support
A Beginner’s Guide to Seamless Open-Source Contributions (wom)14749
guides, foss
When to Use the “min()” or “max()” Function (css)14748
css, functions, tips-and-tricks
Malicious npm Package Masquerades as Noblox.js, Targeting Roblox Users for Data Theft (sar/soc)14747
npm, dependencies, security
Lines of Code—How to Not Measure Code Quality and Developer Efficiency (cod)14746
metrics, quality, efficiency, productivity
Lessons Learned Moving Eleventy From CommonJS to ESM in 2024 (zac/cfe)14745
videos, lessons, eleventy, commonjs, esm, refactoring
jQuery 4.0.0 Beta (tim/jqu)14744
release-notes, jquery
In Praise of the “switch” Statement (chi)14743
javascript
Doing What’s Required: Indicating Mandatory Fields in an Accessible Way (tpg)14742
accessibility, usability, forms, errors
Detect Caps Lock With JavaScript (dav)14741
javascript
A Guide to Designing for Older Adults (vit/sma)14740
guides, design, accessibility
The Decision to Leave Tech (col)14739
career, retrospectives
13 Best Books, Courses, and Communities for Learning React14738
react, books, courses, link-lists
You Won’t Scale (cfe)14737
maintainability, scalability
Visual Hierarchy: Making User Experiences Easier to Understand (uxm)14736
user-experience, design, hierarchy
Thoughts on a Global Design System (chr)14735
design-systems
The Most Demanded Frontend Frameworks in 202314734
frameworks, comparisons, react, angular, vuejs