Files
simva-home/main.py
T
2026-10-23 12:05:26 +09:00

31 lines
1.2 KiB
Python

import sys
import threading
import time
import uvicorn
from backend.app.config import settings
def start_api():
uvicorn.run("backend.app.main:app", host=settings.API_HOST, port=settings.API_PORT, log_level="info")
if __name__ == '__main__':
# 인자로 --window 또는 -w 가 전달되면 pywebview 창으로 실행
if "--window" in sys.argv or "-w" in sys.argv:
try:
import webview
server_thread = threading.Thread(target=start_api, daemon=True)
server_thread.start()
time.sleep(1) # 서버 구동 대기
webview.create_window('Transmission Magnet Manager', f'http://127.0.0.1:{settings.API_PORT}')
webview.start()
except ImportError:
print("pywebview가 설치되어 있지 않습니다. 웹 서버 모드로 실행합니다.")
start_api()
else:
# 기본: FastAPI 웹 애플리케이션 실행
print(f"==================================================")
print(f" 🧲 Transmission Magnet Manager")
print(f" 접속 주소: http://localhost:{settings.API_PORT}")
print(f" 창 모드 실행: python main.py --window")
print(f"==================================================")
start_api()