google/google-java-format

Reformats Java source code to comply with Google Java Style.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 43 minutes ago
Added to GitGenius on September 10th, 2026
Created on May 11th, 2015
Open Issues & Pull Requests: 179 (+0)
GitHub issues: Enabled
Number of forks: 936
Total Stargazers: 6,190 (+0)
Total Subscribers: 131 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 2.0 days
Mean response time: 89.5 days
90th percentile: 146.2 days
Tracked items: 98

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 96% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 8% of issues opened in the past year have been closed. Three people close 82% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 52
New in 7 days: 1
Closed in 7 days: 0
Avg open age: 824 days
Stale 30+ days: 47
Stale 90+ days: 41

Recent activity

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

Top labels

  • IntelliJ (12)
  • Eclipse (7)
  • Java 25 (2)
  • Java 23 (1)
  • bug (1)
  • non-whitespace (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

google-java-format is a code formatter that reformats Java source code to comply with Google Java Style.

The tool solves the problem of inconsistent code formatting across Java projects by applying a single, unified formatting standard. It works by parsing Java source code using the jdk.compiler module and rewriting it according to Google's style rules. The formatter operates on whole files, specific line ranges, or particular offsets, and can output to standard output or modify files in place. It includes specialized modes such as AOSP formatting with different indentation, import fixing, and javadoc formatting control.

Developers should adopt this tool if their team or organization has committed to Google Java Style as a standard. It suits projects that prioritize consistency and want to eliminate formatting debates through automation. The tool is available as a command-line utility, an IntelliJ plugin for JetBrains IDEs, and an Eclipse plugin. A key characteristic of the tool is its deliberate lack of configurability—the formatting algorithm cannot be customized, which is an intentional design decision to enforce a single unified format rather than allowing per-project variations. The README explicitly notes this is not a limitation but a feature. The tool requires a JDK rather than a JRE for operation, with a minimum Java version of 21, though GraalVM native binaries are available as an alternative. It supports patch-based formatting through a provided Python script for reformatting only changed lines.

The project maintains active engagement with its user base through plugin support across multiple IDEs and provides detailed command-line documentation. Development includes ongoing refinement of formatting rules and IDE integration, with attention to edge cases like long string reflowing and javadoc formatting. The tool's architecture relies on Java's compiler module, which ties its capabilities and requirements directly to the Java platform's evolution.