RepoVizualizer
| Type | Web Application |
| Status | Early Development |
| Language | HTML / Python |
| Backend | Flask |
| Deployment | Docker / Jenkins |
| Repository | Github |
| Deployment | repo-vizualizer |
Overview
RepoVizualizer is a lightweight full-stack tool for exploring GitHub repositories visually. A Flask backend wraps the GitHub REST API, while the frontend renders the returned data — file tree, commits, branches, and contributors — into an interactive graph.
The goal is to give a quick, visual sense of a repository's shape and activity without digging through GitHub's UI manually.
Features
- Fetches repository metadata (stars, forks, issues, license, language)
- Recursive file tree visualization, capped at 300 nodes for readability
- Recent commit history with author and timestamp
- Branch listing
- Contributor list with avatars and contribution counts
- Optional GitHub token support to avoid API rate limits
- CORS-enabled API for easy frontend integration
Requirements
- Python 3.7+
- Flask
- Flask-CORS
- requests
- Docker (optional, for containerized deployment)
Usage
Run the backend locally, or via Docker Compose, then open the
frontend and enter a repository in owner/repo format.
- Set an optional
GITHUB_TOKENenvironment variable to raise API rate limits - Query any public repository by owner and name
- Explore the generated file tree, commit history, and contributors
API Endpoints
GET /api/repo/info— repository metadataGET /api/repo/commits— last 30 commitsGET /api/repo/branches— up to 50 branchesGET /api/repo/contributors— top 20 contributorsGET /api/repo/tree— recursive file treeGET /health— health check
Known Limitations
The project is still minimal and focused on core data retrieval rather than polish.
- File tree capped at 300 nodes on large repositories
- No authentication or per-user rate limiting beyond a single token
- No caching layer, so repeated queries re-hit the GitHub API
- Public repositories only
Future Enhancements
- Interactive, zoomable graph rendering of the file tree
- Commit activity heatmap
- Caching to reduce GitHub API calls
- Support for private repositories via OAuth
- Dependency graph visualization
Development Notes
Built to make sense of unfamiliar repositories quickly, without clicking through GitHub's file browser page by page.
The backend is a thin, stateless wrapper around the GitHub REST API, keeping the deployment simple and easy to containerize.