This commit is contained in:
2026-10-08 21:23:49 +03:00
12 changed files with 1785 additions and 588 deletions
+17 -8
View File
@@ -1,38 +1,45 @@
<<<<<<< HEAD
#!/usr/bin/env python3
import os
=======
>>>>>>> ea21db141a6e6289f7763c3cee85f465519abea7
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from database import engine, Base
import routers.clients
import routers.auth
import routers.clients
import routers.workout_types
import routers.workouts
import routers.exercises
import routers.metrics
import routers.sync
<<<<<<< HEAD
# Гарантируем, что директория существует
os.makedirs(os.path.dirname(os.getenv("GYM_DB_PATH", "./gym.db")), exist_ok=True)
=======
>>>>>>> ea21db141a6e6289f7763c3cee85f465519abea7
Base.metadata.create_all(bind=engine)
app = FastAPI(
title="Gym Bro API",
description="API для трекера тренировок с офлайн-синхронизацией",
version="1.0.0"
description="API для трекера тренировок с офлайн-синхронизацией и авторизацией",
version="1.2.0",
)
# CORS для локальной разработки
# Для локальной разработки. В проде замени на конкретный домен фронта.
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # В продакшене заменить на конкретные домены
allow_credentials=True,
allow_origins=["*"],
allow_credentials=False,
allow_methods=["*"],
allow_headers=["*"],
)
# Подключаем роутеры
app.include_router(routers.auth.router)
app.include_router(routers.clients.router)
app.include_router(routers.workout_types.router)
@@ -41,14 +48,16 @@ app.include_router(routers.exercises.router)
app.include_router(routers.metrics.router)
app.include_router(routers.sync.router)
@app.get("/")
def root():
return {
"message": "Gym Bro API",
"docs": "/docs",
"version": "1.0.0"
"version": "1.2.0",
}
@app.get("/health")
def health_check():
return {"status": "ok"}