Metadata-Version: 2.4
Name: ctfy
Version: 0.6.5
Requires-Python: >=3.11
Requires-Dist: alembic>=1.18
Requires-Dist: argon2-cffi>=25.1
Requires-Dist: docker>=7.1
Requires-Dist: email-validator>=2.3
Requires-Dist: fastapi-pagination>=0.15
Requires-Dist: fastapi>=0.136
Requires-Dist: fastmcp>=3.3
Requires-Dist: httpx>=0.28.1
Requires-Dist: jinja2>=3.1
Requires-Dist: portpicker>=1.6.0
Requires-Dist: psutil>=7.2
Requires-Dist: pydantic>=2.13
Requires-Dist: python-dotenv>=1.2
Requires-Dist: pyyaml>=6.0
Requires-Dist: requests>=2.34
Requires-Dist: rich>=15.0
Requires-Dist: slowapi>=0.1.9
Requires-Dist: sqlalchemy>=2.0
Requires-Dist: structlog>=25.5
Requires-Dist: typer>=0.25
Requires-Dist: uvicorn[standard]>=0.47
Requires-Dist: websockets>=12.0
Provides-Extra: author
Requires-Dist: pydantic>=2.13; extra == 'author'
Requires-Dist: pyyaml>=6.0; extra == 'author'
Requires-Dist: requests>=2.34; extra == 'author'
Requires-Dist: rich>=15.0; extra == 'author'
Requires-Dist: typer>=0.25; extra == 'author'
Provides-Extra: client
Requires-Dist: fastmcp>=3.3; extra == 'client'
Requires-Dist: httpx>=0.28.1; extra == 'client'
Requires-Dist: pydantic>=2.13; extra == 'client'
Requires-Dist: rich>=15.0; extra == 'client'
Requires-Dist: typer>=0.25; extra == 'client'
Provides-Extra: dev
Requires-Dist: httpx>=0.28.1; extra == 'dev'
Requires-Dist: pytest>=9.0.2; extra == 'dev'
Provides-Extra: exploit
Requires-Dist: requests>=2.34; extra == 'exploit'
Provides-Extra: screenshots
Requires-Dist: playwright>=1.60; extra == 'screenshots'
