aboutsummaryrefslogtreecommitdiff
path: root/app/__init__.py
diff options
context:
space:
mode:
authorCara Salter <cara@devcara.com>2022-08-24 13:15:31 -0400
committerCara Salter <cara@devcara.com>2022-08-24 13:15:31 -0400
commit9de84e3fbae0f2893e9c4f1425afa06899959bf7 (patch)
treef96d33d881954edc9b03df0bc821fb35eb59c577 /app/__init__.py
parent4b616447715b8129ae322341959e1c2bfabbd10e (diff)
downloadnccd-9de84e3fbae0f2893e9c4f1425afa06899959bf7.tar.gz
nccd-9de84e3fbae0f2893e9c4f1425afa06899959bf7.zip
flaskify
Diffstat (limited to 'app/__init__.py')
-rw-r--r--app/__init__.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/app/__init__.py b/app/__init__.py
new file mode 100644
index 0000000..e929535
--- /dev/null
+++ b/app/__init__.py
@@ -0,0 +1,41 @@
+
+from flask import Flask
+from flask_security.datastore import SQLAlchemyUserDatastore
+from flask_sqlalchemy import SQLAlchemy
+from flask_migrate import Migrate
+from flask_security.core import Security
+
+from flask_assets import Bundle, Environment
+
+from . import config
+
+db = SQLAlchemy()
+migrate = Migrate()
+security = Security()
+environment = Environment()
+
+
+def create_app():
+ app = Flask(__name__)
+
+ app.config.from_file("/etc/nccd/config.toml", load=config.load_config)
+
+ db.init_app(app)
+ migrate.init_app(app, db)
+ environment.init_app(app)
+
+ # Static file init
+ scss = Bundle('scss/style.scss', filters='scss', output='gen/style.css')
+ environment.register('scss', scss)
+
+ from .database import User, Role
+ from .auth import forms as auth_forms
+ user_datastore = SQLAlchemyUserDatastore(db, User, Role)
+ security.init_app(app, user_datastore, register_form=auth_forms.ExtendedRegister)
+
+ # Blueprints
+ app.register_blueprint(auth.bp)
+
+ print(app.url_map)
+
+ return app