soot-oss/soot

Soot - A Java optimization framework

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

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 15 minutes ago
Added to GitGenius on September 22nd, 2026
Created on June 20th, 2012
Open Issues & Pull Requests: 346 (+0)
GitHub issues: Enabled
Number of forks: 726
Total Stargazers: 3,100 (+0)
Total Subscribers: 98 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 68.0 days
Mean response time: 496.6 days
90th percentile: 1345.0 days
Tracked items: 108

How this project is maintained

95% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 95% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 20
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,248 days
Stale 30+ days: 18
Stale 90+ days: 17

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 (9)
  • good first issue (4)
  • enhancement (3)
  • JDK11 (2)
  • JastAdd (2)
  • question (1)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Soot is a static analysis and optimization framework for Java that operates on bytecode and intermediate representations. The framework addresses the challenge of analyzing and transforming Java programs at scale by providing a sophisticated intermediate language called Jimple, which converts Java bytecode into a three-address code format that is easier to analyze and manipulate. This intermediate representation enables developers to build custom analyses and optimizations without working directly with the complexity of raw bytecode, while maintaining the ability to transform code back to executable form.

Soot is well-suited for researchers and tool developers who need to perform sophisticated program analysis on Java applications, including data flow analysis, control flow analysis, and code transformation. It provides the foundational infrastructure for building static analysis tools, optimization passes, and program verification systems. The framework is particularly valuable when you need to analyze large codebases or implement analyses that would be impractical to build directly against bytecode. Teams working on security analysis, performance optimization, or program understanding should consider Soot as a foundation rather than a complete end-to-end solution, since it requires building custom analysis logic on top of its core infrastructure.

The project maintains active development with regular commits addressing bug fixes and feature enhancements. The codebase shows consistent attention to code quality through ongoing refactoring and modernization efforts. The maintainers engage responsively with issue reports and pull requests, indicating a commitment to supporting users of the framework. Development activity demonstrates a focus on both preserving backward compatibility while gradually improving the internal architecture and documentation.