from __future__ import annotations import threading from app.config import load_config, setup_logging from app.crawlers.barrons import BarronsCrawler from app.api.server import create_app def start(): # Load configuration and setup logging config = load_config() logger = setup_logging(config.log_level, config.log_dir) # Create crawler instance crawler = BarronsCrawler(config, logger) # Create and start API in background app = create_app(crawler) def run_api(): app.run(host='0.0.0.0', port=8080, debug=False) flask_thread = threading.Thread(target=run_api, daemon=True) flask_thread.start() # Run crawler loop (blocking) crawler.run()