Files
gradio-webrtc/pyproject.toml
Marcus Valtonen Örnhag d42740372c Update old links in pyproject.toml (#270)
* Update old links

* Add email + lint

---------

Co-authored-by: Marcus Valtonen Örnhag <marcus.valtonen.ornhag@ericsson.com>
Co-authored-by: Freddy Boulton <41651716+freddyaboulton@users.noreply.github.com>
2025-04-10 10:12:22 -04:00

127 lines
3.5 KiB
TOML

[build-system]
requires = [
"hatchling",
"hatch-requirements-txt",
"hatch-fancy-pypi-readme>=22.5.0",
]
build-backend = "hatchling.build"
[project]
name = "fastrtc"
version = "0.0.20"
description = "The realtime communication library for Python"
readme = "README.md"
license = "MIT"
license-files = ["LICENSE"]
requires-python = ">=3.10"
authors = [{ name = "Freddy Boulton", email = "arugula.ligand.92@icloud.com" }]
keywords = [
"streaming",
"webrtc",
"realtime",
"machine learning",
"computer vision",
"audio",
"video",
"image",
"audio processing",
"video processing",
"gradio-custom-component",
]
# Add dependencies here
dependencies = [
"gradio>=4.0,<6.0",
"aiortc",
"audioop-lts;python_version>='3.13'",
"librosa",
"numpy>=2.0.2", # because of librosa
"numba>=0.60.0",
"standard-aifc;python_version>='3.13'",
"standard-sunau;python_version>='3.13'",
]
classifiers = [
'Development Status :: 3 - Alpha',
'Operating System :: OS Independent',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3.13',
'Topic :: Internet',
"Topic :: Software Development :: Libraries :: Application Frameworks",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development",
'Topic :: Scientific/Engineering',
'Topic :: Scientific/Engineering :: Artificial Intelligence',
'Topic :: Scientific/Engineering :: Visualization',
]
# The repository and space URLs are optional, but recommended.
# Adding a repository URL will create a badge in the auto-generated README that links to the repository.
# Adding a space URL will create a badge in the auto-generated README that links to the space.
# This will make it easy for people to find your deployed demo or source code when they
# encounter your project in the wild.
[project.urls]
repository = "https://github.com/freddyaboulton/fastrtc"
issues = "https://github.com/freddyaboulton/fastrtc/issues"
Documentation = "https://fastrtc.org/"
[project.optional-dependencies]
dev = ["build", "twine", "httpx", "pytest"]
vad = ["onnxruntime>=1.20.1"]
tts = ["kokoro-onnx"]
stopword = ["fastrtc-moonshine-onnx", "onnxruntime>=1.20.1"]
stt = ["fastrtc-moonshine-onnx", "onnxruntime>=1.20.1"]
[tool.hatch.build]
artifacts = ["/backend/fastrtc/templates", "*.pyi"]
[tool.hatch.build.targets.wheel]
packages = ["/backend/fastrtc"]
[tool.pytest.ini_options]
testpaths = ["test/"]
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "function"
[tool.ruff]
src = ["demo", "backend/fastrtc", "test"]
target-version = "py310"
extend-exclude = ["demo/phonic_chat", "demo/nextjs_voice_chat"]
[tool.ruff.format]
exclude = ["*.pyi"]
quote-style = "double"
indent-style = "space"
skip-magic-trailing-comma = false
line-ending = "auto"
[tool.ruff.lint]
select = ["E", "F", "W", "Q", "I", "UP"]
# These can be turned on when the framework is more mature (Too many errors right now)
exclude = ["D"]
# Avoid enforcing line-length violations (`E501`)
ignore = ["E501"]
[tool.ruff.lint.pydocstyle]
convention = "google"
[tool.ruff.lint.per-file-ignores]
"__init__.py" = ["E402"]
"demo/talk_to_smolagents/app.py" = ["W291"]
[tool.pyright]
include = ["backend/fastrtc"]
exclude = ["**/__pycache__", "**/*.pyi"]
reportMissingImports = false
reportMissingTypeStubs = false
pythonVersion = "3.10"
pythonPlatform = "Linux"