""" Sherlock OSINT Tool - Main Application A modular OSINT tool for username searching across multiple platforms. """ import sys import os from pathlib import Path # Add src to path for imports sys.path.insert(0, str(Path(__file__).parent / "src")) from sherlock.web.gradio_interface import SherlockGradioInterface from sherlock.config.settings import settings def main(): """Main function to launch the Sherlock OSINT tool.""" print("šŸ” Starting Sherlock OSINT Tool...") print(f"šŸ“Š Configuration:") print(f" - Debug Mode: {settings.debug}") print(f" - Max Concurrent Requests: {settings.max_concurrent_requests}") print(f" - Request Timeout: {settings.request_timeout}s") print(f" - Server: {settings.gradio_server_name}:{settings.gradio_server_port}") print(f" - Share: {settings.gradio_share}") print() try: # Create and launch interface interface = SherlockGradioInterface() # For Hugging Face Spaces, use default settings interface.launch( server_name="0.0.0.0", server_port=7860, share=False, debug=False ) except KeyboardInterrupt: print("\nšŸ‘‹ Sherlock OSINT Tool stopped by user") except Exception as e: print(f"āŒ Error starting Sherlock OSINT Tool: {e}") sys.exit(1) if __name__ == "__main__": main()