A powerful Streamlit-based tool for analyzing GitHub repositories, providing code quality insights, and suggesting improvements using pattern-based detection.
GitHub Repository Analyzer is a web application that helps developers and teams analyze and improve their code quality. The tool provides:
- Code Quality Analysis: Pattern-based detection of common code issues and anti-patterns
- Visualization: Interactive graphs and charts for code metrics and commit history
- Improvement Suggestions: Actionable recommendations with example code fixes
- Repository Insights: Overview of repository activity, contributors, and structure
- Repository Analysis: Load any public GitHub repository via URL
- File Filtering: Choose specific file types to analyze
- Customizable Analysis Depth: Basic, Standard, or Deep analysis options
- Code Issue Detection: Identify coding problems like:
- Long functions
- Complex code structures
- Inconsistent naming
- Missing documentation
- Potential security issues
- Performance bottlenecks
- Visual Reports: Clean, interactive visualizations using Plotly
- Improvement Suggestions: Practical code examples showing how to fix issues
Try the application online at:
See the Installation Guide for detailed setup instructions.
Quick start:
# Clone repository
git clone https://github.com/yourusername/github-repo-analyzer.git
cd github-repo-analyzer
# Install dependencies
pip install -r requirements.txt
# Run application
streamlit run main.py
- Enter a GitHub repository URL (e.g.,
https://github.com/streamlit/streamlit
) - Configure analysis settings:
- Select file types to analyze (Python, JavaScript, etc.)
- Set analysis depth (Basic, Standard, Deep)
- Set maximum files to analyze
- Click "Analyze Repository"
- Explore the results across different tabs:
- Repository Overview
- Code Quality Analysis
- Commit History
- Improvement Suggestions
Screenshots coming soon
GitHub Repository Analyzer uses a combination of:
- GitHub API Integration: Fetches repository metadata, commit history, and file contents using REST API
- Pattern Analysis: Uses regular expressions and language-specific rules to detect code issues
- Visualization Engine: Transforms analysis data into interactive charts
- Recommendation System: Generates tailored improvement suggestions based on detected issues
- Code Reviews: Automate the initial code review process and focus human reviewers on complex issues
- Technical Debt: Identify areas of code with the highest technical debt for refactoring
- Onboarding: Help new team members understand code quality standards
- Continuous Improvement: Regular analysis to track code quality trends over time
- Only public repositories can be analyzed
- No code is stored or saved outside of your browser session
- Analysis happens in real-time without saving repository content
- GitHub API token is optional and never stored
Built with:
- Streamlit - Web application framework
- Plotly - Interactive visualizations
- GitHub API - Repository access
- Pattern-based code analysis
- Installation Guide - Setup instructions
- Deployment Guide - Hosting options
- Contributing Guide - Contribution guidelines
Contributions are welcome! Please read the Contributing Guide for details on how to submit pull requests, report issues, and suggest improvements.
This project is licensed under the MIT License - see the LICENSE file for details.
- The Streamlit team for creating an amazing framework for data applications
- GitHub for providing a comprehensive API
- All contributors and users of this tool
Made with β€οΈ by Canstralian/Chemically Motivated Solutions
This project is not affiliated with GitHub and is provided as-is under the MIT Licenseadd emojis to make the read more engaging and then add some more relevant, working badges for the repo on github, possibly tied in with the .yml workflow