neuropose/pyproject.toml

84 lines
2.3 KiB
TOML

[build-system]
requires = ["hatchling>=1.25"]
build-backend = "hatchling.build"
[project]
name = "neuropose"
version = "0.1.0.dev0"
description = "3D human pose estimation pipeline for clinical movement research, built on MeTRAbs."
readme = "README.md"
license = { file = "LICENSE" }
requires-python = ">=3.11,<3.12"
authors = [
{ name = "Liqi Shu", email = "liqi_shu@brown.edu" },
{ name = "Levi Neuwirth", email = "ln@levineuwirth.org" },
{ name = "David Man", email = "david_man@brown.edu" },
{ name = "Praneeth Tummala", email = "praneeth_tummala@brown.edu" },
]
maintainers = [
{ name = "Levi Neuwirth", email = "ln@levineuwirth.org" },
]
keywords = [
"pose-estimation",
"biomechanics",
"motion-capture",
"clinical-research",
"metrabs",
]
classifiers = [
"Development Status :: 2 - Pre-Alpha",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: MIT License",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Topic :: Scientific/Engineering :: Image Recognition",
"Topic :: Scientific/Engineering :: Medical Science Apps.",
"Typing :: Typed",
]
# Runtime dependencies. Versions intentionally unpinned at this stage: the
# TensorFlow / MeTRAbs stack is pending a sanity check against the updated
# upstream MeTRAbs release. Tightened pins will land alongside the MeTRAbs
# model loader and smoke test.
dependencies = [
"typer>=0.12",
"pydantic>=2.6",
"pydantic-settings>=2.2",
"pyyaml>=6.0",
"numpy>=1.26",
"opencv-python-headless>=4.9",
"matplotlib>=3.8",
"tensorflow>=2.15,<3.0",
"tensorflow-hub>=0.16",
]
[project.optional-dependencies]
analysis = [
"fastdtw>=0.3.4",
"scipy>=1.12",
"scikit-learn>=1.4",
"sktime>=0.28",
]
[project.urls]
Homepage = "https://git.levineuwirth.org/neuwirth/neuropose"
Repository = "https://git.levineuwirth.org/neuwirth/neuropose"
Issues = "https://git.levineuwirth.org/neuwirth/neuropose/issues"
# CLI entry point will be wired up in commit 7 once src/neuropose/cli.py lands.
# [project.scripts]
# neuropose = "neuropose.cli:app"
[tool.hatch.build.targets.wheel]
packages = ["src/neuropose"]
[tool.hatch.build.targets.sdist]
include = [
"src/neuropose",
"README.md",
"LICENSE",
"AUTHORS.md",
"CITATION.cff",
]