Getting Started with Starred Repository Scanner
A quick guide to scanning and analyzing your GitHub starred repositories with AI-powered insights.
What is the Starred Repository Scanner?
The Starred Repository Scanner is an automated workflow that helps you:
- Fetch all repositories you’ve starred on GitHub
- Generate AI-enhanced descriptions for each repository
- Extract keywords and potential use cases
- Organize repositories by language, category, and use case
- Export structured data for easy searching and filtering
Quick Start (5 Minutes)
Prerequisites
- Python 3.8 or higher
- GitHub account with starred repositories
- GitHub Personal Access Token (optional but recommended)
Step 1: Install Dependencies
pip install requests
That’s it! Only one dependency needed.
Step 2: Get GitHub Token (Optional)
For scanning your own starred repositories:
- Go to https://github.com/settings/tokens
- Click “Generate new token (classic)”
- Select scope:
public_repo
orrepo
- Copy the token
Step 3: Run Your First Scan
# Set your token (recommended)
export GITHUB_TOKEN="your_token_here"
# Basic scan
python scripts/scan_starred_repos.py --output data/starred-repos.json --limit 10
# OR with enhanced descriptions (NEW!)
python scripts/scan_starred_repos.py --enhance-description --limit 10
# OR with full analysis (languages + enhanced descriptions)
python scripts/scan_starred_repos.py --include-languages --enhance-description --limit 10
This will scan your first 10 starred repositories and save the results.
New Features:
--enhance-description
: Automatically generates rich descriptions from metadata--include-languages
: Fetches language breakdown with percentages--include-readme
: Includes README previews for deeper AI analysis
Step 4: Review the Output
# View the results
cat data/starred-repos.json | python -m json.tool | head -50
# Or open in your favorite editor
code data/starred-repos.json
You’ll see structured data like:
{
"scan_date": "2024-01-15T10:30:00Z",
"total_repositories": 10,
"repositories": [
{
"repository": "owner/repo-name",
"description": "Repository description",
"enhanced_description": "Repository description | Topics: web, api | Built with Python | Popular project with 2,345 stars",
"language": "Python",
"languages": {
"Python": 85.5,
"JavaScript": 10.2,
"CSS": 4.3
},
"topics": ["topic1", "topic2"],
"stars": 1234,
...
}
]
}
Step 5: Analyze with AI
Now use the Repository Analyzer prompt to enhance each repository:
- Open your AI assistant (GitHub Copilot, Claude, ChatGPT, etc.)
- Copy the Repository Analyzer prompt
- For each repository, provide its data
- Get enhanced descriptions, keywords, and use cases
Example input to AI:
Repository: facebook/react
Description: "The library for web and native user interfaces"
Language: JavaScript
Topics: javascript, react, frontend, ui
Stars: 225,000
Example output from AI:
- Enhanced Description: “React is a declarative, component-based JavaScript library…”
- Keywords: javascript-library, ui-framework, component-based, …
- Use Cases: Building Modern Web Applications, Cross-Platform Mobile Development, …
Step 6: Organize Your Results
Build a searchable database:
- Group by language
- Filter by use case
- Search by keywords
- Track learning priorities
See example analysis for inspiration.
Common Commands
# Scan all your starred repos
python scripts/scan_starred_repos.py --output data/starred-repos.json
# NEW: Scan with enhanced descriptions
python scripts/scan_starred_repos.py --enhance-description --output data/starred-repos.json
# NEW: Comprehensive scan with all features
python scripts/scan_starred_repos.py --enhance-description --include-languages --include-readme --limit 50
# Scan with README previews (slower but more context)
python scripts/scan_starred_repos.py --include-readme --limit 20
# Scan another user's public stars
python scripts/scan_starred_repos.py --username torvalds --limit 50
# Quick test with first 5 repos
python scripts/scan_starred_repos.py --limit 5
Next Steps
- Full Scan: Remove
--limit
to scan all your stars - AI Analysis: Use the prompt to analyze repositories in batches
- Automation: Set up GitHub Actions for weekly scans (see workflow example)
- Organization: Build your personal repository knowledge base
- Sharing: Share curated lists with your team
Troubleshooting
“Authentication required”
- Set
GITHUB_TOKEN
environment variable - Or use
--token
parameter
“API rate limit”
- Use authentication (gives 5000 req/hour vs 60)
- Add delays between requests
- Scan in smaller batches
“Module not found: requests”
- Install:
pip install requests
- Or:
python -m pip install requests
Learn More
- Full Guide: Starred Repository Scanner Instructions
- AI Prompt: Repository Analyzer
- Example Analysis: Complete Workflow
- Implementation Notes: Design Decisions
- Script Documentation: Scanner Script Details
Features Overview
Automated Scanning
- Fetch all starred repositories via GitHub API
- Pagination support for large collections
- Rate limit monitoring and handling
- Comprehensive error handling
Enhanced Descriptions
- Automatic generation from repository metadata
- Combines description, topics, language, and popularity
- README analysis for deeper insights
- Multiple levels: brief, standard, and detailed
Language Analysis
- Percentage breakdown of languages used
- Understand polyglot projects
- Tech stack composition at a glance
AI-Powered Analysis
- Multi-level description generation
- Keyword extraction (8-15 relevant items)
- Use case identification with examples
- Technical assessment and comparisons
- Integration opportunities
Flexible Output
- Structured JSON format
- Machine-readable and human-friendly
- Easy filtering and searching
- Export to various formats
Happy scanning! 🚀