TypeScript and JavaScript dominate on GitHub in 2025
#759 — October 31, 2025
JavaScript Weekly
Directives and the Platform Boundary — First there was the “use strict” directive to opt in to strict mode in JavaScript, but now you’ll encounter use client, use server, React’s new use no memo, and more, and they’re not standard JS features at all. Tanner thinks this proliferation of directives comes at a cost, with an increased risk of framework and tooling lock-in.
Tanner Linsley (TanStack)
Add Excel-like Spreadsheet Functionality to Your JavaScript Apps — SpreadJS is the industry-leading JavaScript spreadsheet for adding advanced spreadsheet features to your enterprise apps. Build finance, analysis, budget, and other apps. Excel I/O, 500+ calc functions, tables, charts, and more. View demos now.
SpreadJS from MESCIUS inc sponsor
🏆 TypeScript Leaps to #1 Most Used Language on GitHub — As part of this week’s GitHub Universe event, GitHub released its annual report of activity on the platform. A year ago, Python jumped to #1, pushing JavaScript to #3, but this year TypeScript takes the crown and GitHub suggests LLM-oriented development played a role. Taking JavaScript and TypeScript together, however, places our ecosystem far out in front.
GitHub
IN BRIEF:
Evan You has announced that VoidZero Inc., his company oriented around the Vite family of tools, has raised $12.5m in Series A funding.
Lizz Parody shares a quick update on the state of the Express.js project and its recent steps forward.
You’ve only got 24 hours left to take the State of JS 2025 survey.
Vercel now supports the Bun runtime.
RELEASES:
Node.js v24.11.0 (LTS) – Node v24 transitions to the active LTS release and will be supported until April 2028. v22.21.1 (LTS) and v25.1 (Current) were also released this week.
Electron 39 – The cross platform desktop app framework upgrades to Chromium 142, V8 14.2, and Node 22.20.
Ember 6.8 – The long standing framework gains a new renderComponent API and Embroider and Vite by default for much faster builds.
Rspack 1.6, pnpm 10.20, Vite 7.2.0 Beta 1 (changelog), Three.js r181
📖 Articles and Videos
I Built the Same App 10 Times: Evaluating Frameworks for Mobile Performance — When targeting mobile devices, small bundle sizes and quick rendering times are key, so Loren wanted to see how different approaches compared. Marko, SolidStart, SvelteKit, Qwik, Nuxt, Next.js and more are all under the spotlight here.
Loren Stewart
▶ The Origin Story of JavaScript — Annie takes us all the way back to the start of the Web in the early 90s and walks us through the conditions and advancements that enabled JavaScript to take off, all the way through to our modern framework-oriented, tool-rich ecosystem. (25 minutes.)
Annie Sexton
Still Writing Tests Manually? — See why modern engineering teams like Dropbox, Notion and Wiz rely on Meticulous to run E2E UI tests.
Meticulous AI sponsor
Why NaN !== NaN in JavaScript (and the IEEE 754 Story Behind It) — NaN is a number, but it’s also Not a Number! This leads to some well-known quirky behavior, but JavaScript isn’t to blame.
Piotr Zarycki
What I Learned Porting Mastro from Deno to Node — Mastro is a site generator originally for Deno only. But if Deno is compatible with Node, is it easy to make Deno-facing code run on Node too? Not exactly, but it’s possible.
Mauro Bieg
📄 Migrating from Node.js v22 to v24 – Now that v24 is the active LTS release, it’s time to upgrade when possible. Augustin Mauroy
📄 Did You Know That There’s an HTML Tables API? Christian Heilmann
📄 Writing Rust-Like Code in TypeScript Andrew Israel
🛠 Code & Tools
Navcat: 3D Floor-Based Pathfinding Library — It’s not often we see a library with such a funny demo on the homepage (it involves cats and laser pointers!) Navcat is a pathfinding library, aimed at games and simulations, for enabling objects to route through 3D space. There are numerous other interesting demos too. GitHub repo.
Isaac Mason
Introducing ArkRegex: It’s RegExp() with Types — The idea is simple: swap out the RegExp constructor or regular expression literals for this typed wrapper and get types for patterns and capture groups. Part of the ArkType project. – GitHub repo.
ArkType Project
Measure and Improve the Quality of Code Generated by LLMs — Open source tool to fine tune prompts, compare model code quality, & monitor generated quality over time.
Angular sponsor
Slim Select 3.0: An Advanced Select Dropdown Control — A feature-rich select dropdown component with no dependencies. v3.0 adds an official React component option, fixes bugs, and improves accessibility.
Brian Voelker
🤫 spoilerjs: Framework-Agnostic ‘Spoiler Effects’ — If you’ve got some text (or maybe sensitive data like a token) you want to hide on a page until someone clicks on it, this Telegram-inspired web component is for you.
shajid hasan
Gasket: CLI Tool to Discover ‘Bridges’ Between JavaScript and Native Code — Dynamic analysis tool that inspects the in-memory layout of JavaScript function objects to identify those that cross the language boundary. This is quite niche, but built by the authors of a paper about identifying such bridges for security purposes.
Alexopoulos and Sotiropoulos
> vue-command: A Terminal Emulator Component for Vue.js
Julian Claus
📊 Recharts 3.3 – A chart library built on top of D3. The homepage has examples and demos. v3.3 gives charts the direct ability to handle responsive sizing.
🦴 Cornerstone.js 4.8 – Libraries for building medical imaging apps.
🔎 fuzzy-search 2.0 – Fast fuzzy search library for the frontend.
Immer 10.2 – Popular library for working with immutable state.
Dependency Cruiser 17.2 – Tool to visualize dependencies.
Ink 6.4 – Use React to build CLI apps.
📰 Classifieds
🔷 Build a full-featured BPMN editor in record time — use our ready-made JointJS template and focus on innovation, not implementation.
⚡ UI changes? Catch them before prod. Vizzly = local TDD + review rules for teams, not just screenshots.
📢 Elsewhere in the ecosystem
A roundup of some other interesting stories in the broader landscape:
vite-plugin-use-golang is a curious new Vite plugin that lets you add a “use golang” directive to the top of a ‘JavaScript’ file but then actually write Go code instead (which is then compiled to WebAssembly).
VoidZero’s Alexander Lichter rounds up everything that happened at ViteConf 2025 and shares updates on Vite+, Oxlint, Vite DevTools, Nitro v3, and more.
Mirat Can Bayrak spied a site on Flippa that makes $200 a month from just 161 lines of JavaScript.
Node-RED is a popular ‘low code’ JavaScript-powered programming environment and Node-RED Con 2025 is a free, online event taking place next week (November 4) highlighting how it’s used in engineering, smart homes, and even to play Factorio.