from flask import Flask from flask_injector import FlaskInjector from injector import Binder, singleton from domain.TestRepository import TestRepository from infrastructure.TestRepositoryImpl import TestRepositoryImpl from presentation.blueprint import get_blueprint def configure(binder: Binder): _: type[TestRepository] = TestRepositoryImpl binder.bind(interface=TestRepository, to=TestRepositoryImpl, scope=singleton) def create_app(): app = Flask(__name__) bp = get_blueprint() app.register_blueprint(bp) FlaskInjector(app, [configure]) return app app = create_app()