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

[project]
name = "zshell"
requires-python = ">=3.13"
version = "0.1.0"
dependencies = [
	"typer",
	"pillow",
	"jinja2",
	"materialyoucolor",
	"solaar",
	"pytest"
]

[project.scripts]
zshell-cli = "zshell:main"

[tool.hatch.version]
source = "vcs"

[tool.hatch.build]
include = [
	"cli/src/zshell/assets/**",
]

[tool.hatch.build.targets.wheel]
packages = ["cli/src/zshell"]

[tool.hatch.build.targets.sdist]
only-include = [
	"cli/src",
]

[tool.ruff]
line-length = 80

[tool.ruff.format]
quote-style = "double"
indent-style = "tab"
line-ending = "lf"
docstring-code-format = true
docstring-code-line-length = "dynamic"

[tool.ruff.lint]
ignore = ["E501", "B008"]
select = [
	"E",
	"F",
	"I",
	"UP",
	"B",
	"SIM",
	"RUF",
]

[tool.basedpyright]
typeCheckingMode = "basic"
include = ["cli/src"]

[tool.pytest.ini_options]
testpaths = ["cli/tests"]
pythonpath = ["cli/src"]
