Skip to content

shenxianpeng/gitstats

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

481 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Project Logo

PyPI - Version PyPI - Python Version PyPI Downloads Test Documentation GitHub contributors

$ gitstats

πŸ“Š Generate insightful visual reports from Git.

πŸ“˜ Documentation: gitstats.readthedocs.io

Example

gitstats . report generates this gitstats report.

gitstats terminal demo

Installation

pip install gitstats

gitstats is compatible with Python 3.9 and newer.

Usage

gitstats <gitpath> <outputpath>

Run gitstats --help for more options, or check the documentation.

What's New in v2.0.0

v2.0.0 is a major release focused on modernizing the report UI and removing the Gnuplot dependency.

Terminal-inspired UI redesign
The entire report interface has been redesigned with a terminal / OpenCode-inspired aesthetic: zero border-radius (sharp, angular corners), monospace fonts in headings and navigation, border-heavy layout, and a GitHub-style green heatmap. Both light and dark modes are supported with a one-click toggle β€” no flash of unstyled content when switching pages.
Chart.js replaces Gnuplot
All charts are now rendered interactively in the browser using Chart.js. Gnuplot is no longer required. Reports are fully self-contained HTML files.

Features

Here is a list of some features of gitstats:

  • General: total files, lines, commits, authors, age.
  • Activity: commits by hour of day, day of week, hour of week, month of year, year and month, and year.
  • Authors: list of authors (name, commits (%), first commit date, last commit date, age), author of month, author of year.
  • Files: file count by date, extensions.
  • Lines: line of code by date.
  • Tags: tags by date and author.
  • Customizable: config values through gitstats.conf.
  • Cross-platform: works on Linux, Windows, and macOS.

AI-Powered Features πŸ€–

GitStats supports AI-powered insights to enhance your repository analysis with natural language summaries and actionable recommendations.

Quick Start:

# Install with AI support
pip install gitstats[ai]

# Enable AI with OpenAI
export OPENAI_API_KEY=your-api-key
gitstats --ai --ai-provider openai <gitpath> <outputpath>

For detailed setup instructions, configuration options, and examples, see the AI Integration Documentation.

Contributing

As an open source project, gitstats welcomes contributions of all forms.


The gitstats project was originally created by Heikki Hokkainen and is currently maintained by Xianpeng Shen.

About

πŸ“Š Visualize Your Git Repositories

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors