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 calls
  • holehe/instruments.py — Shared helper utilities for HTTP requests and response parsing
  • holehe/localuseragent.py — Randomized User-Agent string generation
  • holehe/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:

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:

  1. Choose the appropriate category under holehe/modules/ or create a new one
  2. Create a Python file implementing the standard checker interface
  3. Update the category's __init__.py to export the new module
  4. The holehe/core.py CLI 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/ to medical/, each as a Python sub-package
  • Key entry points: holehe/core.py for CLI, category __init__.py files for imports
  • Helper utilities: instruments.py and localuseragent.py support 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:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →