StarFinder: GitHub Forks & User Insights
Welcome to StarFinder, a powerful tool designed to illuminate the universe of GitHub repositories by tracking forks and extracting comprehensive user information. Aimed at developers, data analysts, and open-source enthusiasts, StarFinder provides a window into the collaboration and community dynamics surrounding popular repositories. By leveraging this tool, users can uncover patterns, identify key contributors, and gain insights into the broader impact of a project.
- Fork Crawler: Efficiently navigates through the forks of a specified GitHub repository, compiling a detailed list of these forks along with their metadata.
- User Information Extraction: Goes beyond forks to fetch in-depth information about the users who have forked the repository, including their profiles, contributions, and engagement within the GitHub ecosystem.
- Data Visualization: Integrates with a Streamlit application, offering an intuitive interface for uploading, viewing, and analyzing the collected data in a structured and user-friendly format.
To embark on your journey with StarFinder, ensure you have the following prerequisites in place:
- Python 3.6 or higher
- pip for installing dependencies
Clone this repository to your local machine.
Install the required dependencies by running:
pip install -r requirements.txt
Set up a
.envfile based on the
.env_exampleprovided, ensuring you add your own GitHub token to authenticate API requests.
StarFinder operates in two main stages: data collection and data visualization.
main.pyto start the data collection process. Replace
get_forksfunction call with the repository you're interested in.
The script will first gather information about all forks of the specified repository, saving the data to
Next, it will extract detailed user information for each fork's owner, saving this data to
Data Visualization with Streamlit
Launch the Streamlit app:
streamlit run app.py
Use the sidebar to navigate between "Forks" and "User Info" pages.
Upload the generated CSV files to view and analyze the data within the Streamlit interface.
We welcome contributions of all kinds, from bug fixes and feature additions to documentation improvements. If you're interested in contributing, please fork the repository and submit a pull request.
This project is open-sourced under the MIT License. See the LICENSE file for more details.
- Thank you to all contributors and users of StarFinder. Your support and feedback make this project possible.
- This project uses the GitHub API but is not endorsed or certified by GitHub.