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

[project]
name = "hv_bie"
version = "0.5.0"
description = "HV Battle Intelligence Extractor: parse HentaiVerse battle HTML into structured Python dataclasses"
readme = { file = "README.md", content-type = "text/markdown" }
requires-python = ">=3.10"
license = "AGPL-3.0-or-later"
license-files = ["LICENSE"]
authors = [{ name = "Kuan-Lun Wang", email = "polyphonicared@gmail.com" }]
dependencies = ["beautifulsoup4>=4.14.3,<5.0.0"]
classifiers = [
    "Programming Language :: Python :: 3.14",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.10",
    "Operating System :: OS Independent",
]

[project.urls]
Homepage = "https://github.com/Kuan-Lun/hv-bie"
Source = "https://github.com/Kuan-Lun/hv-bie"
Tracker = "https://github.com/Kuan-Lun/hv-bie/issues"

[project.optional-dependencies]
dev = [
    "ruff>=0.15.8,<1.0.0",
    "mypy>=1.19.1,<2.0.0",
    "pytest>=8.4.2,<9.0.0",
    "black>=26.3.1",
]

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

[tool.black]
line-length = 88

[tool.ruff]
src = ["hv_bie"]
line-length = 88

[tool.ruff.lint]
extend-select = ["I"]
extend-ignore = ["E501"]

[tool.ruff.lint.isort]
known-first-party = ["hv_bie"]
