From c8ef8843aaaf28bc38b544ae8ac72accf233aead Mon Sep 17 00:00:00 2001 From: Matt Kohls Date: Mon, 4 Sep 2023 15:36:33 -0400 Subject: Revamped project init New repo for larger structural changes from Sensor-Server. Currently doing most all the same stuff but hopefully better. Still have to clean out some of the older templates for the new interface --- snag/__init__.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 snag/__init__.py (limited to 'snag/__init__.py') diff --git a/snag/__init__.py b/snag/__init__.py new file mode 100644 index 0000000..c0b936f --- /dev/null +++ b/snag/__init__.py @@ -0,0 +1,41 @@ +# snag +# Matt Kohls +# (c) 2023 + +import os + +from flask import Flask + +def create_app(test_config=None): + # create and configure the app + app = Flask(__name__, instance_relative_config=True) + app.config.from_mapping( + SECRET_KEY='development_key', + DATABASE=os.path.join(app.instance_path, 'snag.sqlite'), + ) + + # probably not going to mess with test stuff but just in case + if test_config is None: + # load the instance config, if it exists, when not testing + app.config.from_pyfile('config.py', silent=True) + else: + # load the test config if passed in + app.config.from_mapping(test_config) + + # ensure the instance folder exists + try: + os.makedirs(app.instance_path) + except OSError: + pass + + from . import db + db.init_app(app) + + from . import graphs, data, dashboard + app.register_blueprint(graphs.bp) + app.register_blueprint(data.bp) + app.register_blueprint(dashboard.bp) + app.add_url_rule('/', endpoint='dashboard') + + return app + -- cgit v1.2.3