forked from talkpython/web-applications-with-fastapi-course
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
38 lines (26 loc) · 821 Bytes
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import fastapi
import fastapi_chameleon
import uvicorn
from starlette.staticfiles import StaticFiles
from views import account
from views import home
from views import packages
app = fastapi.FastAPI()
def main():
configure(dev_mode=True)
# noinspection PyTypeChecker
uvicorn.run(app, host='127.0.0.1', port=8000)
def configure(dev_mode: bool):
configure_templates(dev_mode)
configure_routes()
def configure_templates(dev_mode: bool):
fastapi_chameleon.global_init('templates', auto_reload=dev_mode)
def configure_routes():
app.mount('/static', StaticFiles(directory='static'), name='static')
app.include_router(home.router)
app.include_router(account.router)
app.include_router(packages.router)
if __name__ == '__main__':
main()
else:
configure(dev_mode=False)