from __future__ import annotations import logging import uvicorn from crypto_spot_bot.config import load_settings from crypto_spot_bot.dashboard import create_app def main() -> None: settings = load_settings() settings.log_path.parent.mkdir(parents=True, exist_ok=True) logging.basicConfig( level=logging.INFO, format="%(asctime)s %(levelname)s %(name)s %(message)s", handlers=[ logging.FileHandler(settings.log_path, encoding="utf-8"), logging.StreamHandler(), ], ) app = create_app(settings) uvicorn.run(app, host=settings.host, port=settings.port) if __name__ == "__main__": main()