"""Extension singletons. Initialized in the app factory.""" from flask_sqlalchemy import SQLAlchemy from flask_migrate import Migrate from flask_login import LoginManager from flask_wtf import CSRFProtect from flask_babel import Babel from flask_limiter import Limiter from flask_limiter.util import get_remote_address db = SQLAlchemy() migrate = Migrate() login_manager = LoginManager() csrf = CSRFProtect() babel = Babel() limiter = Limiter(key_func=get_remote_address) login_manager.login_view = "auth.login" login_manager.login_message_category = "warning"