aboutsummaryrefslogtreecommitdiffstats
path: root/pyproject.toml
diff options
context:
space:
mode:
Diffstat (limited to 'pyproject.toml')
-rw-r--r--pyproject.toml81
1 files changed, 81 insertions, 0 deletions
diff --git a/pyproject.toml b/pyproject.toml
new file mode 100644
index 0000000..3a49bba
--- /dev/null
+++ b/pyproject.toml
@@ -0,0 +1,81 @@
+[project]
+name = "nvdb-py"
+version = "0.1.0"
+description = "A comprehensive Python library and CLI for querying the US National Vulnerability Database (NVD) API 2.0"
+readme = "README.md"
+requires-python = ">=3.9"
+license = { text = "MIT" }
+authors = [
+ { name = "NVD API Contributors" }
+]
+keywords = ["nvd", "cve", "cpe", "vulnerability", "security", "nist", "api"]
+classifiers = [
+ "Development Status :: 4 - Beta",
+ "Intended Audience :: Developers",
+ "Intended Audience :: Information Technology",
+ "Intended Audience :: System Administrators",
+ "License :: OSI Approved :: MIT License",
+ "Operating System :: OS Independent",
+ "Programming Language :: Python :: 3",
+ "Programming Language :: Python :: 3.9",
+ "Programming Language :: Python :: 3.10",
+ "Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
+ "Topic :: Security",
+ "Topic :: Software Development :: Libraries :: Python Modules",
+]
+
+dependencies = [
+ "httpx[http2]>=0.27.0",
+ "pydantic>=2.0.0",
+ "typer>=0.12.0",
+ "rich>=13.0.0",
+ "pyyaml>=6.0.0",
+ "python-dateutil>=2.8.0",
+]
+
+[project.optional-dependencies]
+dev = [
+ "pytest>=8.0.0",
+ "pytest-asyncio>=0.23.0",
+ "pytest-cov>=4.1.0",
+ "respx>=0.21.0",
+ "black>=24.0.0",
+ "ruff>=0.3.0",
+ "mypy>=1.9.0",
+]
+
+[project.urls]
+Homepage = "https://github.com/nvdb-py/nvdb-py"
+Documentation = "https://github.com/nvdb-py/nvdb-py#readme"
+Repository = "https://github.com/nvdb-py/nvdb-py"
+"Bug Tracker" = "https://github.com/nvdb-py/nvdb-py/issues"
+
+[project.scripts]
+nvdb = "nvd.cli.main:app"
+
+[build-system]
+requires = ["hatchling"]
+build-backend = "hatchling.build"
+
+[tool.hatch.build.targets.wheel]
+packages = ["src/nvd"]
+
+[tool.pytest.ini_options]
+testpaths = ["tests"]
+asyncio_mode = "auto"
+addopts = "--cov=nvd --cov-report=term-missing"
+
+[tool.black]
+line-length = 100
+target-version = ['py39']
+
+[tool.ruff]
+line-length = 100
+target-version = "py39"
+
+[tool.mypy]
+python_version = "3.9"
+warn_return_any = true
+warn_unused_configs = true
+disallow_untyped_defs = true