[project] name = "ten31portal" version = "0.1.0" description = "Internal system of record for Ten31 entities, holdings, and valuations." requires-python = ">=3.11" dependencies = [ "fastapi==0.115.12", "uvicorn[standard]==0.34.3", "sqlmodel==0.0.24", "alembic==1.15.2", "argon2-cffi==23.1.0", "python-multipart==0.0.20", "itsdangerous==2.2.0", "aiosqlite==0.21.0", "starlette-session==0.4.3", "openpyxl==3.1.5", "msoffcrypto-tool==6.0.0", "pyotp==2.9.0", "qrcode==8.2", ] [project.optional-dependencies] dev = [ "pytest==8.3.4", "httpx==0.28.1", # required by starlette's TestClient ] [project.scripts] ten31portal = "ten31portal.main:cli" ten31portal-cli = "ten31portal.cli:main" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.pytest.ini_options] testpaths = ["tests"]