This commit is contained in:
ryan
2026-03-03 08:22:19 -05:00
parent 0e3684031b
commit 86cc269b3a
24 changed files with 1899 additions and 238 deletions

23
app.py
View File

@@ -1,20 +1,25 @@
import logging
import os
from dotenv import load_dotenv
from quart import Quart, jsonify, render_template, request, send_from_directory
from quart_jwt_extended import JWTManager, get_jwt_identity, jwt_refresh_token_required
from tortoise.contrib.quart import register_tortoise
from tortoise import Tortoise
import blueprints.conversation
import blueprints.conversation.logic
import blueprints.rag
import blueprints.users
import blueprints.whatsapp
import blueprints.users.models
from main import consult_simba_oracle
# Load environment variables
load_dotenv()
# Configure logging
logging.basicConfig(level=logging.INFO)
app = Quart(
__name__,
static_folder="raggr-frontend/dist/static",
@@ -28,6 +33,7 @@ jwt = JWTManager(app)
app.register_blueprint(blueprints.users.user_blueprint)
app.register_blueprint(blueprints.conversation.conversation_blueprint)
app.register_blueprint(blueprints.rag.rag_blueprint)
app.register_blueprint(blueprints.whatsapp.whatsapp_blueprint)
# Database configuration with environment variable support
@@ -48,12 +54,15 @@ TORTOISE_CONFIG = {
},
}
# Initialize Tortoise ORM
register_tortoise(
app,
config=TORTOISE_CONFIG,
generate_schemas=False, # Disabled - using Aerich for migrations
)
# Initialize Tortoise ORM with lifecycle hooks
@app.while_serving
async def lifespan():
logging.info("Initializing Tortoise ORM...")
await Tortoise.init(config=TORTOISE_CONFIG)
logging.info("Tortoise ORM initialized successfully")
yield
logging.info("Closing Tortoise ORM connections...")
await Tortoise.close_connections()
# Serve React static files