- This project uses the GitHub API to scrape users in Delhi with over 100 followers, fetching their profiles and repository information.
- Analyzing the data revealed that a surprising number of developers don't use wikis or project boards on their repositories.
- Developers should consider utilizing wikis and project boards more effectively to improve project collaboration and documentation.
I used the GitHub API to query users in the city of Delhi who have more than 100 followers. After identifying these users, I retrieved their public repository information, focusing on up to 500 of their most recent repositories. The data was then exported to two CSV files: users.csv and repositories.csv.
- Start → GitHub API Request: The process starts with a request to the GitHub API.
- GitHub API Request → Query Users in Delhi with >100 Followers: It queries users based on city and follower count.
- Query Users → Retrieve Public Repos for Each User: Public repositories are retrieved for each identified user.
- Retrieve Public Repos → Up to 500 Most Recent Repos per User: Limits to 500 recent repositories per user.
- Up to 500 Most Recent Repos → Export Data: Data is exported to CSV.
- Export Data splits into users.csv and repositories.csv as final outputs.
- Only 23% of repositories have active wikis
- High-star repositories (1000+ stars) show similar low adoption rates
- Documentation quality varies significantly across projects
- 27% of repositories utilize project boards
- Larger teams (5+ contributors) show higher board usage (42%)
- Sprint planning tools are underutilized (18% adoption)
- Enable wiki features for comprehensive documentation
- Maintain up-to-date API documentation
- Create detailed setup guides
- Document architectural decisions
- Implement structured project boards
- Use milestone tracking effectively
- Enable automated task assignments
- Regular sprint planning and reviews
- Utilize GitHub Discussions for community engagement
- Enable issue templates
- Implement pull request templates
- Set up automated workflow tools
project/
├── gitscrap.py # Main scraping script
│── [1-16].py # Solving answers
└── data/
├── users.csv # User profile data
└── repositories.csv # Repository information
