Skip to main content

GitHub repository analytics from your terminal

Project description

RepoScan

GitHub repository analytics from your terminal. Analyze any public repo in seconds — commit patterns, contributor stats, language breakdown, file hotspots, and a health score, all in a clean terminal UI.

Install

pip install reposcan

Quick Start

# Full analysis of any public repo
reposcan analyze torvalds/linux

# Just the overview
reposcan overview facebook/react

# Health score only
reposcan health golang/go

# Compare multiple repos side by side
reposcan compare "pallets/flask,django/django,fastapi/tiangolo"

Commands

Command Description
reposcan analyze <repo> Full repository report
reposcan overview <repo> Basic repo info (stars, forks, license, etc.)
reposcan commits <repo> Commit activity breakdown (by day, hour, author)
reposcan health <repo> Repository health score (0-100)
reposcan churn <repo> File hotspots — most frequently changed files
reposcan languages <repo> Language breakdown with percentages
reposcan compare <repos> Side-by-side comparison of multiple repos
reposcan rate-limit Check your GitHub API rate limit

<repo> accepts both owner/repo format and full GitHub URLs.

Options

# Include file churn in full analysis (makes extra API calls)
reposcan analyze owner/repo --churn

# Get JSON output instead of tables
reposcan analyze owner/repo --json-output

# Use a GitHub token for higher rate limits
reposcan --token ghp_xxxx analyze owner/repo

# Or set it as an environment variable
export GITHUB_TOKEN=ghp_xxxx

What It Analyzes

Repository Overview

Stars, forks, watchers, open issues, license, topics, creation date, last push, and size.

Commit Activity

  • Total commits analyzed
  • Commits by day of week (with bar chart)
  • Peak commit hours (UTC)
  • Top committers
  • Current commit streak

Health Score (0-100)

A weighted score based on:

  • Has description (+15)
  • Has license (+15)
  • Has topics (+10)
  • Recent activity within 30 days (+20) or 90 days (+10)
  • Contributor count (+5 to +15)
  • Star count (+5 to +15)
  • Open issue ratio (+5 to +10)

File Churn / Hotspots

The most frequently modified files across recent commits — helps identify areas of high change that may need refactoring or extra test coverage.

Language Breakdown

Byte count and percentage for each language detected by GitHub.

Issue Statistics

Open vs closed counts, average close time, and most used labels.

Repo Comparison

Compare stars, forks, issues, language, health score, and last push date across multiple repos in one table.

GitHub API Rate Limits

Without a token, you get 60 requests/hour. With a token, you get 5,000 requests/hour.

Generate a personal access token at github.com/settings/tokens — no special scopes needed for public repos.

export GITHUB_TOKEN=ghp_your_token_here

Examples

# Analyze your own repo
reposcan analyze shazeus/reposcan

# Deep dive into commit patterns
reposcan commits rust-lang/rust

# Check if a dependency is well maintained
reposcan health some-org/some-library

# Compare web frameworks
reposcan compare "pallets/flask,django/django"

# Pipe JSON to other tools
reposcan analyze owner/repo --json-output | jq '.health.score'

Requirements

  • Python 3.8+
  • Works on Linux, macOS, and Windows

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

reposcan-0.1.0.tar.gz (12.3 kB view details)

Uploaded Source

Built Distribution

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

reposcan-0.1.0-py3-none-any.whl (12.3 kB view details)

Uploaded Python 3

File details

Details for the file reposcan-0.1.0.tar.gz.

File metadata

  • Download URL: reposcan-0.1.0.tar.gz
  • Upload date:
  • Size: 12.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for reposcan-0.1.0.tar.gz
Algorithm Hash digest
SHA256 26ae76a92fcd77607f605c48b08f0b4fa6cc757a0cf93295d0980fb24688949f
MD5 8d8d736d51646e97074af4c3d9192de1
BLAKE2b-256 292989d9f0b4d4aeaad604f8fafcbf79761e2340fd00c35f65c5af9d20ae7661

See more details on using hashes here.

File details

Details for the file reposcan-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: reposcan-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for reposcan-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 630d20d54b4cfcd065db9f3d8d4744c6a2d98edbe1fb98ed4b7c4780df7de3ab
MD5 7ac65053446890a0aed18779d77a6807
BLAKE2b-256 c78bcd67807b445201c6e6d7bfed7594a088bd2956ead5652e93d69a745d2722

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