cordx56/rustowl

Visualize Ownership and Lifetimes in Rust

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 46 minutes ago
Added to GitGenius on September 13th, 2026
Created on October 16th, 2024
Open Issues & Pull Requests: 11 (+0)
GitHub issues: Enabled
Number of forks: 113
Total Stargazers: 5,204 (+0)
Total Subscribers: 13 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 3.4 hours
Mean response time: 5.1 days
90th percentile: 5.3 days
Tracked items: 99

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 6% of issues opened in the past year have been closed. Three people close 78% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 8
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 459 days
Stale 30+ days: 7
Stale 90+ days: 7

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (38)
  • enhancement (23)
  • dont-close (15)
  • no-issue-activity (11)
  • future work (8)
  • tier-1 (7)
  • documentation (4)
  • help wanted (4)

Most active issues this week

Detailed Description

RustOwl is a visualization tool that displays ownership movement and variable lifetimes in Rust code through editor integrations.

The tool addresses the challenge of understanding Rust's ownership system and lifetime semantics by analyzing source code and rendering visual indicators when developers hover over variables or function calls. It uses color-coded underlines to represent different states: green for variable lifetimes (with wavy lines indicating uncertain initialization), blue for immutable borrows, purple for mutable borrows, orange for moved values, and red for lifetime errors. This approach makes the abstract rules governing Rust's borrow checker concrete and visible within the editor.

RustOwl suits developers learning Rust's ownership model or debugging complex lifetime issues in existing code. The tool integrates with multiple editors through an LSP server with extended protocol support, offering native extensions for VS Code, Neovim, and Emacs, with additional support for RustRover, IntelliJ IDEs, and Sublime Text. This broad editor coverage means developers can use it within their existing workflow without switching tools. The visualization focuses specifically on ownership and lifetime semantics rather than general code analysis, making it a specialized complement to standard Rust tooling.

The project maintains active development across multiple platforms and distribution channels. The tool is available through standard package managers and editor marketplaces, indicating sustained maintenance and community engagement. Development extends beyond the core analyzer to include editor-specific implementations, suggesting ongoing effort to improve the user experience across different development environments.