Files
boker/app.py
T
2026-06-22 18:34:40 -07:00

40 lines
890 B
Python

#!/usr/bin/env python3
from __future__ import annotations
from flask import Flask
from auth import is_admin
from config import Config
from routes.admin import admin_bp
from routes.public import public_bp
from storage import ensure_data_file
from utils import cents_to_dollars, safe_date_label
def create_app() -> Flask:
app = Flask(__name__)
app.config.from_object(Config)
ensure_data_file(app.config["DATA_PATH"])
app.jinja_env.filters["money"] = cents_to_dollars
app.jinja_env.filters["pretty_date"] = safe_date_label
@app.context_processor
def inject_globals() -> dict:
return {
"app_version": app.config["APP_VERSION"],
"is_admin": is_admin(),
}
app.register_blueprint(public_bp)
app.register_blueprint(admin_bp)
return app
app = create_app()
if __name__ == "__main__":
app.run(debug=True)