
    !\i                     x   d Z ddlmZmZmZmZmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZ ddlZddlmZ dd	lmZ dd
lmZmZmZmZmZ ddlmZ  ej:                   eeej>                        d        eddd      Z e jC                  d e
d      d        ed      Z"e jG                  ejH                  ddg       e jG                  ejH                  ddg       e jG                  ejH                  ddg       e jG                  ejH                  ddg       e jG                  ejH                  ddg       e jG                  ejH                  d g!       e jK                  d"      d#        Z&e jK                  d$      d%        Z'e(d&k(  r.ddl)Z) e)jT                  e ejV                  ejX                  '       yy)(zMain FastAPI application    )FastAPIDependsHTTPExceptionHeaderRequest)HTMLResponse)StaticFiles)Jinja2Templates)SessionN)settings)get_db)matchespredictionsmodelsrunsadmin)routesz4%(asctime)s - %(name)s - %(levelname)s - %(message)s)levelformatzSports Predictorz'ML-based sports match prediction systemz0.1.0)titledescriptionversionz/staticzapp/web/static)	directorystatic)namezapp/web/templatesz/apir   )prefixtagsr   r   r   z
/api/adminr   web)r   z/healthc                     K   ddiS w)zHealth check endpointstatusok r"       /app/app/main.pyhealthr%   +   s      ds   /c                  (   K   ddl m}   | d      S w)z(Root endpoint redirects to web interfacer   RedirectResponsez/web/)url)fastapi.responsesr)   r(   s    r$   rootr,   1   s      3((s   __main__)hostport)-__doc__fastapir   r   r   r   r   r+   r   fastapi.staticfilesr	   fastapi.templatingr
   sqlalchemy.ormr   loggingapp.core.configr   app.core.db.databaser   app.apir   r   r   r   r   app.webr   
web_routesbasicConfiggetattr	log_levelappmount	templatesinclude_routerroutergetr%   r,   __name__uvicornrunapi_hostapi_portr"   r#   r$   <module>rI      s    D D * + . "  $ ' = = (   
'8--
.A
 
9 		)[+;<8	 L &9:	   7>>&	{  C   ;%%fM?  K   6==xj  A   4;;vVH  =   5<<G9  E   :$$E7  3  
 ) ) zGKK(++(2C2CD r#   