[build-system]
requires = ["setuptools>=68.0", "wheel"]
build-backend = "setuptools.build_meta"

[project]
name = "redsentinel"
version = "0.1.0"
description = "RedSentinel – AI-Assisted Security Assessment Tool"
readme = "README.md"
license = { text = "MIT" }

authors = [
    { name = "Hackura" }
]

requires-python = ">=3.10"

dependencies = [
    "requests>=2.31.0",
    "jinja2>=3.1.2",
    "python-dotenv>=1.0.0",
    "rich>=13.7.0"
]

classifiers = [
    "Development Status :: 3 - Alpha",
    "Intended Audience :: Information Technology",
    "Topic :: Security",
    "License :: OSI Approved :: MIT License",
    "Programming Language :: Python :: 3",
    "Operating System :: POSIX"
]

[project.optional-dependencies]
visuals = [
    "matplotlib>=3.8.0",
    "numpy>=1.26.0"
]

reports = [
    "weasyprint>=60.0"
]

all = [
    "matplotlib>=3.8.0",
    "numpy>=1.26.0",
    "weasyprint>=60.0"
]

[project.scripts]
redsentinel = "redsentinel.cli:main"

# ---------------- SETUPTOOLS ----------------

[tool.setuptools]
package-dir = { "" = "src" }

[tool.setuptools.packages.find]
where = ["src"]

# ---------------- PACKAGE DATA ----------------

[tool.setuptools.package-data]
redsentinel = [
    "templates/*.html",
    "assets/**/*",
    "reports/*",
    "samples/*"
]

