Skip to main content

Plot stats on Git repositories with interactive Plotly charts

Project description

Better Git of Theseus

pypi badge PyPI - Downloads PyPI - Python Version GitHub License Ask DeepWiki LLMAPIS

中文版

Better Git of Theseus is a modern refactor of the original git-of-theseus. It provides a fully interactive Web Dashboard powered by Streamlit and Plotly, making it easier than ever to visualize how your code evolves over time.

Git of Theseus Cohorts Git of Theseus Authors

Key Enhancements

  • 🚀 One-Click Visualization: New better-git-of-theseus command automatically scans your project and launches a Web UI.
  • 📊 Interactive Charts: Replaced static Matplotlib plots with Plotly. Support for zooming, panning, and detailed data hovers.
  • 🧠 In-Memory Processing: Data flows directly in memory. No more mandatory intermediate .json files cluttering your repo.
  • Smart Caching: Leverages Streamlit's caching to make repeat analysis of large repos nearly instantaneous.
  • 🎨 Modern UI: Adjust parameters (Cohort format, ignore rules, normalization, etc.) in real-time via the sidebar.

Installation

Install via pip:

pip install better-git-of-theseus

Quick Start

Run the following in any Git repository:

better-git-of-theseus

It will automatically open your browser to the interactive dashboard.

Feature Highlights

Cohort Formatting

Customize how commits are grouped by year, month, or week (based on Python strftime):

  • %Y: Group by Year (Default)
  • %Y-%m: Group by Month
  • %Y-W%W: Group by Week

Real-time Parameters

Adjust parameters like "Max Series", "Normalization", and "Exponential Fit" directly in the Web UI without re-running any commands.

FAQ

  • Duplicate Authors? Configure a .mailmap file in your repo root to merge identities.
  • Performance? First-time analysis of very large repos (like the Linux Kernel) may take time, but subsequent views are extremely fast due to caching.

Credits

Special thanks to Erik Bernhardsson for creating the original git-of-theseus.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

better_git_of_theseus-0.5.2.tar.gz (20.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

better_git_of_theseus-0.5.2-py3-none-any.whl (25.8 kB view details)

Uploaded Python 3

File details

Details for the file better_git_of_theseus-0.5.2.tar.gz.

File metadata

  • Download URL: better_git_of_theseus-0.5.2.tar.gz
  • Upload date:
  • Size: 20.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for better_git_of_theseus-0.5.2.tar.gz
Algorithm Hash digest
SHA256 57b0c08ee4be75bb3bd4236119acc97fb5ad75b7746e4c78430362bcacb20a72
MD5 b0c174b72452f373dbcc9930216441c0
BLAKE2b-256 15f81f0f6b79fe611ac118db25f605445c3e9c843824e079e0ff6f058b1fedb9

See more details on using hashes here.

File details

Details for the file better_git_of_theseus-0.5.2-py3-none-any.whl.

File metadata

File hashes

Hashes for better_git_of_theseus-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ca8612b7fbcbe7a42fbec2144102586b88ef100f74a42bb10a3785980bdeaa6c
MD5 7324887c37a704427871f42537619eff
BLAKE2b-256 bfed7bb6305710c27e316c74bf8d4ae29dee1efea187fb766ee874eda519e1bc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page