[build-system] requires = ["setuptools>=68", "wheel"] build-backend = "setuptools.build_meta" [project] name = "ccdp" version = "0.1.0" description = "Car Crash Damage Predictor — damage identification + repair cost estimation" readme = "README.md" requires-python = ">=3.10" authors = [{ name = "Abhishek Roy" }] dependencies = [ "pyyaml>=6.0", "requests>=2.31", "typer>=0.12", "rich>=13.7", "pydantic>=2.6", ] [project.optional-dependencies] ml = [ "torch>=2.2", "torchvision>=0.17", "ultralytics>=8.1", "xgboost>=2.0", "scikit-learn>=1.4", "pandas>=2.2", "numpy>=1.26", "pillow>=10.2", "opencv-python-headless>=4.9", "easyocr>=1.7", ] serve = [ "fastapi>=0.110", "uvicorn>=0.27", "gradio>=4.20", "python-multipart>=0.0.9", ] dev = [ "pytest>=8.0", "pytest-cov>=4.1", "ruff>=0.3", "ipykernel>=6.29", "jupyterlab>=4.1", ] [project.scripts] ccdp = "ccdp.cli:app" [tool.setuptools.packages.find] where = ["src"] [tool.setuptools.package-data] # Ship the bundled Stanford Cars class-name map so the ML identifier can map # class indices → make/model on deployments that never downloaded the dataset. "ccdp.identification" = ["data/*.json"] [tool.ruff] line-length = 100 target-version = "py310"