from flask import Flask from flask_login import LoginManager from . import db def create_app(): app = Flask(__name__) app.config['SECRET_KEY'] = 'secret-key-goes-here' # authorization-related routes from .auth import auth as auth_blueprint # main routes from .main import main as main_blueprint app.register_blueprint(main_blueprint) app.register_blueprint(auth_blueprint) login_manager = LoginManager() login_manager.login_view = 'auth.login' login_manager.init_app(app) @login_manager.user_loader def load_user(user_id): # must return None in case no such user exists return db.get_user(user_id) db.startup() return app