Jul 27, 2026
Policy

Microsoft brings WinRT Node.js preview to JavaScript developers

Microsoft’s public preview gives JavaScript and TypeScript apps easier access to Windows APIs, including local AI features.

Dominic Okoye

By Dominic Okoye · Staff Writer

· 3 min read

Microsoft brings WinRT Node.js preview to JavaScript developers
Photo: The Register

Microsoft has released a WinRT Node.js preview that gives JavaScript and TypeScript developers a more direct way to call Windows Runtime APIs from Node.js and Electron apps. The move matters for desktop software teams using web stacks because it reduces the amount of native bridge work needed to reach Windows features, though Microsoft has not said when the preview will become generally available.

The public preview is built around what Microsoft calls dynamic projections, a set of language bindings for Windows Runtime, or WinRT. JavaScript and TypeScript have long been used outside the browser, especially in Electron-based desktop apps, but connecting those apps to operating system features on Windows has typically required more native plumbing.

What is the WinRT Node.js preview?

The WinRT Node.js preview is a way for Node.js and Electron applications to generate JavaScript wrappers and TypeScript declarations for selected Windows Runtime APIs. It does not open a new class of private Windows capabilities; it is meant to make existing WinRT APIs easier to use from JavaScript and TypeScript projects.

Microsoft says developers previously had to rely on native add-ons, C++ or C# bridge code, manual translations and API-specific wrappers to add many Windows features to JavaScript or TypeScript apps. That approach favored teams that already had native Windows expertise and build systems in place.

Under the new setup, Microsoft points developers to a Node runtime package called dynwinrt, which generates the JavaScript wrappers and TypeScript declarations an app needs. A separate package, winappCli, provides command-line setup, configuration and samples. The code generation happens at build time for each API call the app uses.

WinRT already has projections for other languages, including C++, C#, Rust and Python. Microsoft’s JavaScript and TypeScript work brings Node.js into that group, although the mechanics vary by language. For C++ and Rust, projections are generated at compile time; for JavaScript, Microsoft is using the winappCli generation flow.

Which Windows APIs can JavaScript apps use?

The preview relies on Windows Metadata, or winmd, the metadata system Microsoft introduced with Windows 8. Winmd describes available Windows APIs and their capabilities, allowing the generation tools to update wrappers and declarations when API metadata changes rather than requiring developers to rewrite that glue code by hand.

Microsoft says JavaScript and TypeScript apps can reach data-oriented Windows Runtime APIs covering areas such as on-device AI, storage, notifications, networking and other system capabilities. Examples include showing Windows notifications, letting a user pick files or folders, and calling system or device APIs tied to networking, sensors, globalization and security.

UI capabilities are the main omission from the set described by Microsoft. That limits the preview to operating system integration rather than replacing the UI layer used by Electron and other desktop JavaScript frameworks.

The AI angle is likely the most commercially relevant part of the release for Microsoft. The company says developers can use Windows APIs from JavaScript and TypeScript apps to generate, summarize and rewrite text, convert text into tables, upscale images, describe images, detect objects in images and remove objects when requested. Microsoft has published Electron examples for those tasks.

The preview also fits a broader shift in desktop app development. Many JavaScript desktop apps are built to run across operating systems, so Windows-specific bindings are less a full-platform bet than a way to make those apps behave more like native Windows software when they run on Microsoft’s OS. Apple and Linux also provide OS bindings for different languages, putting Microsoft’s move in the category of developer tooling catch-up rather than a new distribution strategy.

This story draws on original reporting from The Register.

More from Policy

All Policy →