[build-system] requires = ["setuptools>=68", "wheel"] build-backend = "setuptools.build_meta" [project] name = "openapi-first" version = "0.0.1" description = "Strict OpenAPI-first application bootstrap for FastAPI." readme = "README.md" requires-python = ">=3.10" license = { text = "MIT" } authors = [ { name = "Aetos Skia", email = "dev@aetoskia.com" } ] maintainers = [ { name = "Aetos Skia", email = "dev@aetoskia.com" } ] keywords = [ "fastapi", "openapi", "openapi-first", "contract-first", "api", "asgi", "microservices", ] classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Framework :: FastAPI", "Topic :: Software Development :: Libraries", "Topic :: Internet :: WWW/HTTP :: HTTP Servers", ] dependencies = [ # Core framework "fastapi>=0.110.0", # OpenAPI validation "openapi-spec-validator>=0.7.1", # YAML support (optional but recommended) "pyyaml>=6.0.1", ] [project.optional-dependencies] dev = [ "pytest>=8.0.0", "pytest-cov>=4.1.0", "ruff>=0.3.0", "mypy>=1.8.0", ] docs = [ "mkdocs>=1.5.0", "mkdocs-material>=9.5.0", "mkdocstrings[python]>=0.24.0", ] [project.urls] Homepage = "https://git.aetoskia.com/aetos/openapi-first" Documentation = "https://git.aetoskia.com/aetos/openapi-first#readme" Repository = "https://git.aetoskia.com/aetos/openapi-first.git" Issues = "https://git.aetoskia.com/aetos/openapi-first/issues" Versions = "https://git.aetoskia.com/aetos/openapi-first/tags" [tool.setuptools] packages = { find = { include = ["openapi_first*"] } } [tool.ruff] line-length = 100 target-version = "py310" [tool.mypy] python_version = "3.10" strict = true ignore_missing_imports = true