bealimehdi commited on
Commit
83f8181
·
verified ·
1 Parent(s): a0a634d

Upload main.py

Browse files
Files changed (1) hide show
  1. main.py +38 -0
main.py ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from dotenv import load_dotenv
2
+ load_dotenv()
3
+
4
+ from fastapi import FastAPI
5
+ from fastapi.middleware.cors import CORSMiddleware
6
+ from pydantic import BaseModel
7
+ from routers import generate
8
+
9
+ from fastapi.staticfiles import StaticFiles
10
+ import os
11
+
12
+ app = FastAPI(title="Pickabook API", version="0.1.0")
13
+
14
+ # Create static directory if it doesn't exist
15
+ os.makedirs("static", exist_ok=True)
16
+ app.mount("/static", StaticFiles(directory="static"), name="static")
17
+
18
+ # CORS setup for local development
19
+ app.add_middleware(
20
+ CORSMiddleware,
21
+ allow_origins=["*"], # Allow Vercel and all domains
22
+ allow_credentials=True,
23
+ allow_methods=["*"],
24
+ allow_headers=["*"],
25
+ )
26
+
27
+ app.include_router(generate.router, prefix="/api", tags=["generation"])
28
+
29
+ class HealthCheck(BaseModel):
30
+ status: str = "ok"
31
+
32
+ @app.get("/", response_model=HealthCheck)
33
+ async def health_check():
34
+ return {"status": "ok"}
35
+
36
+ if __name__ == "__main__":
37
+ import uvicorn
38
+ uvicorn.run("main:app", host="0.0.0.0", port=8000, reload=True)