Skip to main content

A CLI tool to analyze GitHub profiles and generate Insight reports

Project description

GitInsight v1.0.0

A high-performance CLI tool for analyzing GitHub user profiles and generating meaningful insight reports.

Version

License Language

Engineered with asynchronous Python to ensure rapid data retrieval without rate-limiting bottlenecks, GitInsight provides developers and recruiters with an immediate, deep-dive view into any GitHub footprint directly from the terminal.


Contents


Features

  • Asynchronous Data Retrieval: Utilizes aiohttp and asyncio to concurrently fetch user profiles, repositories, and recent events, significantly reducing wait times.
  • Terminal User Interface (TUI): Powered by rich, featuring live loading indicators, color-coded data tables, and formatted statistical outputs for maximum readability.
  • Automated PDF Generation: Instantly compile a user's GitHub statistics and repository data into a clean, exportable PDF report.
  • Secure Credential Management: Securely caches your GitHub Personal Access Token locally with restricted permissions, requiring authentication only on the initial run.

Installation

GitInsight is available on the Python Package Index (PyPI). It requires Python 3.8 or higher.

Install the package globally using pip:

pip install gitinsight-py

Configuration

To bypass standard GitHub API rate limits, GitInsight requires a GitHub Personal Access Token.

Getting Your Token

  1. Go to GitHub Settings → Developer Settings → Personal Access Tokens → Tokens (Classic)
  2. Click "Generate new token (classic)"
  3. Give it a name: gitinsight
  4. Set expiration: 90 days or no expiration
  5. Select these scopes:
    • read:user
    • public_repo
  6. Click "Generate token"
  7. Copy it immediately — GitHub shows it only once

Upon your first time executing the command, the CLI will prompt you for this token:

Welcome to GitInsight! Setup Required.
Please enter your GitHub Personal Access Token: 

The token is securely stored in your local home directory (~/.gitinsight). You may also provide the token via a local .env file or by exporting GITHUB_TOKEN to your system environment variables.


Usage

Once installed, the gitinsight command is registered globally on your system.

Basic Profile Analysis: Execute the command followed by the target GitHub username.

gitinsight sshreyanshh

Generate a PDF Report: Append the -r or --report flag to automatically generate and save a PDF summary in your current working directory.

gitinsight sshreyanshh -r

Enable Verbose Logging: Append the -v or --verbose flag to view underlying API requests and debugging information.

gitinsight sshreyanshh -v

Architecture & Technology Stack

  • Language: Python 3.8+
  • Asynchronous Networking: aiohttp
  • Terminal Formatting: Rich
  • Document Generation: fpdf2
  • Build System: Hatchling

Preview

gitinsight <username> (for insight without report)
GitInsight Output without Report

gitinsight <username> --report (for insight with report, snapshot of additional message displayed.) GitInsight Output with Report

(sample of report generated via GitInsight)
Report Preview


Local Development

To run the project locally for development or contribution:

  1. Clone the repository.
    git clone https://github.com/sshreyanshh/GitInsight.git
    
  2. Navigate to the project root directory.
  3. Install the package in editable mode:
    pip install -e .
    

License

This project is open-source and available under the standard MIT License.



Developed by Shreyansh Srivastava · 2026


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

gitinsight_py-1.0.1.tar.gz (2.4 MB view details)

Uploaded Source

Built Distribution

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

gitinsight_py-1.0.1-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file gitinsight_py-1.0.1.tar.gz.

File metadata

  • Download URL: gitinsight_py-1.0.1.tar.gz
  • Upload date:
  • Size: 2.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for gitinsight_py-1.0.1.tar.gz
Algorithm Hash digest
SHA256 8bfb99ccc45e34f06aac6b517bb7dafd4022ae77d06fa0bc80afb50a8dba344c
MD5 a9b2289f2c11f933af2f4e5f8fb75101
BLAKE2b-256 21b57c5c19ee001e494d182c8d8cd24526598545498005f437c3771b3fd9bd63

See more details on using hashes here.

File details

Details for the file gitinsight_py-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: gitinsight_py-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for gitinsight_py-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 49807e3f0df75cea36ae1cbea65bd296ec16d0bb00520c28bffa0101ca0c12f9
MD5 05dbe231481f0a5857ecdbe443dc9a42
BLAKE2b-256 42b9dd91a041db49ac3c98a160918ffb79907a72813ecbbe79b1f82a6c7943f7

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