| from fastapi import FastAPI | |
| from contextlib import asynccontextmanager | |
| from database import eng , Base | |
| import models | |
| from routes import product_routes, sale_routes, analytics_routes, return_routes, bill_routes, auth_routes ,report_routes | |
| from fastapi.middleware.cors import CORSMiddleware | |
| async def lifespan(app: FastAPI): | |
| # Base.metadata.drop_all(bind=eng) | |
| # print("Database wiped clean automatically!") | |
| Base.metadata.create_all(bind=eng) | |
| print("Database tables verified and successfully created in Docker!") | |
| yield | |
| print("Application shutting down cleanly") | |
| app = FastAPI( | |
| title="Stash GO", | |
| version="1.0.0", | |
| lifespan=lifespan, | |
| # docs_url=None, | |
| # redoc_url=None, | |
| # openapi_url=None | |
| ) | |
| app.add_middleware( | |
| CORSMiddleware, | |
| allow_origins=[ | |
| "http://localhost:5173", | |
| "http://127.0.0.1:5173", | |
| "stash-m2l7nt9g1-abhyudit-s-projects.vercel.app" | |
| ], | |
| allow_credentials=True, | |
| allow_methods=["*"], | |
| allow_headers=["*"], | |
| ) | |
| app.include_router(product_routes.router) | |
| app.include_router(sale_routes.router) | |
| app.include_router(analytics_routes.router) | |
| app.include_router(return_routes.router) | |
| app.include_router(bill_routes.router) | |
| app.include_router(auth_routes.router) | |
| app.include_router(report_routes.router) | |
| def read_root(): | |
| """ | |
| testing the backend | |
| """ | |
| return { | |
| "status" : "online" | |
| } |