25 lines
572 B
Python
25 lines
572 B
Python
from flask import Flask
|
|
from flask_cors import CORS
|
|
from app.config import Config
|
|
from app.routes import api
|
|
from app.errors import method_not_allowed, unsupported_media_type
|
|
|
|
def create_app():
|
|
""" Factory function to create a Flask app instance """
|
|
app = Flask(__name__)
|
|
|
|
# Load configuration
|
|
app.config.from_object(Config)
|
|
|
|
|
|
CORS(app)
|
|
|
|
# Register blueprints
|
|
app.register_blueprint(api)
|
|
|
|
# Error Handlers
|
|
app.register_error_handler(405, method_not_allowed)
|
|
app.register_error_handler(415, unsupported_media_type)
|
|
|
|
return app
|