playwright>=1.40.0
pydantic>=2.0.0
pydantic-settings>=2.0.0
numpy>=1.24.0
scipy>=1.10.0
requests>=2.25.0
httpx>=0.25.0
aiofiles>=23.0.0
tenacity>=8.2.0

[all]
chameleon-engine[full]

[core]
playwright>=1.40.0
pydantic>=2.0.0
numpy>=1.24.0
scipy>=1.10.0
requests>=2.25.0
httpx>=0.25.0
aiofiles>=23.0.0

[database]
chameleon-engine[core]
psycopg2-binary>=2.9.0
sqlalchemy>=2.0.0
alembic>=1.12.0

[dev]
chameleon-engine[core]
pytest>=7.4.0
pytest-asyncio>=0.21.0
pytest-cov>=4.1.0
pytest-json-report>=1.5.0
pytest-mock>=3.11.0
pytest-xdist>=3.3.0
pytest-benchmark>=4.0.0
black>=23.7.0
ruff>=0.0.280
mypy>=1.5.0
pre-commit>=3.3.0
python-lsp-server>=1.7.0
tenacity>=8.2.0
psutil>=5.9.0
asyncio-throttle>=1.0.0
pillow>=10.0.0

[fingerprint]
chameleon-engine[core]
fastapi>=0.104.0
uvicorn>=0.24.0
sqlalchemy>=2.0.0
alembic>=1.12.0

[full]
chameleon-engine[core,database,fingerprint,scraping,services,stealth]

[scraping]
chameleon-engine[core]
beautifulsoup4>=4.12.0
scrapy>=2.11.0

[services]
chameleon-engine[core,database,fingerprint,scraping]

[stealth]
chameleon-engine[core]
patchright>=1.40.0
