CausalBox / main.py
Arya Patil
Initial deployment of CausalBox app
85fd14e
raw
history blame
1.36 kB
# main.py
from flask import Flask, jsonify, request
from flask_cors import CORS
import os
import sys
# Add the 'routers' and 'utils' directories to the Python path
# This allows direct imports like 'from routers.preprocess_routes import preprocess_bp'
script_dir = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(script_dir, 'routers'))
sys.path.insert(0, os.path.join(script_dir, 'utils'))
# Import Blueprints
from routers.preprocess_routes import preprocess_bp
from routers.discover_routes import discover_bp
from routers.intervene_routes import intervene_bp
from routers.treatment_routes import treatment_bp
from routers.visualize_routes import visualize_bp
app = Flask(__name__)
CORS(app) # Enable CORS for frontend interaction
# Register Blueprints
app.register_blueprint(preprocess_bp, url_prefix='/preprocess')
app.register_blueprint(discover_bp, url_prefix='/discover')
app.register_blueprint(intervene_bp, url_prefix='/intervene')
app.register_blueprint(treatment_bp, url_prefix='/treatment')
app.register_blueprint(visualize_bp, url_prefix='/visualize')
@app.route('/')
def home():
return "Welcome to CausalBox Backend API!"
if __name__ == '__main__':
# Ensure the 'data' directory exists for storing datasets
os.makedirs('data', exist_ok=True)
# Run the Flask app
app.run(debug=True, host='0.0.0.0', port=5000)