forked from 3wordchant/capsul-flask
41 lines
1.2 KiB
Python
41 lines
1.2 KiB
Python
|
|
from flask import Flask
|
|
from flask_mail import Mail
|
|
from flask import render_template
|
|
import os
|
|
|
|
def create_app():
|
|
app = Flask(__name__)
|
|
app.config.from_mapping(
|
|
BASE_URL=os.environ.get("BASE_URL", default="http://localhost:5000"),
|
|
SECRET_KEY=os.environ.get("SECRET_KEY", default="dev"),
|
|
DATABASE_URL=os.environ.get("DATABASE_URL", default="sql://postgres:dev@localhost:5432/postgres"),
|
|
DATABASE_SCHEMA=os.environ.get("DATABASE_SCHEMA", default="public"),
|
|
|
|
MAIL_SERVER=os.environ.get("MAIL_SERVER", default="m1.nullhex.com"),
|
|
MAIL_PORT=os.environ.get("MAIL_PORT", default="587"),
|
|
MAIL_USE_TLS=os.environ.get("MAIL_USE_TLS", default="True").lower() in ['true', '1', 't', 'y', 'yes'],
|
|
MAIL_USERNAME=os.environ.get("MAIL_USERNAME", default="forest@nullhex.com"),
|
|
MAIL_PASSWORD=os.environ.get("MAIL_PASSWORD", default=""),
|
|
MAIL_DEFAULT_SENDER=os.environ.get("MAIL_DEFAULT_SENDER", default="forest@nullhex.com"),
|
|
)
|
|
|
|
app.config['FLASK_MAIL_INSTANCE'] = Mail(app)
|
|
|
|
from capsulflask import db
|
|
|
|
db.init_app(app)
|
|
|
|
@app.route("/")
|
|
def index():
|
|
return render_template("index.html")
|
|
|
|
from capsulflask import auth
|
|
|
|
app.register_blueprint(auth.bp)
|
|
|
|
app.add_url_rule("/", endpoint="index")
|
|
|
|
return app
|
|
|