from flask import Flask from .models import db import os def create_app(): app = Flask(__name__) # Configuration app.config['SECRET_KEY'] = os.environ.get('SECRET_KEY', 'dev-secret-key-change-in-production') app.config['SQLALCHEMY_DATABASE_URI'] = os.environ.get('DATABASE_URL', 'sqlite:///fire_alarm.db') app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False # Initialize extensions db.init_app(app) # Register blueprints from .routes import main_bp, api_bp app.register_blueprint(main_bp) app.register_blueprint(api_bp, url_prefix='/api') # Create tables with app.app_context(): db.create_all() return app