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

“javascript” News Archive

Definition, related topics, and tag feed

Definition · Supertopics: ecmascript, programming-languages · Subtopics: ajax, animations, callbacks, closures, commonjs, console, css-in-js, cypress, dom, esm, frameworks, hacks, import-maps, javascript-engines, jest, jsdoc, json, libraries, scope, source-maps, web-workers (non-exhaustive) · “javascript” × ? · “javascript” RSS feed (per email)

Entry (Sources) and Additional TopicsDate#
Your JSON Is Lying to You2209
json, console
Same Name; Different Component With Scoped Custom Element Registries (fro)2208
web-components, browsers
Building the ChatGPT Typing Effect (jsd)2207
chatgpt, effects
When It Makes Sense to “Block” the Main Thread (sma)2206
performance
Protecting HTML Content Against Copying (jsd)2205
html, css, canvas, obfuscation, techniques, comparisons
I Stopped Destructuring Everything2204
HTML in Canvas: Render Real DOM Inside “<canvas>”2203
html, canvas
Fetch Needs Error Codes (jas)2202
data-fetching, errors
Proxy and Reflect (wil/pic)2201
objects
Time-Based Background Colour Transitions With Temporal and CSS Color-Mix (sop)2200
apis, time, css
Do We Still Need Build Tools? (oll)2199
css, building, tooling
The Shifting Line Between CSS States and JavaScript Events (dxn/css)2198
css, state-management, selectors, events
Animating the “dialog” Element Using View Transitions (rik)2197
modals, html, animations, view-transitions, css
The Siren Song of “ariaNotify()” (wil/css)2196
aria, notifications, attributes, html, jaws, nvda, voiceover, screen-readers, accessibility
Frontend Minimalism in Action: Do More With Less JavaScript (sir/web)2195
videos, minimalism, dependencies, standards
Dark Mode With Web Standards (oll)2194
dark-mode, standards, html, svg, css
The Quiet Problem With Unnecessary Async2193
asynchronicity
Streaming HTML (oll)2192
html, streaming
Astro: HTML First, JavaScript When You Need It (jad)2191
astro, html
Gary Illyes: The Web’s JavaScript Mess Is an AI Agent Nightmare (ppc)2190
ai, ai-agents, html, rag, llmstxt
Everything You Need to Know About Sourcemaps (nec)2189
source-maps
CSS vs. JavaScript (jos)2188
css, animations, comparisons
JS Crossword (reb)2187
Accessible by Design: HTML, CSS, JavaScript, and ARIA Techniques That Scale2186
videos, accessibility, html, css, aria
Saying Goodbye to asm.js (eqr/spi)2185
spidermonkey, javascript-engines, firefox, browsers
Intentionally Blocking Rendering With JavaScript (jay)2184
rendering, painting, web-components
TypeScript, C#, and Turbo Pascal With Anders Hejlsberg (ahe/ger)2183
videos, interviews, programming, typescript, microsoft
Zoomable Image—Creating a Zoom Effect (bar)2182
zooming, images, effects, hugo, css
Soon We Can Finally Banish JavaScript to the ShadowRealm (wil/css)2181
ecmascript, apis
I Keep Tripping Over “true, false, true”2180
CSS Math “random()” in Production: Native Randomness Without JavaScript2179
css, math, functions, randomness, performance, accessibility
The “<selectmenu>” Element: Stop Using JavaScript Dropdown Libraries2178
html, forms, css
Out With the JS, in With the HTML (jim)2177
html, refactoring
Your Recursion Is Lying to You2176
software-design-patterns
A Compiler Engineer’s Walkthrough of JavaScript Spread Arguments (hac)2175
compiling
Trustworthy JavaScript for the Open Web (moz)2174
security, open-web, firefox, browsers
Devtools: How to Query Through the Shadow DOM (rem)2173
how-tos, shadow-dom, dev-tools, browsers
Preserving DOM Changes Across Live Reloads (kit)2172
dom, eleventy
Canvas-ing the Web (mey)2171
canvas
replacements.fyi (430/e18)2170
websites, dependencies, refactoring, migrating, maintenance
Constructable Stylesheets and “adoptedStyleSheets”: One Parse, Every Shadow Root (fro)2169
web-components, lit, css, apis, shadow-dom
Visual Validation Feedback for Form Fields (aar)2168
html, forms, validation
The Web Is Fun Again: First Experiments With HTML in Canvas (ami/fro)2167
experiments, html, canvas
What’s Actually New in JavaScript (and What’s Coming Next) (nec)2166
ecmascript, standards, retrospectives, outlooks
Why I Don’t Chain Everything in JavaScript Anymore2165
Making Dark Mode Play Nicely With BFCache2164
dark-mode, bfcache
Creating Custom Page Transitions in Astro With Barba.js and GSAP (cod)2163
astro, gsap, tooling, animations
You Can’t Cancel a JavaScript Promise (Except Sometimes You Can) (inn)2162
promises
RFC JSIR: A High-Level IR for JavaScript2161
tooling
“Intl” Can Localize Units, Too (ste)2160
localization, units
What to Know in JavaScript (2026 Edition) (chr/fro)2159
ecmascript, standards, frameworks, runtimes, tooling, testing, npm
Burnout Is Real for Open Source Maintainers: A Conversation With John-David Dalton, Creator of Lodash (jdd/ope)2158
podcasts, interviews, libraries, lodash, foss, maintenance
Your Options for Preloading Images With JavaScript (mac)2157
images, preloading, techniques
Your Debounce Is Lying to You2156
software-design-patterns, debouncing
Building a Runtime With QuickJS (hea)2155
quickjs, runtimes, functionality
Shadow DOM Focus Delegation: Getting “delegatesFocus” Right (fro)2154
accessibility, shadow-dom, focus, lit, web-components
Uses for Nested Promises2153
promises, asynchronicity
JavaScript for Everyone: Destructuring (wil/css)2152
examples
How to Burn $30M on a JavaScript Framework… (fir)2151
videos, frameworks, famous
JavaScript Thinks Everything’s a Date2150
time, v8, javascriptcore, python
The Three Pillars of JavaScript Bloat (430)2149
dependencies, complexity, runtimes, architecture, polyfills
Form-Associated Custom Elements in Practice (fro)2148
web-components, forms
Temporal: The 9-Year Journey to Fix Time in JavaScript (jas)2147
time, apis, retrospectives
Building Dynamic Forms in React and Next.js (sma)2146
forms, react, nextjs
Source Maps: Shipping Features Through Standards (jon)2145
source-maps
Testing Browser Support for “focusgroup” (ada)2144
html, attributes, focus
You Don’t Know HTML Tables2143
html, tables
Date Math in JavaScript: The Hidden Trap You’ll Eventually Hit (phi/hac)2142
time, math, apis
Seven Years to TypeScript: Migrating 11,000 Files at Patreon2141
migrating, typescript, case-studies
Proxying Fetch Requests in Server-Side JavaScript (nza)2140
data-fetching, nodejs, deno, bun, cloudflare
Popover API or Dialog API: Which to Choose? (zel/css)2139
pop-overs, modals, apis, accessibility
External Import Maps, Today (lea)2138
import-maps
Getting Started With the Popover API (sma)2137
introductions, pop-overs, tooltips, apis
January 2026 Baseline Monthly Digest (mal)2136
browsers, support, web-platform, css, view-transitions, web-workers, apis, units
JavaScript DRMs Are Stupid and Useless2135
drm
We Deserve a Better Streams API for JavaScript (jas)2134
streaming, apis
A Complete Guide to Bookmarklets (val/css)2133
guides, bookmarklets, link-lists
16 Modern JavaScript Features That Might Blow Your Mind2132
Rewriting a 12-Year-Old JavaScript Library in TypeScript2131
refactoring, typescript
Goodbye “innerHTML”, Hello “setHTML”: Stronger XSS Protection in Firefox 148 (moz)2130
methods, xss, security, firefox, browsers
From “instanceof” to “Error.isError”: Safer Error Checking in JavaScript2129
errors
Dictionary Compression Is Finally Here, and It’s Ridiculously Good (pim/htt)2128
compression, performance
Wasm vs. JavaScript: Who Wins at a Million Rows?2127
webassembly, comparisons, performance
We Cut Node.js’ Memory in Half (mco/pla)2126
nodejs, v8, memory, metrics
5 Source Map Best Practices for Frontend Production Deployments (ele/des)2125
guest-posts, source-maps, best-practices
JS-Heavy Approaches Are Not Compatible With Long-Term Performance Goals (ser)2124
frameworks, performance, prioritization
Quick and Dirty Linting (sto)2123
linting, typescript, biome
It’s About to Get a Lot Easier for Your JavaScript to Clean Up After Itself (wil/pic)2122
garbage-collection
Building an Endless Procedural Snake With Three.js and WebGL (suj/cod)2121
threejs, webgl
Vite, Rust, and the Future of JavaScript Tooling (eva+/bet)2120
videos, interviews, vuejs, rust, oxc, bundling, tooling, ai
Why JavaScript Needs Structured Concurrency2119
concurrency, asynchronicity
Stop Installing Libraries: 10 Browser APIs That Already Solve Your Problems2118
libraries, apis, web-platform
A Percise Parser (rem)2117
parsing
State of JavaScript 2025 [Results] (sac/dev)2116
surveys, metrics
Explicit Resource Management in JavaScript2115
View Transitions and Playing Video (chr/fro)2114
view-transitions, multimedia
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability2113
tailwind, comparisons, css-in-js, maintainability, css
The Unhinged World of Tech in 2026… (fir)2112
videos, outlooks, ai
So You Think Your Website Is Doing Great (cit)2111
html, css, quality
Stop Turning Everything Into Arrays (and Do Less Work Instead)2110
methods, arrays
Aspire for JavaScript Developers (dav)2109
tooling, typescript
How Wrong Can a JavaScript Date Calculation Go? (phi)2108
time, apis
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)2107
mobile, animations
Web Dependencies Are Broken—Can We Fix Them? (lea)2106
dependencies, import-maps, web-platform
Date Is Out, Temporal Is In (wil/pic)2105
time
2025 JavaScript Rising Stars2104
frameworks, libraries, react, vuejs, tooling, ai, mobile, desktop, state-management, css-in-js, testing, static-site-generation, graphql, retrospectives
The Nine Levels of JavaScript Dependency Hell (and)2103
dependencies, maintainability
Streaming JSON in Just 200 Lines of JavaScript2102
streaming, json
JavaScript Frameworks—Heading Into 2026 (rya/thi)2101
frameworks, outlooks, ai
How to Create a Pixel-to-Voxel Video Drop Effect With Three.js and Rapier (cod)2100
how-tos, effects, tooling, gsap, threejs
We Fixed a 6-Year-Old JavaScript Memory Leak (mat/deb)2099
memory
TIL: Why ARM Has a JavaScript Instruction2098
Building a JavaScript Runtime in One Month (the)2097
runtimes, functionality
JavaScript’s “for…of” Loops Are Actually Fast2096
loops, performance
The Curious Case of the Shallow Session SPAs (sli/per)2095
performance, single-page-apps, frameworks, metrics
Why Developers Are Ditching Frameworks for Vanilla JavaScript2094
frameworks, apis, performance, micro-frontends, architecture
How to Dynamically Install Custom Elements (hey)2093
how-tos, web-components, naming
The Fall of JavaScript (yeg)2092
typescript, programming
Trends That Defined JavaScript in 20252091
trends, retrospectives, react, frameworks, tooling, ai
Why Object of Arrays (SoA Pattern) Beat Interleaved Arrays: A JavaScript Performance Rabbit Hole2090
performance, arrays
Targeting by Reference in the Shadow DOM (mey)2089
shadow-dom, html
Dialog View Transitions (med)2088
modals, view-transitions
Different Page Transitions for Different Circumstances (chr/fro)2087
css, view-transitions, animations
The JavaScript Bundler Grand Prix (kat/red)2086
bundling, tooling, vite, rspack, turbopack, bun, rolldown, browserify, webpack, rollup, parcel, esbuild, history
I Ported JustHTML From Python to JavaScript With Codex CLI and GPT-5.2 in 4.5 Hours (sim)2085
migrating, ai, python, tooling, parsing, html
Why We Teach Our Students Progressive Enhancement (cyd)2084
progressive-enhancement, html, css, training
Using the Browser Console for Accessibility Testing (rus)2083
accessibility, testing, console, examples
Discover Dialog (sar/mat)2082
html, modals, css
Design Accessible Animation and Movement With Code Examples (pop)2081
design, accessibility, animations, css, examples
Non-Blocking Cross-Browser Image Rendering on the Canvas (mys/per)2080
canvas, images, performance
What Are DOM Mutations? (rus)2079
accessibility, dom
In 1995, a Netscape Employee Wrote a Hack in 10 Days That Now Runs the Internet (ben/ars)2078
netscape, history
The Nuances of JavaScript Typing Using JSDoc (jar/van)2077
jsdoc, typescript, developer-experience
How Modern Browsers Work (add)2076
browsers, chromium, network, parsing, painting, rendering, javascript-engines, v8, memory, modules, html, css
Category Theory for JavaScript/TypeScript Developers (ibr)2075
typescript, programming, craft
How Microfrontends Work: 3 Integration Strategies2074
micro-frontends, strategies, routing, iframes, ai
CSS-in-JS: The Great Betrayal of Frontend Sanity2073
css-in-js, css, performance, developer-experience
What Are Invokers? Interactivity Without JavaScript (tol/syn)2072
videos, html, pop-overs
You’re Doing JavaScript Testing Wrong (cfe)2071
testing
The Performance Inequality Gap, 2026 (sli)2070
performance, metrics
Managing Side Effects: A JavaScript Effect System in 30 Lines or Less (ayc)2069
The Last Couple Years in V8’s Garbage Collector (win)2068
v8, javascript-engines, garbage-collection, memory, retrospectives
How We Catch UI Bugs Early With Visual Regression Testing2067
testing, regressions, playwright
Error Chaining in JavaScript: Cleaner Debugging With “Error.cause”2066
errors, debugging
JavaScript Just Leveled Up: ES2025—You’ll Fall in Love With (jsd)2065
ecmascript, standards
Advanced Beginner’s Guide to ClojureScript (rom)2064
guides
The Web Animation Performance Tier List (cit)2063
animations, performance, css, apis
The Inner Workings of JavaScript Source Maps (man/pol)2062
typescript, source-maps
Start Implementing View Transitions on Your Websites Today (cyd/pic)2061
css, view-transitions, apis
Import JavaScript Like It’s 2026 (sto)2060
performance
The JavaScript Feature You’ve Probably Never Used Allows Running Untrusted JavaScript Safely2059
JavaScript for Everyone: Iterators (wil/sma)2058
The Origin Story of JavaScript (ann/cas)2057
videos, history, web, ecmascript, browsers, browser-wars, browser-engines, standards
Directives and the Platform Boundary (tan/tan)2056
frameworks
NaN, the Not-a-Number Number That Isn’t NaN (wil/pic)2055
Importing vs. Fetching JSON (jaf)2054
json, data-fetching, comparisons
The Charm of JavaScript: Boom Mics and Clown Shoes (wil+/iga)2053
podcasts, interviews
An Introduction to JavaScript Expressions (wil/css)2052
introductions
Links and Anchors: Ancient HTML and JS Magic in Your Browser (cod/wea)2051
html, css, links
Rethinking Async Loops in JavaScript2050
loops, asynchronicity
“URLPattern” Is Now Baseline Newly Available2049
urls, apis, web-platform, browsers, support
Why “NaN !== NaN” in JavaScript (and the IEEE 754 Story Behind It)2048
history, standards
You’re a Real JavaScript Developer Only If…2047
career
Improving the Trustworthiness of JavaScript on the Web2046
web-apps, security
What’s Up in ES2027? (por/nor)2045
videos, ecmascript, outlooks
For Your Convenience, This CSS Will Self-Destruct (sco)2044
css, hiding
Secure Coding in JavaScript2043
frameworks, security
Writing an Emulator in JavaScript? (nik/nor)2042
videos
Tips for Working With Emoji (chr)2041
emoji, css, tips-and-tricks
The Future of Lodash (uli)2040
libraries, lodash, outlooks
Find Where a Specific Object Was Allocated in JavaScript With DevTools2039
objects, dev-tools, browsers
Inside a 16.67 Millisecond Frame2038
rendering, reflow, painting, performance
How to Group Arrays in JavaScript Without “reduce()”2037
how-tos, arrays
Smashing Animations: Building Adaptive SVGs With “<symbol>”, “<use>”, and CSS Media Queries (mal/sma)2036
animations, svg, css
A Progressive Enhancement Challenge (chr/fro)2035
progressive-enhancement, html, feature-detection, support
I Want to Intercept Boolean Coercion for Objects in JavaScript (zac)2034
objects, types
You Can Now Make PS2 Games in JavaScript2033
Why “typeof null === object”2032
operators
State of JavaScript 2025 (sac/dev)2031
surveys
Creating a Truly Accessible Flip Card (sib/tpg)2030
html, css, accessibility
Stop Using “.reverse().find()”: Meet “findLast()”2029
methods, arrays
How to Disable Right Click With JavaScript (rik)2028
how-tos
Storing Unwise Amounts of Data in JavaScript Bigints (jon)2027
Frontend JavaScript Performance Testing: A Comprehensive Guide (get)2026
guides, performance, testing
Fetch Streams Are Great, but Not for Measuring Upload/Download Progress (jaf)2025
data-fetching, apis
The Missing Link in JavaScript Tools (mar)2024
tooling
Just Use HTML (cfe)2023
html
Web Development for Beginners: Frontend Frameworks (rau)2022
frameworks, preact
Finally, Safe Array Methods in JavaScript2021
arrays, methods
Functional Custom Elements the Easy Way (gin/pic)2020
web-components
Why You Should Test Your Page Without JavaScript2019
support, progressive-enhancement, accessibility
Learning Web Development: Asynchronous JavaScript—Promises and “async” Functions (rau)2018
asynchronicity, promises, functions
We Used AI to Compare and Demo 6 JavaScript Charting Libraries (kyl+/web)2017
videos, libraries, visualization, comparisons, ai
Why Do Browsers Throttle JavaScript Timers? (nol)2016
time, browsers
Learning Web Development: JSON and Processing Files in Node.js (rau)2015
json, nodejs, arrays, objects
Learning Web Development: JavaScript Maps (rau)2014
9 JavaScript Patterns I Wish I Used Earlier2013
software-design-patterns
JavaScript’s Trademark Problem (rau)2012
oracle, legal, deno
Learning Web Development: JavaScript Exceptions (rau)2011
errors
You No Longer Need JavaScript (reb)2010
css, html, examples
Learning Web Development: Plain Objects in JavaScript (rau)2009
objects
Learning Web Development: Modules and Testing in JavaScript (rau)2008
modules, testing
Hack to the Future—Frontend (the)2007
history, html, css, design, layout, flash, image-replacement, libraries, frameworks, hacks, xhtml, tooling, testing, outlooks
JavaScript Engines Explained—Comparing V8, SpiderMonkey, JavaScriptCore, and More (ele/des)2006
guest-posts, javascript-engines, v8, spidermonkey, javascriptcore, quickjs, chakracore
JavaScript Engines Zoo2005
javascript-engines, overviews, comparisons, v8, spidermonkey, quickjs, javascriptcore, chakracore
Understanding “Promise.any()”: When One Success Is Enough2004
promises, asynchronicity
Learning Web Development: Loops in JavaScript (rau)2003
loops
Unit Formatting With “Intl” in JavaScript (ray)2002
units, localization
What’s Next for JavaScript? (jsd)2001
outlooks
Learning Web Development: Arrays in JavaScript (rau)2000
arrays
Learning Web Development: Strings and Methods in JavaScript (rau)1999
strings, methods
Learning Web Development: Numbers, Variables, Functions in JavaScript (rau)1998
variables, functions
Eliminating JavaScript Cold Starts on AWS Lambda (goo)1997
lambda, aws, runtimes
JavaScript Is Tough to Master1996
learning
Speeding Up the JavaScript Ecosystem—SemVer (mar)1995
performance, semver, versioning, dependencies
A Progressive Complexity Manifesto (che)1994
manifestos, complexity, web-apps, html, htmx, web-components, frameworks, principles
The Power of the “Intl” API: A Definitive Guide to Browser-Native Internationalization (fuq/sma)1993
guides, apis, internationalization
Using the Custom Highlight API (chr/fro)1992
apis, css, syntax-highlighting
Building Extensible Frontend Systems (cfe)1991
web-components, extensibility, css
How JavaScript Really Evolves: Inside TC39 With Daniel Ehrenberg (lit+/wee)1990
videos, interviews, ecmascript
How We Made “JSON.stringify” More Than Twice as Fast1989
json, strings, v8, javascript-engines, optimization, performance
Our Fight With Oracle Is Getting Crazy… (den)1988
videos, oracle, legal, licensing
JavaScript Isn’t the Problem—Replacing the Browser Was (p4p/red)1987
single-page-apps, browsers
What Your Website’s Style Says About You—and How Hackers Can Use It Against You (err)1986
security, css
HTML-First, Framework-Second: Is JavaScript Finally Growing Up?1985
html, frameworks
Logical Assignment Operators in JavaScript: Small Syntax, Big Wins1984
operators
The Many, Many, Many JavaScript Runtimes of the Last Decade (shi)1983
runtimes, history
Vanilla JavaScript Support for Tailwind Plus (phi+/tai)1982
tailwind
Never Write Your Own Date Parsing Library (zac)1981
libraries, comparisons, time, parsing
The Untold Story of JavaScript1980
videos, history
Web Serial: The Only Reason I’ll Admit JavaScript Isn’t All Bad1979
A Primer on Focus Trapping (zel/css)1978
introductions, focus, keyboard-navigation, accessibility
Handling JavaScript Event Listeners With Parameters (sma)1977
events
Compile Svelte 5 in Your Head1976
svelte, compiling
Revisiting My 2010 JavaScript Library (dia)1975
retrospectives, libraries, internet-explorer, browsers
Writing “!= null”? That’s What Junior Devs Do—Here’s the Senior Way1974
The Untold Story of JavaScript (den)1973
videos, history
Modern Async Iteration in JavaScript With “Array.fromAsync()”1972
arrays, asynchronicity
Managing the State of Your Promises (ato)1971
state-management, promises
Bulletproof Web Component Loading (cfe)1970
web-components
These 5 Programming Languages Are Quietly Taking Over in 20251969
programming, rust, python, go
JavaScript Scope Hoisting Is Broken (dev)1968
scope, code-splitting
30 Years of JavaScript: 10 Milestones That Changed the Web1967
anniversaries, history, ecmascript, ajax, jquery, web-2.0, nodejs, npm, react, typescript, webassembly
JavaScript Is Being Rewritten in Rust (ost/end)1966
rust
I Started Learning JavaScript Again—a Beginner-Friendly Guide to the Basics1965
guides, fundamentals
A Simple Website1964
websites, history, layout, animations, images, tables, ajax, flash, deploying, simplicity
How JSDoc Saved My Dev Workflow (ato)1963
jsdoc, typescript, documentation
Default Parameters: Your Code Just Got Smarter1962
What’s the Difference Between Ordinary Functions and Arrow Functions in JavaScript? (jrs)1961
functions, comparisons
JavaScript Trademark Update (tin/den)1960
legal, oracle
Ecma International Approves ECMAScript 2025: What’s New? (rau)1959
ecmascript
What’s Coming to JavaScript (lca/den)1958
deno
Speculative Optimizations for WebAssembly Using Deopts and Inlining (lie)1957
v8, javascript-engines, webassembly, optimization, speculation
Tips for Making Regular Expressions Easier to Use in JavaScript (rau)1956
regex, tips-and-tricks, examples
Decoding the SVG “path” Element: Curve and Arc Commands (sma)1955
svg, css
Deep Dive Into JavaScript Engine Internals: V8, SpiderMonkey, and Chakra1954
deep-dives, javascript-engines, v8, spidermonkey, chakracore
JavaScript Broke the Web (and Called It Progress) (jon)1953
performance, user-experience, tooling, tech-stacks, history
9 New JavaScript Features in ES2025 (w3c/syn)1952
videos, ecmascript
When Can I Use Temporal?1951
apis, time
JSON Module Scripts Are Now Baseline Newly Available (tom)1950
json, browsers, support, web-platform
Slightly Enhanced Sticky Revealing Footer (cri)1949
navigation, css
Compiling JavaScript Ahead of Time (goo/web)1948
videos, javascript-engines, compiling
JavaScript String “slice()” Considered Harmful (att)1947
strings
Using “await” at the Top Level in ES Modules1946
esm, asynchronicity
CJS vs. AMD vs. UMD vs. ESM: Which JavaScript Module Format Should You Use—and Why It Even Matters1945
nodejs, modules, commonjs, esm, bundling, comparisons
Happy Birthday, JavaScript (ato)1944
anniversaries
Exploring JavaScript (rau)1943
books
Quick Tip: Avoid Event Listeners on the “window” Object (nat)1942
jquery, events, accessibility, tips-and-tricks
How JavaScript Was Written Back in the Day (tre)1941
jquery, history, comparisons
Worker Threads in Node.js: A Complete Guide for Multithreading in JavaScript (nod)1940
guides, nodejs, worker-threads, multithreading
How to Use the Browser Console: An In-Depth Guide (mat/deb)1939
guides, how-tos, dev-tools, console, browsers
5 Best JavaScript Web Scraping Libraries in 2025 (api)1938
libraries, scraping, link-lists
Creating the “Moving Highlight” Navigation Bar With JavaScript and CSS (sma)1937
navigation, effects, css
How to “import()” a JavaScript String (zac)1936
how-tos, strings
“firstChild” Can Be White Space (chr/fro)1935
whitespace
How Imports Work in RSC (dan)1934
react, components, modules
I Copy These 10 Code Snippets Into Every Project1933
debouncing, json, objects, arrays
“document.currentScript” Is More Useful Than I Thought (mac)1932
Is It JavaScript? (jim)1931
browsers, servers, jsx, typescript, terminology
Write More Reliable JavaScript With Optional Chaining1930
reliability
A JavaScript Developer’s Guide to Go (psu)1929
guides, go, examples
Web Bluetooth API Usage—a Practical Guide1928
guides, apis
The 3 Ways JavaScript Frameworks Render the DOM (rya)1927
videos, frameworks, dom, rendering
Why Are 2025/05/28 and 2025-05-28 Different Days in JavaScript?1926
time
A Thought on JavaScript “Proof of Work” Anti-Scraper Systems (cks)1925
ai, scraping
Comparing Rust, JavaScript, and Go for Authoring WASM Components1924
webassembly, components, rust, go, comparisons
JavaScript’s Upcoming Temporal API and What Problems It Will Solve1923
time, apis
Multithreading in JavaScript With Web Workers (hon)1922
multithreading, web-workers, examples
A Brief History of JavaScript (den)1921
history, ecmascript, typescript, json, javascript-engines, runtimes, browsers
You Can Style Alt Text Like Any Other Text (geo/css)1920
alt-text, accessibility, images, css
Make Screen Readers Talk With the ARIA Notify API (ale)1919
accessibility, screen-readers, aria, notifications, apis
Authenticating JavaScript WebSockets1918
websockets, authentication
Introduction to JavaScript Frameworks (rya)1917
introductions, videos, frameworks, react, angular, vuejs, svelte, solidjs
How JavaScript’s “at()” Method Makes Array Indexing Easier1916
arrays
JavaScript in the Morning, JavaScript in the Evening… (ray)1915
localization
The State of JavaScript Debugging in WebAssembly1914
webassembly, debugging
No Server, No Database: Smarter Related Posts in Astro With transformers.js (ale)1913
astro, ai, hugging-face
Handling Routes in JavaScript Projects (sea)1912
routing, frameworks
Styling Console Text in Node.js (rau)1911
nodejs, console
I Think the Ergonomics of Generators Is Growing on Me (mac)1910
functions
JavaScript Compile Hints: What They Are and When to Use Them (tre)1909
compiling, v8, javascript-engines
Building the Bridge: Running JavaScript Modules From Dart1908
modules, esm, commonjs, dart, deno
Migrating a JavaScript Project From Prettier and ESLint to BiomeJS (app)1907
migrating, prettier, eslint, biome
The Power of the Spread and Rest Syntax in JavaScript1906
arrays
Event Handling in JAWS and NVDA (sib/tpg)1905
accessibility, screen-readers, jaws, nvda, events, comparisons
JavaScript, When Is This? (wil/pic)1904
Converting Values to Strings in JavaScript (rau)1903
conversion
Giving V8 a Heads-Up: Faster JavaScript Startup With Explicit Compile Hints1902
v8, javascript-engines, compiling
Giving Software Away for Free (sim)1901
foss, hosting, html
Why Care About the No-JS Experience? (cfe)1900
support
Making a Small JavaScript Blog Static Site Generator Even Smaller Using the General “async-tree” Library (jan)1899
static-site-generation, tooling
JavaScript Framework Reality Check: What’s Actually Working1898
frameworks, qwik, solidjs, sveltekit, fresh
Creating CSS Theme Variables From a JS File (mic)1897
css, theming, custom-properties, conversion
Why I’m Not Ready to Abandon JavaScript for “Faster” Languages1896
rust, go, refactoring, performance
Contextual Logging With “console.context()” (pat)1895
console, dev-tools, browsers
When to Use “map()” vs. “forEach()”1894
arrays, comparisons
Optimizing Node.js Performance: V8 Memory Management and GC Tuning (mco/pla)1893
nodejs, performance, optimization, v8, javascript-engines, memory, garbage-collection
Float16Array in JavaScript (tre)1892
arrays
Next Level CSS Styling for Cursors (val/css)1891
css, cursors
A Flowing WebGL Gradient, Deconstructed1890
webgl, gradients, math
Exploring TypeScript: TS 5.8 Edition (rau)1889
books, typescript
Mastering Default Values in JavaScript With the Nullish Coalescing (“??”) Operator1888
operators
Some Features That Every JavaScript Developer Should Know in 20251887
arrays, promises, prototypes, variables
Hiding Elements That Require JavaScript Without JavaScript (0xd)1886
css, html
Debugging JavaScript Memory Leaks (jar/bun)1885
memory, debugging, dev-tools, chrome, browsers, bun
A Decade of Impact: How Our npm Packages Hit 1 Billion Downloads and Shaped JavaScript1884
npm, dependencies, history
React 19’s New Hooks: With Practical Examples (let)1883
react, hooks, examples
Deno vs. Oracle Update 3: Fighting the JavaScript Trademark (tin/den)1882
deno, oracle, legal, history
Breaking Down Circular Dependencies in JavaScript1881
dependencies
Automated Visual Regression Testing With Playwright (css)1880
regressions, testing, automation, playwright
Could JavaScript Have Synchronous “await”? (rau)1879
asynchronicity
JavaScript’s Missing Link: Wasp Offers Full Stack Solution1878
wasp, frameworks, history
Land Ahoy: Leaving the Sea of Nodes1877
v8, javascript-engines, compiling
War Story: The Hardest Bug I Ever Debugged (jak)1876
debugging, v8, chrome, browsers, bugs
UI Algorithms: A Tiny Undo Stack (jul)1875
algorithms, functionality, undo-redo
JavaScript Basics for a Senior Dev1874
fundamentals, concepts, examples
Previewing Content Changes in Your Work With “document.designMode” (sma)1873
browsers, dev-tools, content, design
Stop Chasing New JavaScript Frameworks: Build With Fundamentals Instead1872
fundamentals, frameworks, react, vuejs, angular, svelte, solidjs
SSR Deep Dive for React Developers1871
deep-dives, server-side-rendering, react
How WebAssembly Components Can Replace JavaScript SDKs (sac)1870
webassembly, components
Why the Latest JavaScript Frameworks Are a Waste of Time1869
frameworks, react, angular
“Intl.DurationFormat”: Format Time Durations With Locale Support (tre)1868
localization
A Perplexing JavaScript Parsing Puzzle (hil)1867
parsing, history
On JavaScript Closures (With Examples of Interview Questions) (mar)1866
guest-posts, closures, variables, examples, interviewing
Ten Years Ago Today I Coined the Shorthand “js;dr” for “JavaScript Required; Didn’t Read” (tan)1865
support, terminology
JavaScript Best Practice: Use “return await”1864
asynchronicity, best-practices
The Professional Standing of Frontend Developers (mar)1863
guest-posts, career, learning, html, css, communication, collaboration, community, ai
7 Best Practices of File Upload With JavaScript and React1862
file-handling, react, best-practices
JavaScript (htt)1861
web-almanac, studies, research, metrics, performance, bundling, transpiling, web-workers, libraries, web-components
Image Comparison Slider in 6 Lines of JavaScript1860
sliders, images
JavaScript Fatigue Strikes Back (all)1859
react, frameworks, libraries, tooling
What Is TypeScript? An Overview for JavaScript Programmers (rau)1858
overviews, typescript, comparisons
How to Reduce Web Application Bundle Size? (ant)1857
how-tos, web-apps, bundling, tooling
Justified Text, JS “moveBefore” Method, Performance Optimization (zor/css)1856
videos, css, typography, performance, optimization
Turbocharging V8 With Mutable Heap Numbers1855
v8, javascript-engines, performance, randomness
Subverting Control With Weak References (jlo)1854
programming
Solved by Style Observer: “Element.matchContainer()” (bra)1853
css
Speeding Up the JavaScript Ecosystem—Rust and JavaScript Plugins (mar)1852
performance, rust, plugins
Clean Code in JavaScript: A Comprehensive Guide1851
guides, principles, conventions, variables, objects, functions, comments, testing, quality
Introduction to Frontend Development1850
introductions, html, css, frameworks, libraries, tooling, career, trends
TC39 Advances 3 Proposals to Stage 4: RegExp Escaping, Float16Array, and Redeclarable Global Eval Vars (sar/soc)1849
standards, ecmascript, regex, escaping, arrays, math
20 Years of AJAX: The Technology That Revolutionized Web Development1848
ajax, history, data-fetching
How to Move the First Element to the End in JavaScript1847
how-tos
Create Contextual Console Loggers (pat/dev)1846
console, debugging, dev-tools, browsers, edge, chrome
Style Observer: JS to Observe CSS Property Changes, for Reals (lea)1845
tooling, libraries, css
Testing 10 JavaScript Frameworks on Their HTML Defaults (j9t)1844
frameworks, html, conformance, comparisons, link-lists
Think JavaScript Is Slow? Here’s How JIT (Just in Time) Compilation Makes It 100× Faster Instantly1843
compiling, performance
The First Ever Website That Literally Glows in the Dark1842
videos, effects, apis, css
View Transitions Applied: More Performant “::view-transition-group(*)” Animations (bra)1841
css, view-transitions, performance
Move on to ESM-Only (ant)1840
esm, modules, nodejs, support, typescript
Using “at()” Method in JavaScript to Get the Last Item From an Array (ama)1839
arrays
Oracle Justified Its JavaScript Trademark With Node.js—Now It Wants That Ignored (tin/den)1838
oracle, nodejs, deno, legal
Fast and Smooth Third-Party Web Fonts (sco)1837
fonts, embed-code, performance, css
Introducing the JSR Open Governance Board (tin+/den)1836
introductions, jsr, typescript, community
There Are a Lot of Ways to Break Up Long Tasks in JavaScript (mac)1835
web-workers, performance
Vite With TypeScript (rwi)1834
vite, migrating, typescript, configuration
Is npm Enough? Why Startups Are Coming After This JavaScript Package Registry (kat/red)1833
npm, jsr, bun, pnpm, yarn
How to Set WebGL Shader Colors With CSS and JavaScript (nma)1832
how-tos, webgl, css
Page Bloat Update: How Does Ever-Increasing Page Size Affect Your Business and Your Users? (tam/spe)1831
performance, trends, metrics, images, desktop, mobile
What Text Area Popovers Taught Me About Browser APIs (bla)1830
html, forms, apis
How Long Is a Second in JavaScript? (iag)1829
The Modern Way to Write JavaScript Servers (mar)1828
nodejs, servers
You’re Overthinking Web Components (all)1827
web-components
JavaScript Temporal Is Coming (bsm/mdn)1826
apis, time
Exploring AI, Web Development, and Accessibility in Tech With Stefan Judis (ste+/wea)1825
videos, interviewing, ai, runtimes, accessibility, screen-readers, craft
My Website Has Been Gaslighting You (dav)1824
css, colors, effects
Simplify Lazy Loading With Intersection Observer’s “scrollMargin” (fro)1823
scrolling, apis, lazy-loading, performance
Generating Test Values Using JavaScript Generators1822
typescript, functions, testing
Google Begins Requiring JavaScript for Google Search (kyl)1821
google
SolidJS Creator on Confronting Web Framework Complexity1820
frameworks, angular, vuejs, multi-page-apps, single-page-apps, complexity, outlooks
JavaScript’s “Promise.race” and “Promise.all” Are Not “Fair” (chr)1819
promises
Making “this” Less Annoying (dav)1818
formatting, configuration
Using SVGs on Canvas With Compose Multiplatform (eev)1817
canvas, svg, images
What Is a Callback Function? (cfe)1816
callbacks, functions
JavaScript Hashing Speed Comparison: MD5 Versus SHA-256 (lem)1815
hashing, performance, comparisons, bun, nodejs
All JavaScript Keyboard Shortcut Libraries Are Broken1814
libraries, keyboard-shortcuts
Oracle Refuses to Yield JavaScript Trademark, Deno Land Says (inf)1813
oracle, deno, legal
Sharing a Variable Across HTML, CSS, and JavaScript (chr/fro)1812
variables, html, css
Exploring Modern JavaScript Compilers: Why Oxc Matters for the Developer Community (hac)1811
oxc, compiling, tooling
5 Technical JavaScript Trends You Need to Know About in 20251810
trends, architecture, serverless, webassembly, state-management, typescript, type-safety, micro-frontends
2024 JavaScript Rising Stars1809
frameworks, libraries, react, vuejs, tooling, mobile, desktop, state-management, ai, css-in-js, testing, graphql, retrospectives
Progressive Enhancement Brings Everyone In (jay)1808
progressive-enhancement, history, advocacy, link-lists
Reckoning: Frontend’s Lost Decade (sli/per)1807
videos, performance, web-platform
Top PHP Alternative for Web Development?1806
php, java, python, ruby, go, rust
JavaScript Frameworks—Heading Into 2025 (rya/thi)1805
frameworks, performance, complexity, maintainability
Relatively New Things You Should Know About HTML Heading Into 2025 (chr/fro)1804
html, forms, toggles, pop-overs, import-maps, css, transitions
The Difference Between HTML Attributes and Properties (pau/clo)1803
html, attributes, terminology
What’s Actually Happening With JS Frameworks1802
videos, frameworks, trends
Refactoring a Web Performance Snippet for Security and Best Practice (the)1801
performance, metrics, refactoring
View Transitions Snippets: Getting All Animations Linked to a View Transition (bra)1800
css, view-transitions, apis
A Gentle Introduction to Using a Vector Database1799
introductions, databases, vector-databases, ai, openai
Breaking Up With Long Tasks or: How I Learned to Group Loops and Wield the Yield (rvi/per)1798
performance, loops
Shallow Clones Versus Structured Clones (phi)1797
After Rome Failure, VoidZero Is the Newest Attempt to Create Unified JavaScript Toolchain (inf)1796
voidzero, tooling
JavaScript Benchmarking Is a Mess1795
performance
Broadcast Channel API (5t3)1794
apis
Important Topics for Frontend Developers to Master in 20251793
learning, typescript, css, frameworks, git, apis, testing, performance, security, ci-cd, websockets
“AsyncLocalStorage”: Simplify Context Management in Node.js (tre)1792
nodejs, asynchronicity
JS Import Maps (5t3)1791
dependencies, import-maps
How to Create Multi-Step Forms With Vanilla JavaScript and CSS (css)1790
how-tos, forms, css
WebAssembly JavaScript Interface (w3c)1789
standards, webassembly, apis
State of JavaScript 2024 [Results] (sac/dev)1788
surveys, metrics
11 Essential JavaScript Hooking Techniques for Reverse Engineering in 2024 (xiu)1787
debugging, techniques
Your JavaScript Bundle Is Too Fat1786
bundling, performance, dependencies, code-splitting, lazy-loading, tree-shaking, minification, optimization
5 Technical Trends to Help Web Developers Stand Out in 20251785
trends, career, security, ai, low-and-no-code
Native HTML Light and Dark Color Scheme Switching (pep/mat)1784
dark-mode, html, css, functionality
Understanding the Main Thread in the Browser (per)1783
browsers, dom
Publishing a Simple Client-Side JavaScript Package to npm With GitHub Actions (sim)1782
dependencies, npm, github-actions
Just Say “No” to JavaScript (nic/inf)1781
typescript, programming
Creating an Effective Multistep Form for Better User Experience (sma)1780
forms, html, user-experience
Let’s Learn Generators in JavaScript1779
functions
Observation: CSS Math Eval (kiz)1778
css, math
The 5 Most Transformative JavaScript Features From ES15 (tar)1777
ecmascript
Contributing to JavaScript and TypeScript (rob)1776
videos, typescript, foss, standards
Building Better CLI Apps (mol)1775
videos, typescript, command-line, tooling
Deno vs. Oracle: Canceling the JavaScript Trademark (tin/den)1774
deno, oracle, legal
JavaScript Events Made Easy: A Comprehensive Guide for Beginners1773
guides, events
Mastering JavaScript Event Delegation1772
events
Exploring Alternative Interactions in JavaScript (dev)1771
videos, ai, interaction-design
Mastering Accessible Modals With ARIA and Keyboard Navigation (a11)1770
accessibility, keyboard-navigation, aria, modals
State of JavaScript 2024 (sac/dev)1769
surveys
Importing a Frontend JavaScript Library Without a Build System (b0r)1768
libraries, commonjs, esm, nodejs, html
The Art of Clean Code: A Practical Guide to Writing Maintainable JavaScript1767
guides, principles, maintainability
Exploring JavaScript Symbols (tre)1766
Self-Contained Executable Programs With Deno Compile (tin/den)1765
deno, typescript, compiling
Understanding Bitwise Shifts in JavaScript: “<<” and “>>” (tre)1764
operators
JavaScript Import Attributes (ES2025) (tre)1763
security
Why Does JavaScript’s “parseInt(0.0000005)” Print “5”?1762
How a BBC Navigation Bar Component Broke Depending on Which External Monitor It Was On (jos)1761
debugging, case-studies
The Path to Learn Web Development (fla)1760
learning, http, html, css, tooling, git, typescript, databases, frameworks
Mapping Over Promises in JavaScript (pmb)1759
promises
Should Web Designers Learn JavaScript or CSS? (ope)1758
design, career, css
Celebrating Innovation and Impact: JavaScriptLandia Community Awards (ope)1757
community
Maybe It Isn’t JavaScript (gee)1756
videos, seo, google
How Bun Supports V8 APIs Without Using V8 II (bun)1755
bun, v8, apis
How Do HTML Event Handlers Work? (tbr)1754
html, events
How to Test JavaScript for Accessibility Compliance (flo/a11)1753
how-tos, accessibility, compliance, wcag, testing
JavaScript’s “&&=” Operator: Understanding Logical “AND” Assignment (tre)1752
operators
JavaScript’s “??=” Operator: Default Values Made Simple (tre)1751
operators
Introducing the vlt Package Manager and Serverless Registry (dar+/vlt)1750
introductions, dependencies, serverless, tooling
JavaScript Do’s and Don’ts (mua)1749
accessibility
How to Roll Your Own Auth in JavaScript and TypeScript (rwi)1748
how-tos, authentication, typescript
What Is the JavaScript Pipeline Operator “|>” (tre)1747
operators
Octoverse: AI Leads Python to Top Language as the Number of Global Developers Surges1746
research, github, community, ai, programming, python, typescript, java, php, shells, go
JavaScript Best Practices (jet)1745
best-practices
20 JavaScript Tricks Every Developer Must Know1744
tips-and-tricks
JavaScript Truthy and Falsy: A Deep Dive (tre)1743
deep-dives
How We Shrunk Our JavaScript Monorepo Git Size by 94%1742
monorepos, git
Front End Debugging: Not Just Console Log (deb)1741
debugging, console, dom
Passing Data to New Window Using JavaScript1740
comparisons
Should JavaScript Be Split Into Two Languages? New Google-Driven Proposal Divides Opinion1739
ecmascript, google, runtimes
Set the Default Time Zone in Node.js (ste)1738
nodejs, internationalization, localization, time
Why I’m Skeptical of Rewriting JavaScript Tools in “Faster” Languages (nol)1737
tooling, programming
Platform Strategy and Its Discontents (sli)1736
web-platform, mobile, mobile-first, native, performance, user-experience
How to Build an Image Search Application With OpenAI CLIP and PostgreSQL in JavaScript1735
how-tos, images, search, ai, openai, postgresql, databases, functionality
How to Convert CommonJS to ESM (den)1734
how-tos, conversion, commonjs, esm
Does Deno 2 Really Uncomplicate JavaScript? (fir)1733
videos, deno, jsr, comparisons
The Greatness and Limitations of the “js-framework-benchmark” (nol)1732
frameworks, tooling, performance, metrics
I Didn’t Know You Could Use Sibling Parameters as Default Values in Functions (mac)1731
functions
The Secrets of JavaScript Object Property Order1730
objects
Handling Paste Events in JavaScript (ray/fro)1729
events
JS Frameworks, in Their Own Words (by Word Cloud) (j9t)1728
frameworks, react, vuejs, angular, svelte, express, meteor, nextjs, comparisons
Dive Into WebGPU (oka)1727
introductions, webgpu
The Popover API: Your New Best Friend for Tooltips (dev)1726
pop-overs, apis, tooltips, html, css
Floating in Space—Animations With Compose and Canvas (eev)1725
canvas, animations
10 JavaScript Concepts Every Node Developer Must Master1724
nodejs, concepts
Unleash JavaScript’s Potential With Functional Programming (jan)1723
programming, comparisons
How Bun Supports V8 APIs Without Using V8 (bun)1722
bun, v8, apis, comparisons
You Might Not Need That Framework (fro)1721
frameworks
Disable Console Logs in Production in Next.js (ami)1720
nextjs, console, logging
A Guide to Destructuring in JavaScript (wil/pic)1719
guides, examples
Compile and Run C in JavaScript (jar/bun)1718
compiling
Don’t Sleep on AbortController1717
This New JavaScript Operator Is an Absolute Game Changer (tar)1716
operators
Hacking Cars in JavaScript (Running Replay Attacks in the Browser With the HackRF) (dev)1715
security
Oracle, It’s Time to Free JavaScript (tin+)1714
licensing, legal, oracle
How to Use JavaScript With LangChain: A Step-by-Step Guide1713
how-tos, guides, langchain
Bitwise Operators in JavaScript and When to Use Them (8ho)1712
operators
Rethinking CSS in JS1711
css, css-in-js, design, design-systems, maintenance, state-management
The Redmonk Programming Language Rankings: June 2024 (red)1710
programming, comparisons, python, java, php, typescript, css, ruby, go, shells, rust, dart