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

[project]
name = "aisbf"
version = "0.99.92"
description = "AISBF - AI Service Broker Framework || AI Should Be Free - A modular proxy server for managing multiple AI provider integrations"
readme = "README.md"
license = "GPL-3.0-or-later"
requires-python = ">=3.8"
authors = [
    {name = "AISBF Contributors"},
]
maintainers = [
    {name = "Stefy Lanza", email = "stefy@nexlab.net"},
]
keywords = [
    "ai",
    "proxy",
    "api",
    "openai",
    "anthropic",
    "google",
    "ollama",
    "llm",
    "chat",
    "broker",
]
classifiers = [
    "Development Status :: 4 - Beta",
    "Intended Audience :: Developers",
    "Topic :: Software Development :: Libraries :: Python Modules",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.8",
    "Programming Language :: Python :: 3.9",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Operating System :: OS Independent",
]
dynamic = ["dependencies", "scripts"]

[project.urls]
Homepage = "https://git.nexlab.net/nexlab/aisbf.git"
Repository = "https://git.nexlab.net/nexlab/aisbf.git"
Documentation = "https://git.nexlab.net/nexlab/aisbf.git"
"Bug Tracker" = "https://git.nexlab.net/nexlab/aisbf.git/issues"

[tool.setuptools]
packages = [
    "aisbf",
    "aisbf.app",
    "aisbf.routes",
    "aisbf.routes.dashboard",
    "aisbf.auth",
    "aisbf.providers",
    "aisbf.providers.kiro",
    "aisbf.payments",
    "aisbf.payments.crypto",
    "aisbf.payments.fiat",
    "aisbf.payments.subscription",
    "aisbf.payments.notifications",
    "aisbf.payments.wallet"
]
# Note: Provider handler modules (base, google, openai, anthropic, claude, kilo, ollama, codex) are in aisbf.providers package
py-modules = ["cli"]
include-package-data = true

[tool.setuptools.package-data]
"*" = ["*.json", "*.md", "*.sh", "*.py", "LICENSE.txt", "requirements.txt", "main.py"]

[tool.setuptools.data-files]
"share/aisbf/static" = ["static/i18n.js"]
"share/aisbf/static/i18n" = ["static/i18n/*.json"]
