Where Are the Holehe Modules Located? A Complete Guide to the Project Structure
The Holehe modules are located in the holehe/modules/ directory, organized into 18 category subdirectories ranging from social_media/ and programing/ to porn/ and medical/.
Holehe is an open-source OSINT tool that checks whether an email address is registered on hundreds of websites. Understanding where its modules are located helps developers contribute new services, debug existing ones, or customize the tool for specific investigations. This guide maps the complete module structure based on the megadose/holehe source code.
Core Package Structure
The Holehe project follows a standard Python package layout. The root holehe/ package contains:
holehe/core.py— The CLI entry point that orchestrates all module callsholehe/instruments.py— Shared helper utilities for HTTP requests and response parsingholehe/localuseragent.py— Randomized User-Agent string generationholehe/modules/— The functional heart of the project containing all service-specific checkers
Holehe Modules Location: The holehe/modules/ Directory
All functional modules reside under holehe/modules/ and are grouped by service domain. Each category is a sub-package with its own __init__.py for clean imports.
Social Media Modules
Located at holehe/modules/social_media/
| Module | Purpose |
|---|---|
twitter.py |
Check Twitter/X account existence |
instagram.py |
Instagram profile verification |
facebook.py |
Facebook account lookup |
Programming & Developer Platforms
Located at holehe/modules/programing/
| Module | Purpose |
|---|---|
github.py |
GitHub username/email verification |
gitlab.py |
GitLab account checking |
bitbucket.py |
Atlassian Bitbucket lookup |
Music Services
Located at holehe/modules/music/
| Module | Purpose |
|---|---|
spotify.py |
Spotify account existence |
soundcloud.py |
SoundCloud profile check |
deezer.py |
Deezer user verification |
Adult Content Platforms
Located at holehe/modules/porn/
| Module | Purpose |
|---|---|
pornhub.py |
PornHub account verification |
xvideos.py |
XVideos profile check |
Payment & Financial Services
Located at holehe/modules/payment/
| Module | Purpose |
|---|---|
venmo.py |
Venmo account lookup |
paypal.py |
PayPal email verification |
stripe.py |
Stripe account checking |
Complete Module Category Listing
The holehe/modules/ directory contains 18 specialized categories:
company/— Business presence platforms likeaboutme.pycrm/— Customer relationship management tools likehubspot.pyforum/— Discussion boards likethevapingforum.pyjobs/— Freelance and employment sites likefreelancer.pylearning/— Educational platforms likequora.pymails/— Email services likegmail.py(Google)medical/— Healthcare platforms likecaringbridge.pymedias/— Photo and media sharing likeflickr.pyosint/— Intelligence tools likerocketreach.pyreal_estate/— Property platforms likevrbo.pysoftware/— Security tools likelastpass.pysport/— Fitness and athletics likebodybuilding.pytransport/— Travel services likeblablacar.py
Importing Holehe Modules
Each category sub-package exposes its modules through __init__.py, enabling clean imports:
# Import social media checker
from holehe.modules.social_media import twitter
# Import developer platform checker
from holehe.modules.programing import github
# Import music service checker
from holehe.modules.music import spotify
The central holehe/modules/__init__.py aggregates all categories for programmatic access:
# Access multiple module categories
from holehe.modules import social_media, payment, programing
Key Files Supporting the Module System
| File | Location | Role |
|---|---|---|
| Package initializer | holehe/__init__.py |
Makes holehe importable |
| CLI orchestrator | holehe/core.py |
Calls appropriate modules based on arguments |
| HTTP utilities | holehe/instruments.py |
RequestHandler class for standardized requests |
| User-Agent rotation | holehe/localuseragent.py |
get_useragent() function |
| Module aggregator | holehe/modules/__init__.py |
Exports all category sub-packages |
| Category initializers | holehe/modules/{category}/__init__.py |
Expose individual service modules |
Adding Custom Modules to Holehe
To extend Holehe with a new service:
- Choose the appropriate category under
holehe/modules/or create a new one - Create a Python file implementing the standard checker interface
- Update the category's
__init__.pyto export the new module - The
holehe/core.pyCLI will automatically discover and call it
The modular architecture in holehe/modules/ makes this straightforward without modifying core infrastructure.
Summary
- Main location: All Holehe modules are in
holehe/modules/organized by service category - 18 categories: From
social_media/tomedical/, each as a Python sub-package - Key entry points:
holehe/core.pyfor CLI, category__init__.pyfiles for imports - Helper utilities:
instruments.pyandlocaluseragent.pysupport all modules - Extensibility: Adding services requires only new files in appropriate category directories
Frequently Asked Questions
How do I find the module for a specific website?
Check the category directories under holehe/modules/ based on the site's primary function. Social platforms are in social_media/, coding sites in programing/, financial services in payment/. Each module filename matches the service name (e.g., twitter.py, github.py).
Can I import and use Holehe modules without the CLI?
Yes. Import directly from the package: from holehe.modules.social_media import twitter. Each module exposes checker functions that accept email addresses or usernames and return existence results.
Where is the main execution logic located?
The CLI implementation and module orchestration live in holehe/core.py. This file processes command-line arguments, dispatches calls to appropriate holehe/modules/ checkers, and formats output results.
How are modules organized if a site fits multiple categories?
Modules are placed in the most specific appropriate category. GitHub lives in programing/ despite social features, while LinkedIn would likely go in jobs/ or company/ rather than social_media/. The osint/ category contains specialized intelligence-gathering services that don't fit standard classifications.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →