020/Flask-Web-App

/flask_web_app/flask_web_app/main/__init__.py
import logging
import logging.handlers
import os
import sys

import tornado.ioloop
import tornado.web
from tornado.options import define, options, parse_command_line

from flask_web_app.main.web import web_app
from flask_web_app.server import server_app
from flask_web_app.server.db import db_app

def main():
"""Main function for the application.
"""

# setup logging
formatter = logging.Formatter(
"[%(asctime)s] [%(levelname)s] [%(name)s] [%(filename)s:%(lineno)s] %(message)s"
)
handler = logging.handlers.RotatingFileHandler(
"tornado.log", maxBytes=1048576, backupCount=5
)
handler.setLevel(logging.INFO)
handler.setFormatter(formatter)
root_logger = logging.getLogger()
root_logger.addHandler(handler)
root_logger.setLevel(logging.INFO)

# setup tornado options
define("port", default=8888, help="run on the given port", type=int)

# setup tornado application
parse_command_line()
tornado_app = tornado.web.Application(
[
(r"/main", web_app),
(r"/server", server_app),
(r"/db", db_app),
]
)
tornado_app.listen(options.port)
tornado.ioloop.IOLoop.current().start()

if __name__ == "__main__":
main()

/flask_web_app/flask_web_app/main/web.py
from flask import Flask, render_template, request, abort, session, redirect, url_for
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate
from flask_marshmallow import Marshmallow
from flask_login import LoginManager, UserMixin
from flask_socketio import SocketIO, join_room, leave_room, emit
from flask_limiter import Limiter, LimiterExceededError
from flask_limiter.util import get_remote_address
from flask_uploads import UploadSet, configure_uploads, IMAGES, patch_request_class
from flask import send_file, send_from_directory
from flask_bcrypt import Bcrypt
from flask_login import current_user
from flask_oauthlib.client import OAuth
from flask_mail import Mail
from flask_mail import Message
from flask_whooshee import Whooshee
from flask_cors import CORS
from flask_session import Session
from flask_limiter.util import get_remote_address

import os
from app import app
from app.models import User, Post, Comment, Follow, Like
from app.main.web import web_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin_bp
from app.main.admin import admin