total 60 drwxr-xr-x 11 root root 4096 Sep 11 01:22 . drwxr-xr-x 10 user user 4096 Sep 11 02:08 .. -rw------- 1 root root 44 Sep 10 22:10 .encryption_key drwxr-xr-x 3 root root 4096 Sep 10 23:50 .pytest_cache drwxr-xr-x 4 root root 4096 Sep 10 22:10 alembic -rw-r--r-- 1 root root 620 Sep 10 22:10 alembic.ini drwxr-xr-x 12 root root 4096 Sep 10 22:15 app drwxr-xr-x 2 root root 4096 Sep 10 22:07 deploy drwxr-xr-x 2 root root 4096 Sep 10 22:07 docs -rw-r--r-- 1 root root 843 Sep 10 23:52 requirements.txt -rw-r--r-- 1 root root 339 Sep 10 22:39 restart_api.sh drwxr-xr-x 2 root root 4096 Sep 10 23:42 scripts drwxr-xr-x 4 root root 4096 Sep 10 23:34 static drwxr-xr-x 3 root root 4096 Sep 11 10:31 tests drwxr-xr-x 5 root root 4096 Sep 10 22:07 uploads --- # Core framework fastapi==0.115.6 uvicorn[standard]==0.34.0 gunicorn==23.0.0 python-multipart==0.0.20 # Database SQLAlchemy==2.0.36 psycopg[binary]==3.2.3 alembic==1.14.0 # Redis / Celery redis==5.2.1 celery==5.4.0 # Security pyjwt==2.10.1 bcrypt==4.0.1 # direct bcrypt usage (passlib 1.7.4 incompatible with bcrypt>=4.1) cryptography==44.0.0 itsdangerous==2.2.0 email-validator==2.2.0 # Google APIs google-auth==2.37.0 google-auth-oauthlib==1.2.1 google-auth-httplib2==0.2.0 google-api-python-client==2.157.0 # PDF generation weasyprint==62.3 pydyf==0.11.0 # weasyprint 62.3 incompatible with pydyf 0.12+ ('transform' removed) # Templates / email jinja2==3.1.5 beautifulsoup4==4.12.3 lxml==5.3.0 bleach==6.2.0 # HTTP / testing httpx==0.28.1 pytest==8.3.4 pytest-asyncio==0.25.0 # Utility python-dateutil==2.9.0.post0 slowapi==0.1.9 ---app structure--- app app/services app/services/__pycache__ app/templates_email app/tasks app/tasks/__pycache__ app/__pycache__ app/worker app/worker/__pycache__ app/db app/db/__pycache__ app/core app/core/__pycache__ app/models app/models/__pycache__ app/api app/api/__pycache__ app/api/routers app/schemas