Repo-lyzer is a modern, terminal-based CLI tool written in Golang that analyzes GitHub repositories and presents insights in a beautifully formatted, interactive dashboard.
- Deep Analytics – Repository health, maturity scores, and bus factor.
- Contribution Friendliness – Assess how easy it is to contribute to a repository using weighted metrics (
--contributeflag). - Interactive TUI – Fully navigable keyboard-driven menu system.
- Visual Data – Language breakdown bars and horizontal commit graphs.
- File Explorer – Browse repository structures directly in the dashboard.
- Multi-Format Export – Save reports as JSON, Markdown, CSV, or HTML.
go install [github.com/agnivo988/Repo-lyzer@v1.0.6](https://github.com/agnivo988/Repo-lyzer@v1.0.6)
repo-lyzer# Get a 5-line quick summary
repo-lyzer summary golang/go
# Run full interactive analysis
repo-lyzer analyze microsoft/vscode
# Run analysis with contribution scoring enabled
# Run analysis with contribution scoring enabled
repo-lyzer analyze microsoft/vscode --contributeYou can run repo-lyzer using Docker without installing Go. The Docker image uses a non-root user and is optimized for production.
# Build the image
docker build -t repo-lyzer .
# Run the CLI interactively
docker run -it --rm repo-lyzerFor continuous monitoring and scheduling, you can run the daemon mode using docker-compose:
# Start the daemon
docker compose up -d
# View logs
docker compose logs -fYou can configure repo-lyzer using environment variables. These will override file-based settings:
REPO_LYZER_GITHUB_TOKEN: Your GitHub Personal Access TokenREPO_LYZER_INTERVAL: Scheduler polling interval (e.g.,30s,5m,1h)REPO_LYZER_LOG_LEVEL: Logging level (debug,info,warn,error)REPO_LYZER_CONFIG_PATH: Override the config file path (defaults to/app/data/settings.jsonin the container)
The docker-compose.yml mounts a local ./data directory to persist settings and reports.
┌────────────────────────────────────────────┐
│ main.go │
└────────────────────────────────────────────┘
│
▼
┌────────────────────────────────────────────┐
│ cmd/ │
└────────────────────────────────────────────┘
│
▼
┌────────────────────────────────────────────┐
│ internal/ui/ │
└────────────────────────────────────────────┘
│ │ │
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ github │ │ analyzer │ │ output │
└──────────────┘ └──────────────┘ └──────────────┘
- ARCHITECTURE.md – Complete architecture guide
- ANALYZER_INTEGRATION.md – Adding new analyzers
- IMPLEMENTATION_DETAILS.md – Technical deep dive
- PROJECT STRUCTURE.md - Project Structure and Workflow
- DOCUMENTATION_INDEX.md – Master index
- QUICK_REFERENCE.md – Quick usage guide
- CHANGE_LOG.md – Version history
MIT License © 2026 Agniva Mukherjee