rohanshaw's picture
Upload 8 files
cfd8098 verified
from fastapi import FastAPI, Depends, HTTPException, status
from fastapi.responses import JSONResponse
import uvicorn
from dotenv import load_dotenv
# --- Load .env file BEFORE importing other modules ---
load_dotenv()
# Import routers from other files
from .auth import AuthRouter
from .skus import SkuRouter
from .barcodes import BarcodeRouter
# Import the database connection
from .db import db
from fastapi.middleware.cors import CORSMiddleware
# --- App Initialization ---
app = FastAPI(
title="HF Masala Barcode System API",
description="Internal API for managing SKUs and EAN-13 barcodes.",
version="1.0.0"
)
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
# --- Include Routers ---
app.include_router(AuthRouter)
app.include_router(SkuRouter)
app.include_router(BarcodeRouter)
# --- Test Endpoint ---
@app.get("/api/health")
async def get_health():
"""
A simple health check endpoint to confirm the API is running.
"""
return JSONResponse(
status_code=status.HTTP_200_OK,
content={"status": "ok", "message": "HF Masala API is running!"}
)
# --- Main Entry Point (for running with 'python -m app.main') ---
if __name__ == "__main__":
print("Starting HF Masala API server...")