Reach GitHub Contributors is a powerful Python-based automation tool designed to help developers, recruiters, and community managers connect with project contributors. It seamlessly crawls GitHub repository data, extracts contributor information (including verified emails), and automates personalized outreach via the Gmail API.
- Community Building: Engage with people who have already shown interest in your project.
- Talent Sourcing: Find and contact talented developers based on their contributions.
- Feedback Collection: Reach out to forkers and contributors for valuable insights.
- π Smart Crawling: Automatically extracts usernames, full names, and organizations from GitHub contributors.
- π§ Email Extraction: Sophisticated scraping and API usage to retrieve public email addresses.
- π© Gmail Integration: Securely send personalized emails using the official Google Gmail API.
- π CSV Export: Generates a clean
email-list.csvfor easy data management and CRM integration. - π¨ HTML Templates: Use customizable HTML email templates with dynamic placeholders.
- π Customizable: Easily modify templates and sender details to fit your brand.
- Language: Python 3.6+
- APIs: GitHub API, Gmail API
- Libraries: BeautifulSoup4, Requests, LXML, OAuth2Client
- Python 3: Ensure you have Python 3.x installed.
- Gmail API Credentials:
- Follow the Setup Guide to get your
client_secret.json.
- Follow the Setup Guide to get your
- GitHub Token: Generate a Personal Access Token from GitHub for higher API rate limits.
-
Clone the repository:
git clone https://github.com/ishandutta2007/reach-github-contributors.git cd reach-github-contributors -
Install dependencies:
pip install -r requirements.txt
-
Configure Environment:
- Update
constants.pywith your GitHub credentials and API token. - Place your
client_secret.jsonin the root directory.
- Update
Run the crawler to collect contributor details and save them to email-list.csv.
python3 contributors-crawler.py --repo GITHUB_REPO_FULL_URL- Modify
request_mail.htmlto customize your message. - Use placeholders like
[fullname],[repo], and[sender]for personalization.
Execute the mailer script to start the outreach process.
python3 send_mail.pyWe love contributions! If you have ideas for improvements or find bugs, feel free to open an issue or submit a pull request.
If you find this tool helpful, consider supporting the developer:
- Paypal
- Bitcoin:
3LZazKXG18Hxa3LLNAeKYZNtLzCxpv1LyD
Distributed under the MIT License. See LICENSE for more information.
