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

[project]
name = "TCT"
version = "0.1.4"
description = "Translator Component Toolkit"
readme = "README.md"
license = {text = "MIT"}
authors = [
    {name = "Guangrong Qin, Yue Zhang, Sierra Moxon", email = "guangrong.qin@isbscience.org"}
]
classifiers = [
    "Development Status :: 4 - Beta",
    "Intended Audience :: Developers",
    "License :: OSI Approved :: MIT License",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
]
requires-python = ">=3.10"
dependencies = [
    "requests",
    "jsons",
    "pandas",
    "seaborn",
    "matplotlib",
    "ipycytoscape",
    "networkx",
    "numpy",
    "openai",
    "ipykernel",
    "fastmcp>=2.12.2",
    "click>=8.2.1",
]

[project.scripts]
tct-server = "main:main"

[project.urls]
Homepage = "https://github.com/NCATSTranslator/Translator_component_toolkit"
Documentation = "https://ncatstranslator.github.io/Translator_component_toolkit/"
Repository = "https://github.com/NCATSTranslator/Translator_component_toolkit"

[tool.uv]
dev-dependencies = [
    "pytest>=7.0.0",
    "pytest-cov>=4.0.0",
    "ruff>=0.1.0",
    "codespell>=2.2.0",
    "mypy>=1.14.1",
]

[tool.uv.sources]

[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py", "*_test.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
addopts = [
    "--cov=TCT",
    "--cov-report=term-missing",
    "--cov-report=html",
    "--cov-report=xml",
    "--cov-fail-under=0",
    "--tb=short",
    "-v"
]

[tool.ruff]
exclude = ["notebooks/"]

[tool.hatch.build.targets.wheel]
packages = ["TCT"]
