from env_loader import load_env_file load_env_file() from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from db import init_db import data_layer_dialogue # noqa: F401 from routers import admin, auth, dialogue, generation_instructions, journal, placeholders, prompts, subscription, users from version import APP_VERSION app = FastAPI(title="Kanshō", version=APP_VERSION) app.add_middleware( CORSMiddleware, allow_origins=["http://localhost:5188", "http://127.0.0.1:5188"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) app.include_router(auth.router) app.include_router(users.router) app.include_router(dialogue.router) app.include_router(journal.router) app.include_router(prompts.router) app.include_router(placeholders.router) app.include_router(subscription.router) app.include_router(admin.router) app.include_router(generation_instructions.router) @app.on_event("startup") def on_startup(): init_db() @app.get("/api/health") def health(): return {"status": "ok", "service": "kansho", "version": APP_VERSION}