Skip to main content

A tool to track Git contributions, generate detailed reports, and motivate contributors.

Project description

Kreeck - Git Contribution Analyser

Kreeck is a powerful tool designed to help developers and project managers track Git contributions, generate detailed reports, and motivate contributors through gamification. Whether you are managing a large open-source project or a small team, Kreeck provides insightful analytics to enhance collaboration and productivity.

Features

1. Commit Frequency Analysis

  • Visualize Commit Activity: Generate charts that display commit frequency over time, helping you identify peak activity periods.
  • Highlight Active Contributors: See which contributors are most active and during what times.

2. File Type Contributions

  • Analyze Contributions by File Type: Break down contributions by file types such as Python, JavaScript, HTML, etc.
  • Identify Specialized Contributions: Understand which contributors are working on specific parts of the project.

3. Commit Messages Analysis

  • Pattern and Keyword Analysis: Analyze commit messages for common patterns and keywords.
  • Sentiment Analysis: Gauge the sentiment of commit messages to understand the team’s mood and focus.

4. Top Commits

  • Identify Significant Commits: Highlight the most significant commits based on the number of lines changed or important keywords.
  • Detailed Commit Breakdown: Provide a detailed view of the top commits and their impact on the project.

5. Gamification

  • Motivate Contributors: Introduce gamification elements like badges and leaderboards to motivate contributors.
  • Recognize Achievements: Award badges (e.g., Gold, Silver, Bronze) based on the number of lines contributed.

6. Integration with CI/CD

  • Automate Report Generation: Integrate with CI/CD pipelines to run analysis automatically after each build.
  • Real-time Insights: Provide real-time insights into contributions and code quality.

7. Historical Comparison

  • Track Progress Over Time: Compare current contribution data with historical data to show trends and progress.
  • Identify Long-term Contributors: Highlight long-term contributors and changes in contribution patterns.

Installation

To install Kreeck, use pip:

pip install kreeck


# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]


## [0.1.0.5] - 2024-06-12
### Added
- GitHub repository visibility check to handle private and public repositories.
- Instructions for users to run analysis locally for private repositories.
- Progress bar for Git operations using `tqdm`.
- Commit frequency chart with date format `YY-MM-DD`.

### Changed
- Improved handling of GitHub API requests with authentication using personal access token.
- Updated email report functionality to handle both local and remote repositories.

### Fixed
- Fixed issue with GitHub API returning 404 for non-existent or inaccessible repositories.


## [0.1.0.4] - 2024-06-12
### Added
- New `info` command to display information about available commands and usage.
- Enhanced CLI with user-friendly command descriptions and examples.

### Changed
- Improved error handling for unsupported commands.
- Updated CLI help messages for better navigation.

### Fixed
- Correctly handle `Commit` objects and dictionary structures for local and remote repositories.
- Bug fix for handling empty repositories.

## [0.1.0.3] - 2024-06-12
### Added
- Support for analyzing GitHub URLs.
- Progress bars for all operations using `tqdm`.
- Enhanced email reporting with environment variable configuration.
- Function to handle both local repositories and GitHub URLs.

### Changed
- Improved date formatting for commit frequency charts to `YY-MM-DD`.
- Output contributions directly to the terminal for remote repositories.

### Fixed
- Bug fix for handling empty repositories.
- Correctly handle `Commit` objects and dictionary structures for local and remote repositories.

## [0.1.0.2] - 2024-06-11
### Added
- Initial implementation of Git contribution analysis.
- Markdown report generation for contributions.
- Commit frequency chart creation.
- Analysis of contributions by file type.
- Commit message analysis.
- Identification of top commits.
- Gamification elements such as badges.
- Historical comparison placeholder.

## [0.1.0.1] - 2024-06-11
### Added
- Initial setup and project scaffolding.
- Basic CLI structure and command handling.
- Environment variable support with `.env` configuration.
- Basic email sending functionality for reports.

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

kreeck-0.1.0.5.tar.gz (9.9 kB view details)

Uploaded Source

Built Distribution

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

kreeck-0.1.0.5-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file kreeck-0.1.0.5.tar.gz.

File metadata

  • Download URL: kreeck-0.1.0.5.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.4

File hashes

Hashes for kreeck-0.1.0.5.tar.gz
Algorithm Hash digest
SHA256 ebce7402d948f8df7d424401a557454a7e97f1ce892d7ea113730a6037f48c3e
MD5 c93ec7ede15b6da83c929f65e1a2dad4
BLAKE2b-256 d8e1f47dae269548a95b6b45aa5208e480f86901ab2059217b2235223fbf6cf9

See more details on using hashes here.

File details

Details for the file kreeck-0.1.0.5-py3-none-any.whl.

File metadata

  • Download URL: kreeck-0.1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.4

File hashes

Hashes for kreeck-0.1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 43820e3439e9e40eb277f5b33a7ed061c436ac2b9632dab2a32810db34ee7aee
MD5 be851c3748d1998e73412b4a52f5d44e
BLAKE2b-256 06d1732b9b19184c3804d8fbee4f6871cc45132da23f2d2b8e27d01e78411288

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