feat: add Doris Barbell v1 scaffold
This commit is contained in:
28
home/doris-barbell/app/main.py
Normal file
28
home/doris-barbell/app/main.py
Normal file
@@ -0,0 +1,28 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
from fastapi import FastAPI
|
||||
from fastapi.staticfiles import StaticFiles
|
||||
|
||||
from app.config import Settings
|
||||
from app.routes.api import router as api_router
|
||||
from app.routes.ui import router as ui_router
|
||||
from app.services.store import JSONStore
|
||||
|
||||
|
||||
BASE_DIR = Path(__file__).resolve().parent
|
||||
|
||||
|
||||
def create_app(state_dir: Path | str | None = None) -> FastAPI:
|
||||
settings = Settings()
|
||||
app = FastAPI(title=settings.app_name)
|
||||
resolved_state_dir = Path(state_dir) if state_dir is not None else settings.default_state_dir
|
||||
app.state.store = JSONStore(resolved_state_dir)
|
||||
app.mount('/static', StaticFiles(directory=BASE_DIR / 'static'), name='static')
|
||||
app.include_router(ui_router)
|
||||
app.include_router(api_router)
|
||||
return app
|
||||
|
||||
|
||||
app = create_app()
|
||||
Reference in New Issue
Block a user