#!/usr/bin/env python3 """ Main entry point for the Crypto Trading Bot Dashboard. """ import sys import logging from pathlib import Path # Add project root to path project_root = Path(__file__).parent sys.path.insert(0, str(project_root)) def main(): """Main application entry point.""" print("šŸš€ Crypto Trading Bot Dashboard") print("=" * 40) # Suppress SQLAlchemy database logging for cleaner console output logging.getLogger('sqlalchemy').setLevel(logging.WARNING) logging.getLogger('sqlalchemy.engine').setLevel(logging.WARNING) logging.getLogger('sqlalchemy.pool').setLevel(logging.WARNING) logging.getLogger('sqlalchemy.dialects').setLevel(logging.WARNING) logging.getLogger('sqlalchemy.orm').setLevel(logging.WARNING) try: from config.settings import app, dashboard print(f"Environment: {app.environment}") print(f"Debug mode: {app.debug}") if app.environment == "development": print("\nšŸ”§ Running in development mode") print("Dashboard features available:") print("āœ… Basic Dash application framework") print("āœ… Real-time price charts (sample data)") print("āœ… System health monitoring") print("🚧 Real data connection (coming in task 3.7)") # Start the Dash application print(f"\n🌐 Starting dashboard at: http://{dashboard.host}:{dashboard.port}") print("Press Ctrl+C to stop the application") from app import main as app_main app_main() except ImportError as e: print(f"āŒ Failed to import modules: {e}") print("Run: uv sync") sys.exit(1) except KeyboardInterrupt: print("\n\nšŸ‘‹ Dashboard stopped by user") sys.exit(0) except Exception as e: print(f"āŒ Failed to start dashboard: {e}") sys.exit(1) if __name__ == "__main__": main()