Initial App Commit with Login and Auth

This commit is contained in:
2025-02-11 02:16:46 +01:00
parent 8d88d265a8
commit 348f95d4f5
17 changed files with 927 additions and 3 deletions

41
app/__init__.py Normal file
View File

@ -0,0 +1,41 @@
from flask import Flask
from dotenv import load_dotenv
import os
import urllib.parse
from app.controllers.auth_controller import auth
from app.models import db
from flask_login import LoginManager
from app.models.users import User
from app.routes import main as main_blueprint
load_dotenv()
def create_app():
app = Flask(__name__, template_folder='views')
app.config['SECRET_KEY'] = os.getenv('SECRET_KEY')
db_username = os.getenv('DB_USERNAME')
db_password = urllib.parse.quote_plus(os.getenv('DB_PASSWORD'))
db_host = os.getenv('DB_HOST')
db_port = os.getenv('DB_PORT')
db_name = os.getenv('DB_NAME')
db_url = f"mysql://{db_username}:{db_password}@{db_host}:{db_port}/{db_name}"
app.config['SQLALCHEMY_DATABASE_URI'] = db_url
db.init_app(app)
login_manager = LoginManager()
login_manager.init_app(app)
@login_manager.user_loader
def load_user(id):
return User.query.get(int(id))
app.register_blueprint(auth)
app.register_blueprint(main_blueprint)
return app