microsoft/windows-rs

Rust for Windows

View on GitHub ↗Jump to charts ↓Open shareable report →

microsoft/windows-rs has 12k+ stars and 650+ forks on GitHub, is written in Rust, and was last pushed on Oct 16, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Added to GitGenius on September 4th, 2026
Created on September 12th, 2019
Open Issues & Pull Requests: 46 (-1)
GitHub issues: Enabled
Number of forks: 681
Total Stargazers: 12,828 (+2)
Total Subscribers: 118 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 7.8 hours
Mean response time: 12.4 days
90th percentile: 9.3 days
Tracked items: 638

Maintainer activity

2 people did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 11, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits.

How this project is maintained

About 3% of issues opened in the past year have never received a reply. 65% of open issues come from outside the core team, a mix of external reports and the maintainers' own roadmap. Work labelled "bug" is answered fastest, typically in about 3 hours, while "newsletter" waits about 11 days. 90% of issues opened in the past year have since been closed. Three people close 87% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 46
New in 7 days: 21
Closed in 7 days: 19
Avg open age: 198 days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 21
Closed in 7 days: 18
Comments in 7 days: 19
Events in 7 days: 57

Top labels

  • question (288)
  • enhancement (156)
  • bug (70)
  • windows-reactor (36)
  • newsletter (13)
  • windows-clang (13)
  • windows-bindgen (12)
  • windows-rdl (6)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

windows-rs is a collection of Rust crates that provide bindings and safe wrappers for Windows APIs, from COM and WinRT types to system services, UI frameworks, and raw Win32 functions.

The project solves the problem of safely and ergonomically calling Windows APIs from Rust code. Rather than exposing raw, unsafe bindings directly, it provides layered abstractions: focused crates for specific domains like registry access, window creation, and async operations; core interop crates for COM, WinRT types, and error handling; and code generation tools for custom bindings. This modular approach lets developers choose the right level of abstraction for their use case, from high-level declarative UI libraries down to minimal generated bindings for niche APIs.

Reusable libraries should prefer the focused crates over the broad umbrella crates windows and windows-sys, which add dependency weight and version churn when multiple libraries depend on them. Binary applications can use the umbrella crates with feature flags for broad API coverage. The project explicitly recommends using windows-bindgen to generate minimal project-specific bindings for APIs not covered by existing focused crates, avoiding the dependency bloat of pulling in large umbrella crates for a handful of functions. Developers building UI applications will find declarative UI support through windows-reactor backed by WinUI 3, along with lower-level graphics and composition APIs. Those working with system-level concerns can use crates for registry access, Windows services, version detection, and thread pool management.

The project maintains a large surface area of Windows API coverage through code generation from official metadata rather than hand-written bindings. Development activity shows consistent attention to the focused crate ecosystem, with individual crates covering specific problem domains rather than monolithic catch-all bindings. The project provides detailed crate-specific documentation and usage guidance rather than treating all APIs uniformly.