[project]
name = "cc-liquid"
version = "0.1.6a6"
description = "cc-liquid - open source reference implementation for a simple, metamodel-based Hyperliquid portfolio rebalancer"
readme = "README.md"
authors = [
    { name = "CrowdCent", email = "info@crowdcent.com" }
]
requires-python = ">=3.10"
license = {text = "MIT"}
dependencies = [
    "click>=8.1.8",
    "polars>=1.0.0",
    "python-dotenv>=1.1.0",
    "crowdcent-challenge>=0.1.10",
    "hyperliquid-python-sdk>=0.8.0",
    "requests>=2.32.3",
    "eth-account>=0.13.0",
    "rich>=13.7.1",
    "pyyaml",
    "plotext>=5.3.2",
]

[project.scripts]
cc-liquid = "cc_liquid.cli:cli"

[project.optional-dependencies]
numerai = [
    "numerapi==2.20.7",
]

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.uv]
dev-dependencies = [
    "ruff>=0.11.5",
    "pytest>=8.3.5",
    "pytest-cov>=5.0.0",
    "pytest-asyncio>=0.25.0",
    "mkdocs-material>=9.6.11",
    "mkdocs>=1.6.1",
    "mkdocstrings[python]>=0.29.1",
    "mkdocs-click>=0.9.0",
    "mkdocs-git-revision-date-localized-plugin>=1.4.5",
    "mkdocs-git-authors-plugin>=0.9.4",
    "matplotlib>=3.10.6",
]

[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py"]
asyncio_mode = "auto"
