hometint / main.py
Abdullah
update files and remove command for testing
776b188
Raw
History Blame Contribute Delete
1.64 kB
"""
RoomTint Backend — HuggingFace Deployment
"""
import logging
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from pathlib import Path
logging.basicConfig(
level=logging.INFO,
format="%(levelname)s %(name)s — %(message)s"
)
app = FastAPI(
title="RoomTint",
version="2.0.0",
docs_url="/docs"
)
# Allow Vercel frontend
app.add_middleware(
CORSMiddleware,
allow_origins=[
"*"
],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
from routes.detect_walls import router as detect_walls_router
from routes.recolor import router as recolor_router
from routes.recommend_colors import router as recommend_colors_router
from routes.results import router as results_router
app.include_router(detect_walls_router)
app.include_router(recolor_router)
app.include_router(recommend_colors_router)
app.include_router(results_router)
@app.get("/")
def home():
return {
"name": "RoomTint Backend",
"status": "running",
"docs": "/docs",
"health": "/health"
}
@app.get("/health")
def health():
import torch
from services.sam_service import SAM_CHECKPOINT, device
from pathlib import Path
mask2former_cached = Path(__file__).parent / "models" / "mask2former" / "config.json"
return {
"status": "ok",
"offline_ready": SAM_CHECKPOINT.exists() and mask2former_cached.exists(),
"sam_vit_h": SAM_CHECKPOINT.exists(),
"mask2former_cached": mask2former_cached.exists(),
"device": device,
"cuda": torch.cuda.is_available(),
}