I have started to learn back - end development on Python, specifically in Flask. But always meet new problems Project Structure | | -- blog | -- templates | | | -- *html files* | -- __init__.py | -- DataBase.py | -- routes.py | -- users.db | -- user.sql | -- run.py Inside run.py: from blog import app if __name__ == '__main__': app.run(debug=True) *Inside __*init __.py : from flask import Flask from blog import routes app = Flask(__name__) Inside DataBase.py : import sqlite3 class DataBase: def __init__(self, db, schema): self.db = db self.schema = schema # Connect def get_connection(self): conn = sqlite3.connect(self.db) conn.row_factory = sqlite3.Row return conn # Initialize def init_db(self): conn = sqlite3.connect(self.db) with open(self.schema, 'r') as s: conn.executescript(s.read()) conn.commit() conn.close() # Get All Data from database def getAllData(self): conn = self.get_connection() users = conn.execute("""SELECT * FROM users""").fetchall() conn.close() return users Inside routes.py : from blog import app from DataBase import DataBase from flask import render_template data = DataBase('users.db', 'user.sql') @app.route('/', methods=["GET"]) @app.route('/home', methods=["GET"]) def about(): users = data.getAllData() return render_template('home.html', users=users) @app.route('/team/<int:user_id>', methods=["GET"]) def members(user_id): if user_id == 1: return render_template('mirshod.html') elif user_id == 2: return "Hello World" @app.route('/team', methods=["GET", "POST"]) def team(): users = data.getAllData() return render_template('home.html', users=users) Before re - structuring my project everything was well, but after re - structuring I am getting error when try to run my project Try 'python -m flask run --help' for help. Error: While importing 'run', an ImportError was raised: Traceback (most recent call last): File "D:\\flaskMarket\\lib\\site-packages\\flask\\cli.py", line 218, in locate_app __import__(module_name) File "D:\\fastApiProject\\flaskProject\\run.py", line 1, in \<module\> from blog import app File "D:\\fastApiProject\\flaskProject\\blog\__init_\_.py", line 2, in \<module\> from blog import routes File "D:\\fastApiProject\\flaskProject\\blog\\routes.py", line 1, in \<module\> from blog import app ImportError: cannot import name 'app' from partially initialized module 'blog' (most likely due to a circular import) (D:\\fastApiProject\\flaskProject\\blog\__init_\_.py) Process finished with exit code 2 Continue reading...