Skip to main content

Prerequisites

Before installing OSINT Hub, ensure you have the required system dependencies installed. See Requirements for detailed information.
Make sure you have Python 3.12+, ExifTool, and Redis installed before proceeding.

Installation Steps

Follow these steps to install OSINT Hub on your local machine:
1

Clone the repository

Clone the OSINT Hub repository from GitHub:
git clone https://github.com/Nakajito/osint_hub.git
cd osint_hub
2

Create and activate virtual environment

Create a Python virtual environment to isolate dependencies:
python -m venv venv
source venv/bin/activate
3

Install dependencies

Install all required Python packages from requirements.txt:
pip install -r requirements.txt
This will install Django 5.2, Celery 5.6, and all OSINT tools including:
  • Holehe 1.61 - Email search across platforms
  • Sherlock 0.16 - Username search across 300+ sites
  • PyExifTool 0.5.6 - EXIF metadata extraction
  • phonenumbers 9.0 - Phone number analysis
4

Configure environment variables

Copy the example environment file and edit it with your configuration:
cp .env.example .env
Edit the .env file with your preferred text editor. See Configuration for detailed information about each variable.
At minimum, you must set a unique SECRET_KEY for security purposes.
5

Run database migrations

Apply Django database migrations to set up the database schema:
python manage.py migrate
This creates the SQLite database (default) with all necessary tables.
6

Collect static files

Collect all static files (CSS, JavaScript, images) into the staticfiles directory:
python manage.py collectstatic
Type yes when prompted to confirm.
7

Start the development server

Run the Django development server:
python manage.py runserver
The application will be available at http://localhost:8000

Verify Installation

Once the server is running, open your browser and navigate to:

Optional: Start Celery Worker

For asynchronous task processing (required for Phone Search), start a Celery worker in a separate terminal:
# Make sure your virtual environment is activated
source venv/bin/activate

# Start Celery worker
celery -A osint_hub worker --loglevel=info
Celery requires Redis to be running. Make sure Redis is installed and started before running the Celery worker.

Next Steps

Configuration

Learn how to configure environment variables and Django settings

Production Deployment

Deploy OSINT Hub to production with Gunicorn or PythonAnywhere

Build docs developers (and LLMs) love