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

“javascript” News Archive

Definition, related topics, 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, jsr, libraries, npm, pnpm, scope, source-maps, web-workers, yarn (non-exhaustive) · “javascript” × ? · “javascript” RSS feed (per email)

Entry (Sources) and Additional TopicsDate#
What if Everything Was JavaScript? an Exploratory Runtime Experiment (ste/nod)2357
videos, runtimes
My Interop 2027 Rankings (mey)2356
web-platform, interoperability, css, html
My Interop 2027 Picks (paw)2355
interoperability, web-platform, css
My Interop 2027 Rankings (val)2354
interoperability, web-platform, svg, css, images, html, apis
WebSocket Servers in JavaScript: Node.js, Bun, and Deno in 2026 (lem)2353
servers, websockets, nodejs, bun, deno, metrics
Testing an Iframe’s “postMessage” Handler (fro)2352
iframes, security
What the iPhone Duo Means for Web Development (and Video.js) (dar)2351
iphone, apple, multimedia, apis, css
Recursion Is Dead and HTML Killed It (dav)2350
html, streaming
Four Months of VoidZero at Cloudflare: Making the Open-Source JavaScript Toolchain Faster for All Humans and Agents (eva)2349
voidzero, cloudflare, foss, tooling
Optimizing Objects With Null Prototypes (mco)2348
prototypes, v8
The Greatest Pun2347
The Grand Unifying Architecture of Frontend (rya)2346
architecture, concepts, frameworks
Progressively Enhancing Maps for UK Government Services (the)2345
components, progressive-enhancement, case-studies
Introducing secure-eval-worker (mco/pla)2344
introductions, nodejs, libraries, permissions, security
What I’ve Learned as a Frontend Developer After 3+ Years2343
career, lessons, css, state-management, performance, accessibility, communication, tech-stacks
How to Implement a Distributed Circuit Breaker2342
how-tos, software-design-patterns
The V8 JavaScript Runtime Undermined My Constant-Time JavaScript Library (soa)2341
v8, time, security
Email, Decoupled From Where and How: A Cross-Runtime, Cross-Provider Email Library for JavaScript and TypeScript (hon)2340
email, tooling, typescript
Half Past Fetch2339
data-fetching, asynchrony
Fuzzing the State Machines Inside My HTTP Client2338
testing
How Turbopack Chunks Your JavaScript2337
turbopack
Fixing Top-Level Await in Safari (hei/web)2336
safari, browsers, asynchrony, webkit, browser-engines
Bumping the Major Version of Your JavaScript Library Is User Hostile (jam)2335
libraries, semver, versioning
A Deep Dive Into StyleX (fla)2334
deep-dives, tooling, css
The Depths of JavaScript: Minesweeper in 247 Bytes2333
minimalism, functionality
Enhanced Spell Checking on the Web (bka)2332
apis, html
Music Theory for Programmers (luk)2331
Why I Ported Moonshine to JavaScript (pet)2330
migrating, c++
Your Modules Are Lying to You2329
esm, commonjs, modules
Building an Accordion the Browser Can Search2328
accordions, hiding, search, html, css
How Baseline Can Help You Ship Less JavaScript (jad/sma)2327
dependencies, browsers, support, web-platform
Working With “::highlight()” Using Progressive Enhancement (sun/pic)2326
css, apis, progressive-enhancement
Progressive Enhancement Inside of JavaScript (rem)2325
progressive-enhancement
We Finally Learned to Center a Div, Then Browsers Added Sidebars2324
css, centering, browsers
Your JSON Is Lying to You2323
json, console
A11y 101—3.3.4 Error Prevention (nat)2322
introductions, accessibility, wcag, errors, html
Same Name; Different Component With Scoped Custom Element Registries (fro)2321
web-components, browsers
Building the ChatGPT Typing Effect (jsd)2320
chatgpt, effects
When It Makes Sense to “Block” the Main Thread (sma)2319
performance
Protecting HTML Content Against Copying (jsd)2318
html, css, canvas, obfuscation, techniques, comparisons
I Stopped Destructuring Everything2317
HTML in Canvas: Render Real DOM Inside “<canvas>”2316
html, canvas
Fetch Needs Error Codes (jas)2315
data-fetching, errors
The Browser’s Main Thread Is Expensive2314
performance, optimization, worker-threads
Proxy and Reflect (wil/pic)2313
objects
Time-Based Background Colour Transitions With Temporal and CSS Color-Mix (sop)2312
apis, time, css
Do We Still Need Build Tools? (oll)2311
css, building, tooling
A Deep Dive Into the Inner Workings of JavaScript Engines: Writing Code That Makes V8 Happy2310
deep-dives, javascript-engines, v8, garbage-collection
The Shifting Line Between CSS States and JavaScript Events (dxn/css)2309
css, state-management, selectors, events
Animating the “dialog” Element Using View Transitions (rik)2308
modals, html, animations, view-transitions, css
The Siren Song of “ariaNotify()” (wil/css)2307
aria, notifications, attributes, html, jaws, nvda, voiceover, screen-readers, accessibility
Frontend Minimalism in Action: Do More With Less JavaScript (sir/web)2306
videos, minimalism, dependencies, standards
Dark Mode With Web Standards (oll)2305
dark-mode, standards, html, svg, css
The Quiet Problem With Unnecessary Async2304
asynchrony
Streaming HTML (oll)2303
html, streaming
Astro: HTML First, JavaScript When You Need It (jad)2302
astro, html
Gary Illyes: The Web’s JavaScript Mess Is an AI Agent Nightmare (ppc)2301
ai, ai-agents, html, rag, llmstxt
Everything You Need to Know About Sourcemaps (nec)2300
source-maps
CSS vs. JavaScript (jos)2299
css, animations, comparisons
JS Crossword (reb)2298
Accessible by Design: HTML, CSS, JavaScript, and ARIA Techniques That Scale2297
videos, accessibility, html, css, aria
Saying Goodbye to asm.js (eqr/spi)2296
spidermonkey, javascript-engines, firefox, browsers
Intentionally Blocking Rendering With JavaScript (jay)2295
rendering, painting, web-components
Zoomable Image—Creating a Zoom Effect (bar)2294
zooming, images, effects, hugo, css
TypeScript, C#, and Turbo Pascal With Anders Hejlsberg (ahe/ger)2293
videos, interviews, programming, c-sharp, typescript, microsoft
Soon We Can Finally Banish JavaScript to the ShadowRealm (wil/css)2292
ecmascript, apis
I Keep Tripping Over “true, false, true”2291
CSS Math “random()” in Production: Native Randomness Without JavaScript2290
css, math, functions, randomness, performance, accessibility
The “<selectmenu>” Element: Stop Using JavaScript Dropdown Libraries2289
html, forms, css
Out With the JS, in With the HTML (jim)2288
html, refactoring
Your Recursion Is Lying to You2287
software-design-patterns
A Compiler Engineer’s Walkthrough of JavaScript Spread Arguments (hac)2286
compiling
Trustworthy JavaScript for the Open Web (moz)2285
security, open-web, firefox, browsers
Preserving DOM Changes Across Live Reloads (kit)2284
dom, eleventy
DevTools: How to Query Through the Shadow DOM (rem)2283
how-tos, shadow-dom, dev-tools, browsers
Canvas-ing the Web (mey)2282
canvas
replacements.fyi (430/e18)2281
websites, dependencies, refactoring, migrating, maintenance
Constructable Stylesheets and “adoptedStyleSheets”: One Parse, Every Shadow Root (fro)2280
web-components, lit, css, apis, shadow-dom
Visual Validation Feedback for Form Fields (aar)2279
html, forms, validation
The Web Is Fun Again: First Experiments With HTML in Canvas (ami/fro)2278
experiments, html, canvas
What’s Actually New in JavaScript (and What’s Coming Next) (nec)2277
ecmascript, standards, retrospectives, outlooks
Why I Don’t Chain Everything in JavaScript Anymore2276
Making Dark Mode Play Nicely With BFCache2275
dark-mode, bfcache
Creating Custom Page Transitions in Astro With Barba.js and GSAP (cod)2274
astro, gsap, tooling, animations
You Can’t Cancel a JavaScript Promise (Except Sometimes You Can) (inn)2273
promises
RFC JSIR: A High-Level IR for JavaScript2272
tooling
“Intl” Can Localize Units, Too (ste)2271
localization, units
Shopify Speed Audit: Apps Killing Conversions2270
shopify, performance
What to Know in JavaScript (2026 Edition) (chr/fro)2269
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)2268
podcasts, interviews, libraries, lodash, foss, maintenance
Your Options for Preloading Images With JavaScript (mac)2267
images, preloading, techniques
Your Debounce Is Lying to You2266
software-design-patterns, debouncing
Building a Runtime With QuickJS (hea)2265
quickjs, runtimes, functionality
Shadow DOM Focus Delegation: Getting “delegatesFocus” Right (fro)2264
accessibility, shadow-dom, focus, lit, web-components
Uses for Nested Promises2263
promises, asynchrony
JavaScript for Everyone: Destructuring (wil/css)2262
examples
How to Burn $30M on a JavaScript Framework… (fir)2261
videos, frameworks, famous
JavaScript Thinks Everything’s a Date2260
time, v8, javascriptcore, python
The Three Pillars of JavaScript Bloat (430)2259
dependencies, complexity, runtimes, architecture, polyfills
Form-Associated Custom Elements in Practice (fro)2258
web-components, forms
Temporal: The 9-Year Journey to Fix Time in JavaScript (jas)2257
time, apis, retrospectives
Building Dynamic Forms in React and Next.js (sma)2256
forms, react, nextjs
Source Maps: Shipping Features Through Standards (jon)2255
source-maps
Testing Browser Support for “focusgroup”2254
html, attributes, focus
You Don’t Know HTML Tables2253
html, tables
Date Math in JavaScript: The Hidden Trap You’ll Eventually Hit (phi/hac)2252
time, math, apis
Seven Years to TypeScript: Migrating 11,000 Files at Patreon2251
migrating, typescript, case-studies
Proxying Fetch Requests in Server-Side JavaScript (nza)2250
data-fetching, nodejs, deno, bun, cloudflare
Popover API or Dialog API: Which to Choose? (zel/css)2249
pop-overs, modals, apis, accessibility
External Import Maps, Today (lea)2248
import-maps
Getting Started With the Popover API (sma)2247
introductions, pop-overs, tooltips, apis
January 2026 Baseline Monthly Digest (mal)2246
browsers, support, web-platform, css, view-transitions, web-workers, apis, units
JavaScript DRMs Are Stupid and Useless2245
drm
We Deserve a Better Streams API for JavaScript (jas)2244
streaming, apis
A Complete Guide to Bookmarklets (val/css)2243
guides, bookmarklets, link-lists
16 Modern JavaScript Features That Might Blow Your Mind2242
Rewriting a 12-Year-Old JavaScript Library in TypeScript2241
refactoring, typescript
Goodbye “innerHTML”, Hello “setHTML”: Stronger XSS Protection in Firefox 148 (moz)2240
methods, xss, security, firefox, browsers
From “instanceof” to “Error.isError”: Safer Error Checking in JavaScript2239
errors
Dictionary Compression Is Finally Here, and It’s Ridiculously Good (pim/htt)2238
compression, performance
Wasm vs. JavaScript: Who Wins at a Million Rows?2237
webassembly, comparisons, performance
We Cut Node.js’ Memory in Half (mco/pla)2236
nodejs, v8, memory, metrics
5 Source Map Best Practices for Frontend Production Deployments (ele/des)2235
guest-posts, source-maps, best-practices
JS-Heavy Approaches Are Not Compatible With Long-Term Performance Goals (ser)2234
frameworks, performance, prioritization
Quick and Dirty Linting (sto)2233
linting, typescript, biome
It’s About to Get a Lot Easier for Your JavaScript to Clean Up After Itself (wil/pic)2232
garbage-collection
Building an Endless Procedural Snake With Three.js and WebGL (suj/cod)2231
threejs, webgl
Vite, Rust, and the Future of JavaScript Tooling (eva+/bet)2230
videos, interviews, vuejs, rust, oxc, bundling, tooling, ai
Why JavaScript Needs Structured Concurrency2229
concurrency, asynchrony
Stop Installing Libraries: 10 Browser APIs That Already Solve Your Problems2228
libraries, apis, web-platform
A Percise Parser (rem)2227
parsing
State of JavaScript 2025 [Results] (sac/dev)2226
surveys, metrics
Explicit Resource Management in JavaScript2225
View Transitions and Playing Video (chr/fro)2224
view-transitions, multimedia
StyleX vs. Tailwind: Meta’s Take on CSS-in-JS Maintainability2223
tailwind, comparisons, css-in-js, maintainability, css
The Unhinged World of Tech in 2026… (fir)2222
videos, outlooks, ai
So You Think Your Website Is Doing Great (cit)2221
html, css, quality
Stop Turning Everything Into Arrays (and Do Less Work Instead)2220
methods, arrays
Aspire for JavaScript Developers (dav)2219
tooling, typescript
How Wrong Can a JavaScript Date Calculation Go? (phi)2218
time, apis
Beyond the Mouse: Animating With Mobile Accelerometers (ami/fro)2217
mobile, animations
Web Dependencies Are Broken—Can We Fix Them? (lea)2216
dependencies, import-maps, web-platform
Date Is Out, Temporal Is In (wil/pic)2215
time
2025 JavaScript Rising Stars2214
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)2213
dependencies, maintainability
Streaming JSON in Just 200 Lines of JavaScript2212
streaming, json
JavaScript Frameworks—Heading Into 2026 (rya/thi)2211
frameworks, outlooks, ai
How to Create a Pixel-to-Voxel Video Drop Effect With Three.js and Rapier (cod)2210
how-tos, effects, tooling, gsap, threejs
We Fixed a 6-Year-Old JavaScript Memory Leak (mat/deb)2209
memory
TIL: Why ARM Has a JavaScript Instruction2208
Building a JavaScript Runtime in One Month (the)2207
runtimes, functionality
JavaScript’s “for…of” Loops Are Actually Fast2206
loops, performance
The Curious Case of the Shallow Session SPAs (sli/per)2205
performance, single-page-apps, frameworks, metrics
Why Developers Are Ditching Frameworks for Vanilla JavaScript2204
frameworks, apis, performance, micro-frontends, architecture
How to Dynamically Install Custom Elements (hey)2203
how-tos, web-components, naming
The Fall of JavaScript (yeg)2202
typescript, programming
Trends That Defined JavaScript in 20252201
trends, retrospectives, react, frameworks, tooling, ai
Why Object of Arrays (SoA Pattern) Beat Interleaved Arrays: A JavaScript Performance Rabbit Hole2200
performance, arrays
Targeting by Reference in the Shadow DOM (mey)2199
shadow-dom, html
Dialog View Transitions (med)2198
modals, view-transitions
Different Page Transitions for Different Circumstances (chr/fro)2197
css, view-transitions, animations
The JavaScript Bundler Grand Prix (kat/red)2196
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)2195
migrating, ai, python, tooling, parsing, html
Why We Teach Our Students Progressive Enhancement (cyd)2194
progressive-enhancement, html, css, training
Using the Browser Console for Accessibility Testing (rus)2193
accessibility, testing, console, examples
Discover Dialog (sar/mat)2192
html, modals, css
Design Accessible Animation and Movement With Code Examples (pop)2191
design, accessibility, animations, css, examples
Non-Blocking Cross-Browser Image Rendering on the Canvas (mys/per)2190
canvas, images, performance
What Are DOM Mutations? (rus)2189
accessibility, dom
In 1995, a Netscape Employee Wrote a Hack in 10 Days That Now Runs the Internet (ben/ars)2188
netscape, history
The Nuances of JavaScript Typing Using JSDoc (jar/van)2187
jsdoc, typescript, developer-experience
How Modern Browsers Work (add)2186
browsers, chromium, network, parsing, painting, rendering, javascript-engines, v8, memory, modules, html, css
Category Theory for JavaScript/TypeScript Developers (ibr)2185
typescript, programming, craft
How Microfrontends Work: 3 Integration Strategies2184
micro-frontends, strategies, routing, iframes, ai
CSS-in-JS: The Great Betrayal of Frontend Sanity2183
css-in-js, css, performance, developer-experience
What Are Invokers? Interactivity Without JavaScript (tol/syn)2182
videos, html, pop-overs
You’re Doing JavaScript Testing Wrong (cfe)2181
testing
The Performance Inequality Gap, 2026 (sli)2180
performance, metrics
Managing Side Effects: A JavaScript Effect System in 30 Lines or Less (ayc)2179
The Last Couple Years in V8’s Garbage Collector (win)2178
v8, javascript-engines, garbage-collection, memory, retrospectives
How We Catch UI Bugs Early With Visual Regression Testing2177
testing, regressions, playwright
Error Chaining in JavaScript: Cleaner Debugging With “Error.cause”2176
errors, debugging
JavaScript Just Leveled Up: ES2025—You’ll Fall in Love With (jsd)2175
ecmascript, standards
Advanced Beginner’s Guide to ClojureScript (rom)2174
guides
The Web Animation Performance Tier List (cit)2173
animations, performance, css, apis
The Inner Workings of JavaScript Source Maps (man/pol)2172
typescript, source-maps
Start Implementing View Transitions on Your Websites Today (cyd/pic)2171
css, view-transitions, apis
Import JavaScript Like It’s 2026 (sto)2170
performance
The JavaScript Feature You’ve Probably Never Used Allows Running Untrusted JavaScript Safely2169
JavaScript for Everyone: Iterators (wil/sma)2168
The Origin Story of JavaScript (ann/cas)2167
videos, history, web, ecmascript, browsers, browser-wars, browser-engines, standards
Directives and the Platform Boundary (tan/tan)2166
frameworks
NaN, the Not-a-Number Number That Isn’t NaN (wil/pic)2165
Importing vs. Fetching JSON (jaf)2164
json, data-fetching, comparisons
The Charm of JavaScript: Boom Mics and Clown Shoes (wil+/iga)2163
podcasts, interviews
An Introduction to JavaScript Expressions (wil/css)2162
introductions
Links and Anchors: Ancient HTML and JS Magic in Your Browser (cod/wea)2161
html, css, links
“URLPattern” Is Now Baseline Newly Available2160
urls, apis, web-platform, browsers, support
Rethinking Async Loops in JavaScript2159
loops, asynchrony
Why “NaN !== NaN” in JavaScript (and the IEEE 754 Story Behind It)2158
history, standards
You’re a Real JavaScript Developer Only If…2157
career
Improving the Trustworthiness of JavaScript on the Web2156
web-apps, security
What’s Up in ES2027? (por/nor)2155
videos, ecmascript, outlooks
For Your Convenience, This CSS Will Self-Destruct (sco)2154
css, hiding
Secure Coding in JavaScript2153
frameworks, security
Writing an Emulator in JavaScript? (nik/nor)2152
videos
Tips for Working With Emoji (chr)2151
emoji, css, tips-and-tricks
The Future of Lodash (uli)2150
libraries, lodash, outlooks
Find Where a Specific Object Was Allocated in JavaScript With DevTools2149
objects, dev-tools, browsers
Inside a 16.67 Millisecond Frame2148
rendering, reflow, painting, performance
How to Group Arrays in JavaScript Without “reduce()”2147
how-tos, arrays
Smashing Animations: Building Adaptive SVGs With “<symbol>”, “<use>”, and CSS Media Queries (mal/sma)2146
animations, svg, css
A Progressive Enhancement Challenge (chr/fro)2145
progressive-enhancement, html, feature-detection, support
I Want to Intercept Boolean Coercion for Objects in JavaScript (zac)2144
objects, types
You Can Now Make PS2 Games in JavaScript2143
Why “typeof null === object”2142
operators
State of JavaScript 2025 (sac/dev)2141
surveys
Creating a Truly Accessible Flip Card (sib/tpg)2140
html, css, accessibility
Stop Using “.reverse().find()”: Meet “findLast()”2139
methods, arrays
How to Disable Right Click With JavaScript (rik)2138
how-tos
Storing Unwise Amounts of Data in JavaScript Bigints (jon)2137
Frontend JavaScript Performance Testing: A Comprehensive Guide (get)2136
guides, performance, testing
Fetch Streams Are Great, but Not for Measuring Upload/Download Progress (jaf)2135
data-fetching, apis
The Missing Link in JavaScript Tools (mar)2134
tooling
Just Use HTML (cfe)2133
html
Web Development for Beginners: Frontend Frameworks (rau)2132
frameworks, preact
Finally, Safe Array Methods in JavaScript2131
arrays, methods
Functional Custom Elements the Easy Way (gin/pic)2130
web-components
Why You Should Test Your Page Without JavaScript2129
support, progressive-enhancement, accessibility
Learning Web Development: Asynchronous JavaScript—Promises and “async” Functions (rau)2128
asynchrony, promises, functions
We Used AI to Compare and Demo 6 JavaScript Charting Libraries (kyl+/web)2127
videos, libraries, visualization, comparisons, ai
Why Do Browsers Throttle JavaScript Timers? (nol)2126
time, browsers
Learning Web Development: JSON and Processing Files in Node.js (rau)2125
json, nodejs, arrays, objects
9 JavaScript Patterns I Wish I Used Earlier2124
software-design-patterns
Learning Web Development: JavaScript Maps (rau)2123
Learning Web Development: JavaScript Exceptions (rau)2122
errors
JavaScript’s Trademark Problem (rau)2121
oracle, legal, deno
You No Longer Need JavaScript (reb)2120
css, html, examples
Learning Web Development: Plain Objects in JavaScript (rau)2119
objects
Learning Web Development: Modules and Testing in JavaScript (rau)2118
modules, testing
Hack to the Future—Frontend (the)2117
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)2116
guest-posts, javascript-engines, v8, spidermonkey, javascriptcore, quickjs, chakracore
JavaScript Engines Zoo2115
javascript-engines, overviews, comparisons, v8, spidermonkey, quickjs, javascriptcore, chakracore
Understanding “Promise.any()”: When One Success Is Enough2114
promises, asynchrony
Learning Web Development: Loops in JavaScript (rau)2113
loops
Unit Formatting With “Intl” in JavaScript (ray)2112
units, localization
What’s Next for JavaScript? (jsd)2111
outlooks
Learning Web Development: Arrays in JavaScript (rau)2110
arrays
Learning Web Development: Strings and Methods in JavaScript (rau)2109
strings, methods
Learning Web Development: Numbers, Variables, Functions in JavaScript (rau)2108
variables, functions
Eliminating JavaScript Cold Starts on AWS Lambda (goo)2107
lambda, aws, runtimes
JavaScript Is Tough to Master2106
learning
Speeding Up the JavaScript Ecosystem—SemVer (mar)2105
performance, semver, versioning, dependencies
A Progressive Complexity Manifesto (che)2104
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)2103
guides, apis, internationalization
Using the Custom Highlight API (chr/fro)2102
apis, css, syntax-highlighting
Building Extensible Frontend Systems (cfe)2101
web-components, extensibility, css
How JavaScript Really Evolves: Inside TC39 With Daniel Ehrenberg (lit+/wee)2100
videos, interviews, ecmascript
How We Made “JSON.stringify” More Than Twice as Fast2099
json, strings, v8, javascript-engines, optimization, performance
Our Fight With Oracle Is Getting Crazy… (den)2098
videos, oracle, legal, licensing
JavaScript Isn’t the Problem—Replacing the Browser Was (p4p/red)2097
single-page-apps, browsers
What Your Website’s Style Says About You—and How Hackers Can Use It Against You (err)2096
security, css
HTML-First, Framework-Second: Is JavaScript Finally Growing Up?2095
html, frameworks
Logical Assignment Operators in JavaScript: Small Syntax, Big Wins2094
operators
The Many, Many, Many JavaScript Runtimes of the Last Decade (shi)2093
runtimes, history
Vanilla JavaScript Support for Tailwind Plus (phi+/tai)2092
tailwind
Never Write Your Own Date Parsing Library (zac)2091
libraries, comparisons, time, parsing
The Untold Story of JavaScript2090
videos, history
Web Serial: The Only Reason I’ll Admit JavaScript Isn’t All Bad2089
A Primer on Focus Trapping (zel/css)2088
introductions, focus, keyboard-navigation, accessibility
Handling JavaScript Event Listeners With Parameters (sma)2087
events
Compile Svelte 5 in Your Head2086
svelte, compiling
Revisiting My 2010 JavaScript Library (dia)2085
retrospectives, libraries, internet-explorer, browsers
Writing “!= null”? That’s What Junior Devs Do—Here’s the Senior Way2084
The Untold Story of JavaScript (den)2083
videos, history
Modern Async Iteration in JavaScript With “Array.fromAsync()”2082
arrays, asynchrony
Managing the State of Your Promises (ato)2081
state-management, promises
Bulletproof Web Component Loading (cfe)2080
web-components
These 5 Programming Languages Are Quietly Taking Over in 20252079
programming, rust, python, go
JavaScript Scope Hoisting Is Broken (dev)2078
scope, code-splitting
30 Years of JavaScript: 10 Milestones That Changed the Web2077
anniversaries, history, ecmascript, ajax, jquery, web-2.0, nodejs, npm, react, typescript, webassembly
JavaScript Is Being Rewritten in Rust (ost/end)2076
rust
I Started Learning JavaScript Again—a Beginner-Friendly Guide to the Basics2075
guides, fundamentals
A Simple Website2074
websites, history, layout, animations, images, tables, ajax, flash, deploying, simplicity
How JSDoc Saved My Dev Workflow (ato)2073
jsdoc, typescript, documentation
Default Parameters: Your Code Just Got Smarter2072
What’s the Difference Between Ordinary Functions and Arrow Functions in JavaScript? (jrs)2071
functions, comparisons
JavaScript Trademark Update (tin/den)2070
legal, oracle
What’s Coming to JavaScript (lca/den)2069
deno
Ecma International Approves ECMAScript 2025: What’s New? (rau)2068
ecmascript
Speculative Optimizations for WebAssembly Using Deopts and Inlining (lie)2067
v8, javascript-engines, webassembly, optimization, speculation
Tips for Making Regular Expressions Easier to Use in JavaScript (rau)2066
regex, tips-and-tricks, examples
Decoding the SVG “path” Element: Curve and Arc Commands (sma)2065
svg, css
Deep Dive Into JavaScript Engine Internals: V8, SpiderMonkey, and Chakra2064
deep-dives, javascript-engines, v8, spidermonkey, chakracore
JavaScript Broke the Web (and Called It Progress) (jon)2063
performance, user-experience, tooling, tech-stacks, history
9 New JavaScript Features in ES2025 (w3c/syn)2062
videos, ecmascript
When Can I Use Temporal?2061
apis, time
JSON Module Scripts Are Now Baseline Newly Available (tom)2060
json, browsers, support, web-platform
Slightly Enhanced Sticky Revealing Footer (cri)2059
navigation, css
Compiling JavaScript Ahead of Time (goo/web)2058
videos, javascript-engines, compiling
JavaScript String “slice()” Considered Harmful (att)2057
strings
CJS vs. AMD vs. UMD vs. ESM: Which JavaScript Module Format Should You Use—and Why It Even Matters2056
nodejs, modules, commonjs, esm, bundling, comparisons
Using “await” at the Top Level in ES Modules2055
esm, asynchrony
Happy Birthday, JavaScript (ato)2054
anniversaries
Quick Tip: Avoid Event Listeners on the “window” Object (nat)2053
jquery, events, accessibility, tips-and-tricks
Exploring JavaScript (rau)2052
books
How JavaScript Was Written Back in the Day (tre)2051
jquery, history, comparisons
Worker Threads in Node.js: A Complete Guide for Multithreading in JavaScript (nod)2050
guides, nodejs, worker-threads, multithreading
How to Use the Browser Console: An In-Depth Guide (mat/deb)2049
guides, how-tos, dev-tools, console, browsers
5 Best JavaScript Web Scraping Libraries in 2025 (api)2048
libraries, scraping, link-lists
Creating the “Moving Highlight” Navigation Bar With JavaScript and CSS (sma)2047
navigation, effects, css
How to “import()” a JavaScript String (zac)2046
how-tos, strings
“firstChild” Can Be White Space (chr/fro)2045
whitespace
How Imports Work in RSC (dan)2044
react, components, modules
I Copy These 10 Code Snippets Into Every Project2043
debouncing, json, objects, arrays
“document.currentScript” Is More Useful Than I Thought (mac)2042
Is It JavaScript? (jim)2041
browsers, servers, jsx, typescript, terminology
Write More Reliable JavaScript With Optional Chaining2040
reliability
A JavaScript Developer’s Guide to Go (psu)2039
guides, go, examples
Web Bluetooth API Usage—a Practical Guide2038
guides, apis
The 3 Ways JavaScript Frameworks Render the DOM (rya)2037
videos, frameworks, dom, rendering
Why Are 2025/05/28 and 2025-05-28 Different Days in JavaScript?2036
time
A Thought on JavaScript “Proof of Work” Anti-Scraper Systems (cks)2035
ai, scraping
Comparing Rust, JavaScript, and Go for Authoring WASM Components2034
webassembly, components, rust, go, comparisons
JavaScript’s Upcoming Temporal API and What Problems It Will Solve2033
time, apis
Multithreading in JavaScript With Web Workers (hon)2032
multithreading, web-workers, examples
A Brief History of JavaScript (den)2031
history, ecmascript, typescript, json, javascript-engines, runtimes, browsers
You Can Style Alt Text Like Any Other Text (geo/css)2030
alt-text, accessibility, images, css
Make Screen Readers Talk With the ARIA Notify API (ale)2029
accessibility, screen-readers, aria, notifications, apis
Authenticating JavaScript WebSockets2028
websockets, authentication
Introduction to JavaScript Frameworks (rya)2027
introductions, videos, frameworks, react, angular, vuejs, svelte, solidjs
JavaScript in the Morning, JavaScript in the Evening… (ray)2026
localization
The State of JavaScript Debugging in WebAssembly2025
webassembly, debugging
How JavaScript’s “at()” Method Makes Array Indexing Easier2024
arrays, indexing
No Server, No Database: Smarter Related Posts in Astro With transformers.js (ale)2023
astro, ai, hugging-face
Handling Routes in JavaScript Projects (sea)2022
routing, frameworks
Styling Console Text in Node.js (rau)2021
nodejs, console
I Think the Ergonomics of Generators Is Growing on Me (mac)2020
functions
JavaScript Compile Hints: What They Are and When to Use Them (tre)2019
compiling, v8, javascript-engines
Building the Bridge: Running JavaScript Modules From Dart2018
modules, esm, commonjs, dart, deno
Migrating a JavaScript Project From Prettier and ESLint to BiomeJS (app)2017
migrating, prettier, eslint, biome
The Power of the Spread and Rest Syntax in JavaScript2016
arrays
Event Handling in JAWS and NVDA (sib/tpg)2015
accessibility, screen-readers, jaws, nvda, events, comparisons
JavaScript, When Is This? (wil/pic)2014
Giving V8 a Heads-Up: Faster JavaScript Startup With Explicit Compile Hints2013
v8, javascript-engines, compiling
Converting Values to Strings in JavaScript (rau)2012
conversion
Giving Software Away for Free (sim)2011
foss, hosting, html
Why Care About the No-JS Experience? (cfe)2010
support
Making a Small JavaScript Blog Static Site Generator Even Smaller Using the General “async-tree” Library (jan)2009
static-site-generation, tooling
JavaScript Framework Reality Check: What’s Actually Working2008
frameworks, qwik, solidjs, sveltekit, fresh
Creating CSS Theme Variables From a JS File (mic)2007
css, theming, custom-properties, conversion
Why I’m Not Ready to Abandon JavaScript for “Faster” Languages2006
rust, go, refactoring, performance
Contextual Logging With “console.context()” (pat)2005
console, dev-tools, browsers
When to Use “map()” vs. “forEach()”2004
arrays, comparisons
Optimizing Node.js Performance: V8 Memory Management and GC Tuning (mco/pla)2003
nodejs, performance, optimization, v8, javascript-engines, memory, garbage-collection
Float16Array in JavaScript (tre)2002
arrays
Next Level CSS Styling for Cursors (val/css)2001
css, cursors
A Flowing WebGL Gradient, Deconstructed2000
webgl, gradients, math
Mastering Default Values in JavaScript With the Nullish Coalescing (“??”) Operator1999
operators
Exploring TypeScript: TS 5.8 Edition (rau)1998
books, typescript
Some Features That Every JavaScript Developer Should Know in 20251997
arrays, promises, prototypes, variables
Hiding Elements That Require JavaScript Without JavaScript (0xd)1996
css, html
Debugging JavaScript Memory Leaks (jar/bun)1995
memory, debugging, dev-tools, chrome, browsers, bun
A Decade of Impact: How Our npm Packages Hit 1 Billion Downloads and Shaped JavaScript1994
npm, dependencies, history
React 19’s New Hooks: With Practical Examples (let)1993
react, hooks, examples
On JavaScript’s Weirdness1992
Deno vs. Oracle Update 3: Fighting the JavaScript Trademark (tin/den)1991
deno, oracle, legal, history
Breaking Down Circular Dependencies in JavaScript1990
dependencies
Automated Visual Regression Testing With Playwright (css)1989
regressions, testing, automation, playwright
Could JavaScript Have Synchronous “await”? (rau)1988
asynchrony
JavaScript’s Missing Link: Wasp Offers Full Stack Solution1987
wasp, frameworks, history
Land Ahoy: Leaving the Sea of Nodes1986
v8, javascript-engines, compiling
War Story: The Hardest Bug I Ever Debugged (jak)1985
debugging, v8, chrome, browsers, bugs
UI Algorithms: A Tiny Undo Stack (jul)1984
algorithms, functionality, undo-redo
JavaScript Basics for a Senior Dev1983
fundamentals, concepts, examples
Previewing Content Changes in Your Work With “document.designMode” (sma)1982
browsers, dev-tools, content, design
Stop Chasing New JavaScript Frameworks: Build With Fundamentals Instead1981
fundamentals, frameworks, react, vuejs, angular, svelte, solidjs
How WebAssembly Components Can Replace JavaScript SDKs (sac)1980
webassembly, components
SSR Deep Dive for React Developers (ade)1979
deep-dives, server-side-rendering, react
Why the Latest JavaScript Frameworks Are a Waste of Time1978
frameworks, react, angular
“Intl.DurationFormat”: Format Time Durations With Locale Support (tre)1977
localization
A Perplexing JavaScript Parsing Puzzle (hil)1976
parsing, history
On JavaScript Closures (With Examples of Interview Questions) (mar)1975
guest-posts, closures, variables, examples, interviewing
Ten Years Ago Today I Coined the Shorthand “js;dr” for “JavaScript Required; Didn’t Read” (tan)1974
support, terminology
JavaScript Best Practice: Use “return await”1973
asynchrony, best-practices
The Professional Standing of Frontend Developers (mar)1972
guest-posts, career, learning, html, css, communication, collaboration, community, ai
JavaScript (htt)1971
web-almanac, studies, research, metrics, performance, bundling, transpiling, web-workers, libraries, web-components
7 Best Practices of File Upload With JavaScript and React1970
file-handling, react, best-practices
Image Comparison Slider in 6 Lines of JavaScript1969
sliders, images
JavaScript Fatigue Strikes Back (all)1968
react, frameworks, libraries, tooling
How to Reduce Web Application Bundle Size? (ant)1967
how-tos, web-apps, bundling, tooling
What Is TypeScript? An Overview for JavaScript Programmers (rau)1966
overviews, typescript, comparisons
Justified Text, JS “moveBefore” Method, Performance Optimization (zor/css)1965
videos, css, typography, performance, optimization
Turbocharging V8 With Mutable Heap Numbers1964
v8, javascript-engines, performance, randomness
Subverting Control With Weak References (jlo)1963
programming
Solved by Style Observer: “Element.matchContainer()” (bra)1962
css
Speeding Up the JavaScript Ecosystem—Rust and JavaScript Plugins (mar)1961
performance, rust, plugins
Clean Code in JavaScript: A Comprehensive Guide1960
guides, principles, conventions, variables, objects, functions, comments, testing, quality
Introduction to Frontend Development1959
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)1958
standards, ecmascript, regex, escaping, arrays, math
20 Years of AJAX: The Technology That Revolutionized Web Development1957
ajax, history, data-fetching
How to Move the First Element to the End in JavaScript1956
how-tos
Create Contextual Console Loggers (pat/dev)1955
console, debugging, dev-tools, browsers, edge, chrome
Style Observer: JS to Observe CSS Property Changes, for Reals (lea)1954
tooling, libraries, css
Testing 10 JavaScript Frameworks on Their HTML Defaults (j9t)1953
frameworks, html, conformance, comparisons, link-lists
Think JavaScript Is Slow? Here’s How JIT (Just in Time) Compilation Makes It 100× Faster Instantly1952
compiling, performance
The First Ever Website That Literally Glows in the Dark1951
videos, effects, apis, css
View Transitions Applied: More Performant “::view-transition-group(*)” Animations (bra)1950
css, view-transitions, performance
Move on to ESM-Only (ant)1949
esm, modules, nodejs, support, typescript
Using “at()” Method in JavaScript to Get the Last Item From an Array (ama)1948
arrays
Oracle Justified Its JavaScript Trademark With Node.js—Now It Wants That Ignored (tin/den)1947
oracle, nodejs, deno, legal
Fast and Smooth Third-Party Web Fonts (sco)1946
fonts, embed-code, performance, css
Introducing the JSR Open Governance Board (tin+/den)1945
introductions, jsr, typescript, community
There Are a Lot of Ways to Break Up Long Tasks in JavaScript (mac)1944
web-workers, performance
Vite With TypeScript (rwi)1943
vite, migrating, typescript, configuration
Is npm Enough? Why Startups Are Coming After This JavaScript Package Registry (kat/red)1942
npm, jsr, bun, pnpm, yarn
How to Set WebGL Shader Colors With CSS and JavaScript (nma)1941
how-tos, webgl, css
Page Bloat Update: How Does Ever-Increasing Page Size Affect Your Business and Your Users? (tam/spe)1940
performance, trends, metrics, images, desktop, mobile
What Text Area Popovers Taught Me About Browser APIs (bla)1939
html, forms, apis
How Long Is a Second in JavaScript? (iag)1938
The Modern Way to Write JavaScript Servers (mar)1937
nodejs, servers
You’re Overthinking Web Components (all)1936
web-components
JavaScript Temporal Is Coming (bsm/mdn)1935
apis, time
Exploring AI, Web Development, and Accessibility in Tech With Stefan Judis (ste+/wea)1934
videos, interviewing, ai, runtimes, accessibility, screen-readers, craft
My Website Has Been Gaslighting You (dav)1933
css, colors, effects
Simplify Lazy Loading With Intersection Observer’s “scrollMargin” (fro)1932
scrolling, apis, lazy-loading, performance
Generating Test Values Using JavaScript Generators1931
typescript, functions, testing
Google Begins Requiring JavaScript for Google Search (kyl)1930
google
SolidJS Creator on Confronting Web Framework Complexity1929
frameworks, angular, vuejs, multi-page-apps, single-page-apps, complexity, outlooks
JavaScript’s “Promise.race” and “Promise.all” Are Not “Fair” (chr)1928
promises
Making “this” Less Annoying (dav)1927
formatting, configuration
Using SVGs on Canvas With Compose Multiplatform (eev)1926
canvas, svg, images
What Is a Callback Function? (cfe)1925
callbacks, functions
JavaScript Hashing Speed Comparison: MD5 Versus SHA-256 (lem)1924
hashing, performance, comparisons, bun, nodejs
All JavaScript Keyboard Shortcut Libraries Are Broken1923
libraries, keyboard-shortcuts
Oracle Refuses to Yield JavaScript Trademark, Deno Land Says (inf)1922
oracle, deno, legal
Sharing a Variable Across HTML, CSS, and JavaScript (chr/fro)1921
variables, html, css
Exploring Modern JavaScript Compilers: Why Oxc Matters for the Developer Community (hac)1920
oxc, compiling, tooling
5 Technical JavaScript Trends You Need to Know About in 20251919
trends, architecture, serverless, webassembly, state-management, typescript, type-safety, micro-frontends
Progressive Enhancement Brings Everyone In (jay)1918
progressive-enhancement, history, advocacy, link-lists
Reckoning: Frontend’s Lost Decade (sli/per)1917
videos, performance, web-platform
2024 JavaScript Rising Stars1916
frameworks, libraries, react, vuejs, tooling, mobile, desktop, state-management, ai, css-in-js, testing, graphql, retrospectives
Top PHP Alternative for Web Development?1915
php, java, python, ruby, c-sharp, go, c++, rust
JavaScript Frameworks—Heading Into 2025 (rya/thi)1914
frameworks, performance, complexity, maintainability
Relatively New Things You Should Know About HTML Heading Into 2025 (chr/fro)1913
html, forms, toggles, pop-overs, import-maps, css, transitions
The Difference Between HTML Attributes and Properties (pau/clo)1912
html, attributes, terminology
What’s Actually Happening With JS Frameworks1911
videos, frameworks, trends
Refactoring a Web Performance Snippet for Security and Best Practice (the)1910
performance, metrics, refactoring
View Transitions Snippets: Getting All Animations Linked to a View Transition (bra)1909
css, view-transitions, apis
Breaking Up With Long Tasks or: How I Learned to Group Loops and Wield the Yield (rvi/per)1908
performance, loops
A Gentle Introduction to Using a Vector Database1907
introductions, databases, vector-databases, ai, openai
Shallow Clones Versus Structured Clones (phi)1906
After Rome Failure, VoidZero Is the Newest Attempt to Create Unified JavaScript Toolchain (inf)1905
voidzero, tooling
JavaScript Benchmarking Is a Mess1904
performance
Broadcast Channel API (5t3)1903
apis
Important Topics for Frontend Developers to Master in 20251902
learning, typescript, css, frameworks, git, apis, testing, performance, security, ci-cd, websockets
“AsyncLocalStorage”: Simplify Context Management in Node.js (tre)1901
nodejs, asynchrony
JS Import Maps (5t3)1900
dependencies, import-maps
How to Create Multi-Step Forms With Vanilla JavaScript and CSS (css)1899
how-tos, forms, css
State of JavaScript 2024 [Results] (sac/dev)1898
surveys, metrics
WebAssembly JavaScript Interface (w3c)1897
standards, webassembly, apis
11 Essential JavaScript Hooking Techniques for Reverse Engineering in 2024 (xiu)1896
debugging, techniques
Your JavaScript Bundle Is Too Fat1895
bundling, performance, dependencies, code-splitting, lazy-loading, tree-shaking, minification, optimization
5 Technical Trends to Help Web Developers Stand Out in 20251894
trends, career, security, ai, low-and-no-code
Native HTML Light and Dark Color Scheme Switching (pep/mat)1893
dark-mode, html, css, functionality
Understanding the Main Thread in the Browser (per)1892
browsers, dom
Publishing a Simple Client-Side JavaScript Package to npm With GitHub Actions (sim)1891
dependencies, npm, github-actions
Just Say “No” to JavaScript (nic/inf)1890
typescript, programming
Creating an Effective Multistep Form for Better User Experience (sma)1889
forms, html, user-experience
Let’s Learn Generators in JavaScript1888
functions
Observation: CSS Math Eval (kiz)1887
css, math
The 5 Most Transformative JavaScript Features From ES15 (tar)1886
ecmascript
Contributing to JavaScript and TypeScript (rob)1885
videos, typescript, foss, standards
Building Better CLI Apps (mol)1884
videos, typescript, command-line, tooling
Deno vs. Oracle: Canceling the JavaScript Trademark (tin/den)1883
deno, oracle, legal
JavaScript Events Made Easy: A Comprehensive Guide for Beginners1882
guides, events
Mastering JavaScript Event Delegation1881
events
Exploring Alternative Interactions in JavaScript (dev)1880
videos, ai, interaction-design
Mastering Accessible Modals With ARIA and Keyboard Navigation (a11)1879
accessibility, keyboard-navigation, aria, modals
State of JavaScript 2024 (sac/dev)1878
surveys
Importing a Frontend JavaScript Library Without a Build System (b0r)1877
libraries, commonjs, esm, nodejs, html
The Art of Clean Code: A Practical Guide to Writing Maintainable JavaScript1876
guides, principles, maintainability
Exploring JavaScript Symbols (tre)1875
Self-Contained Executable Programs With Deno Compile (tin/den)1874
deno, typescript, compiling
Understanding Bitwise Shifts in JavaScript: “<<” and “>>” (tre)1873
operators
JavaScript Import Attributes (ES2025) (tre)1872
security
Why Does JavaScript’s “parseInt(0.0000005)” Print “5”?1871
How a BBC Navigation Bar Component Broke Depending on Which External Monitor It Was On (jos)1870
debugging, case-studies
The Path to Learn Web Development (fla)1869
learning, http, html, css, tooling, git, typescript, databases, frameworks
Mapping Over Promises in JavaScript (pmb)1868
promises
Should Web Designers Learn JavaScript or CSS? (ope)1867
design, career, css
Celebrating Innovation and Impact: JavaScriptLandia Community Awards (ope)1866
community
Maybe It Isn’t JavaScript (gee)1865
videos, seo, google
How Bun Supports V8 APIs Without Using V8 II (bun)1864
bun, v8, apis
How Do HTML Event Handlers Work? (tbr)1863
html, events
How to Test JavaScript for Accessibility Compliance (flo/a11)1862
how-tos, accessibility, compliance, wcag, testing
JavaScript’s “&&=” Operator: Understanding Logical “AND” Assignment (tre)1861
operators
JavaScript’s “??=” Operator: Default Values Made Simple (tre)1860
operators
Introducing the vlt Package Manager and Serverless Registry (dar+/vlt)1859
introductions, dependencies, serverless, tooling
JavaScript Do’s and Don’ts (mua)1858
accessibility