This repository contains a web-based interface for the Maigret tool, a powerful open-source username enumeration and reconnaissance tool. With this web app, users can input a username and generate detailed HTML and PDF reports showing results from Maigret’s scan of thousands of platforms.
- Web-based interface: Users can scan usernames directly via a web page.
- Real-time feedback: Displays scan progress with a loading spinner.
- Downloadable reports: HTML and PDF reports are automatically generated for each scan.
- Error handling: Displays error messages if scans fail or unexpected issues occur.
- Secure workflow: Prevents simultaneous scans to avoid conflicts.
- Python: Flask framework for backend server.
- Maigret: The core username scanning tool.
- HTML/CSS/JavaScript: For the user interface with responsive design.
- jQuery: Simplifies AJAX requests and dynamic page updates.
- Bootstrap: Ensures clean, responsive design.
- Python 3.8 or later
- Virtual environment (
venv) for Python package management - Maigret tool installed
- A modern web browser (for accessing the UI)
- Clone the repository:
git clone https://github.com/your-repo-name/maigret-web-scanner.git cd maigret-web-scanner - Create and activate a virtual environment:
python3 -m venv venv source venv/bin/activate # Linux/MacOS venv\Scripts\activate # Windows
- Install dependencies:
pip install -r requirements.txt
- Install Maigret:
pip install maigret
- Ensure the
static/directory containslcnr.jpg(or replace the logo path inindex.html).
- Start the Flask server:
python app.py
- Open your browser and go to:
or replace
http://127.0.0.1:5000127.0.0.1with your server’s IP for external access.
- Enter the username in the input box on the webpage.
- Click the "Run Scan" button.
- Wait for the scan to complete (loading spinner indicates progress).
- View or download the generated HTML and PDF reports via the provided links.
maigret-web-scanner/
├── app.py # Main Flask application
├── templates/
│ └── index.html # Frontend HTML template
├── static/
│ ├── lcnr.jpg # Logo file
│ └── style.css # Additional CSS (optional, not used in the example)
├── requirements.txt # Python dependencies
└── README.md # Project documentation
Generated reports include:
- HTML Report: An interactive, browser-friendly summary.
- PDF Report: A downloadable version for offline use or sharing.
To customize the Maigret command further, modify the app.py file:
command = f"maigret {username} -a -HP --folderoutput output/{username}"You can add options like --tags, --site, or --top-sites to refine the scan.
- Port already in use: Kill the process running on port 5000:
lsof -i :5000 kill -9 <process_id>
- Errors in scan: Check that Maigret is properly installed and accessible in the system PATH.
- Add authentication for secure access.
- Support scheduling scans or saving scan history.
- Integrate database for managing results.
- Dockerize for simplified deployment.
This project is open-source and licensed under the MIT License. See the LICENSE file for details.
We welcome contributions! Feel free to submit issues, feature requests, or pull requests to improve this project.
- Maigret: For the powerful username enumeration engine.
- Flask: For providing the web framework.
- Bootstrap: For clean and responsive design.
Happy Scanning!

